Saltar al contenido principal

6 publicaciones etiquetados con "memory"

Ver Todas las Etiquetas

Biblioteca Oilpan

· 7 min de lectura
Anton Bikineev, Omer Katz ([@omerktz](https://twitter.com/omerktz)), y Michael Lippautz ([@mlippautz](https://twitter.com/mlippautz)), movedores de archivos eficientes y efectivos

Aunque el título de esta publicación puede sugerir una inmersión profunda en una colección de libros sobre cárter de aceite – lo cual, considerando las normas de construcción para cárteres, es un tema sorprendentemente literario –, en su lugar vamos a mirar un poco más de cerca a Oilpan, un recolector de basura de C++ que se aloja a través de V8 como biblioteca desde la versión V8 v9.4.

Compresión de punteros en V8

· 24 min de lectura
Igor Sheludko y Santiago Aboy Solanes, *los* compresores de punteros

Hay una batalla constante entre la memoria y el rendimiento. Como usuarios, nos gustaría que las cosas fueran rápidas y que consumieran la menor cantidad de memoria posible. Desafortunadamente, generalmente mejorar el rendimiento tiene un costo en el consumo de memoria (y viceversa).

Marcado concurrente en V8

· 15 min de lectura
Ulan Degenbaev, Michael Lippautz y Hannes Payer — liberadores del hilo principal

Este artículo describe la técnica de recolección de basura llamada marcado concurrente. La optimización permite que una aplicación de JavaScript continúe ejecutándose mientras el recolector de basura escanea el montón para encontrar y marcar objetos vivos. Nuestros benchmarks muestran que el marcado concurrente reduce el tiempo dedicado al marcado en el hilo principal en un 60%–70%. El marcado concurrente es la última pieza del proyecto Orinoco — el proyecto para reemplazar incrementalmente el antiguo recolector de basura con el nuevo recolector de basura mayormente concurrente y paralelo. El marcado concurrente está habilitado por defecto en Chrome 64 y Node.js v10.

Trazando desde JS al DOM y de vuelta

· 6 min de lectura
Ulan Degenbaev, Alexei Filippov, Michael Lippautz y Hannes Payer — la hermandad del DOM

Depurar fugas de memoria en Chrome 66 se ha vuelto mucho más fácil. Las DevTools de Chrome ahora pueden trazar y capturar objetos DOM en C++ y mostrar todos los objetos DOM accesibles desde JavaScript junto con sus referencias. Esta funcionalidad es uno de los beneficios del nuevo mecanismo de trazado en C++ del recolector de basura de V8.

Orinoco: recolección de basura para la generación joven

· 9 min de lectura
Ulan Degenbaev, Michael Lippautz y Hannes Payer, amigos de [TSAN](https://github.com/google/sanitizers/wiki/ThreadSanitizerCppManual)

Los objetos de JavaScript en V8 se asignan en un montón administrado por el recolector de basura de V8. En publicaciones anteriores del blog ya hemos hablado sobre cómo reducimos los tiempos de pausa de la recolección de basura (más de una vez) y el consumo de memoria. En esta publicación del blog presentamos el Scavenger paralelo, una de las características más recientes de Orinoco, el recolector de basura principalmente concurrente y paralelo de V8, y discutimos las decisiones de diseño y enfoques alternativos que implementamos en el camino.

Obteniendo recolección de basura gratis

· 10 min de lectura
Hannes Payer y Ross McIlroy, Recolectores de Basura Inactivos

El rendimiento de JavaScript sigue siendo uno de los aspectos clave de los valores de Chrome, especialmente cuando se trata de ofrecer una experiencia fluida. A partir de Chrome 41, V8 aprovecha una nueva técnica para aumentar la capacidad de respuesta de las aplicaciones web ocultando operaciones costosas de gestión de memoria dentro de pequeños fragmentos de tiempo inactivo y no utilizados. Como resultado, los desarrolladores web deberían esperar un desplazamiento más suave y animaciones fluidas con una reducción significativa de los bloqueos debido a la recolección de basura.