Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

122
Visualizações
¿Los procesos se vuelven más lentos a medida que disminuye la cantidad de memoria libre?

Siempre he tenido la impresión de que mientras tenga memoria libre, ya sea al 100% o al 10%, la velocidad de sus procesos no debería verse afectada.

Sin embargo, recientemente me encontré con una situación en la que parece que mis procesos se vuelven mucho más lentos cuando consume un mayor porcentaje de la memoria disponible.

Podría ser un problema con el código en sí, pero espero obtener una verificación rápida de que no he estado viviendo una mentira antes de profundizar en el código en sí.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Realmente todo depende de cómo esté codificada la aplicación y de lo que esté haciendo. Para algunas aplicaciones, no hará ninguna diferencia si la memoria libre es del 10 % o del 100 %, siempre que haya suficiente para que haga su trabajo.

Para otras aplicaciones, pueden encontrar fragmentación de la memoria, pueden provocar el intercambio de disco, incluso pueden ajustar su propio comportamiento debido a la menor cantidad de memoria disponible (utilizando búferes más pequeños, forzando datos en el disco, etc.). En un sistema de recolección de basura (como nodejs), una condición de memoria más baja también puede causar una recolección de basura más frecuente.

El mayor impacto individual en el rendimiento por ejecutarse con menos memoria será si la aplicación hace que el sistema operativo pagine la memoria en el disco. Aquí es donde la memoria virtual que se usa excede la memoria física real y el sistema operativo tiene que sustituir algo de espacio en disco por la memoria asignada. El sistema operativo intenta cambiar la memoria a un disco al que no se ha accedido recientemente con la esperanza de que no se vuelva a necesitar pronto, pero a veces eso simplemente no funciona de manera muy eficiente y el disco duro se ve afectado constantemente, leyendo constantemente. /escribir memoria a/desde disco. Dado que los discos son miles de veces más lentos que la memoria física, esto puede ralentizar enormemente las cosas.

También hay casos de diseño de aplicaciones en los que algunas operaciones en una aplicación como Photoshop simplemente se ejecutarán más rápido con más memoria disponible para usar porque los algoritmos se adaptarán para usar la mayor cantidad de memoria para que la operación se ejecute más rápido cuando se trabaja en objetos grandes. Una aplicación o biblioteca de nodejs podría estar haciendo lo mismo. Por ejemplo, se puede diseñar un algoritmo de procesamiento de imágenes para trabajar en imágenes más grandes de las que caben en la memoria, por lo que debe decidir cuánta memoria es "segura" para asignar y luego trabajar en la imagen en fragmentos. Con una menor cantidad de memoria disponible, el trabajo se realiza de manera menos eficiente en fragmentos más pequeños.

Una razón más común por la que las cosas se vuelven más lentas con el tiempo es debido a algún tipo de fragmentación interna o fugas que hacen que las tareas domésticas regulares (como la asignación de memoria) sean menos eficientes. Esto puede ocurrir en el nivel del montón o en el nivel de la aplicación. Esta es la razón por la que algunos administradores programan procesos de ejecución prolongada (como servidores) para que se reinicien automáticamente de vez en cuando, para eliminar esta fragmentación o pequeñas fugas y comenzar de nuevo regularmente.

Si es un problema importante, una depuración exhaustiva puede explicar de dónde provienen los impactos importantes, pero esta no es una depuración trivial, ya que implica muchas mediciones, recopilación de datos, ajuste de lo que está viendo en función de lo que encuentra, etc... todo mientras trata de no influir en lo que está tratando de encontrar/medir.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda