Saltar al contenido principal

Mejor almacenamiento en caché del código

· 6 min de lectura
Mythri Alle, Jefa del Almacenamiento en Caché de Código

V8 utiliza almacenamiento en caché de código para guardar el código generado de scripts usados frecuentemente. A partir de Chrome 66, almacenamos más código en caché al generar el caché después de la ejecución a nivel superior. Esto genera una reducción del 20–40% en el tiempo de análisis y compilación durante la carga inicial.

Lanzamiento de V8 versión 6.6

· 8 min de lectura
el equipo de V8

Cada seis semanas, creamos una nueva rama de V8 como parte de nuestro proceso de lanzamiento. Cada versión se divide desde el maestro de Git de V8 inmediatamente antes de un hito de Chrome Beta. Hoy nos complace anunciar nuestra rama más reciente, V8 versión 6.6, que está en beta hasta su lanzamiento en coordinación con Chrome 66 Stable en varias semanas. V8 v6.6 está repleto de muchas novedades para los desarrolladores. Este artículo ofrece una vista previa de algunos de los aspectos destacados en anticipación al lanzamiento.

Compilación en segundo plano

· 6 min de lectura
[Ross McIlroy](https://twitter.com/rossmcilroy), defensor del hilo principal

TL;DR: A partir de Chrome 66, V8 compila el código fuente de JavaScript en un hilo en segundo plano, reduciendo el tiempo dedicado a la compilación en el hilo principal entre un 5% y un 20% en sitios web típicos.

Contexto

Desde la versión 41, Chrome ha admitido la análisis de archivos fuente de JavaScript en un hilo en segundo plano mediante la API StreamedSource de V8. Esto permite que V8 comience a analizar el código fuente de JavaScript tan pronto como Chrome haya descargado el primer fragmento del archivo de la red y continúe analizando en paralelo mientras Chrome transmite el archivo por la red. Esto puede proporcionar mejoras considerables en el tiempo de carga, ya que V8 puede estar casi terminado de analizar el JavaScript para cuando el archivo haya terminado de descargarse.

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.

Deserialización perezosa

· 7 min de lectura
Jakob Gruber ([@schuay](https://twitter.com/schuay))

TL;DR: La deserialización perezosa se habilitó recientemente de manera predeterminada en V8 v6.4, reduciendo el consumo de memoria de V8 en más de 500 KB por pestaña del navegador en promedio. ¡Sigue leyendo para saber más!

Introducción a los snapshots de V8

Pero primero, demos un paso atrás y echemos un vistazo a cómo V8 utiliza snapshots de heap para acelerar la creación de nuevos Isolates (que corresponden aproximadamente a una pestaña de navegador en Chrome). Mi colega Yang Guo dio una buena introducción sobre este tema en su artículo sobre snapshots personalizados de inicio:

Lanzamiento de V8 v6.5

· 5 min de lectura
el equipo de V8

Cada seis semanas creamos una nueva rama de V8 como parte de nuestro proceso de lanzamiento. Cada versión se ramifica desde el maestro de Git de V8 inmediatamente antes de un hito de Chrome Beta. Hoy nos complace anunciar nuestra nueva rama, V8 versión 6.5, que está en beta hasta su lanzamiento en coordinación con Chrome 65 Stable en varias semanas. V8 v6.5 está lleno de todo tipo de beneficios para los desarrolladores. Esta publicación ofrece un avance de algunos de los aspectos destacados en anticipación del lanzamiento.

¡Chrome da la bienvenida a Speedometer 2.0!

· 3 min de lectura
los equipos de Blink y V8

Desde el lanzamiento inicial de Speedometer 1.0 en 2014, los equipos de Blink y V8 han utilizado este benchmark como un proxy para el uso real de frameworks populares de JavaScript y hemos logrado aceleraciones considerablemente en este benchmark. Verificamos de manera independiente que estas mejoras se traducen en beneficios reales para los usuarios al medir contra sitios web reales y observar que las mejoras en los tiempos de carga de páginas de sitios web populares también mejoraron la puntuación de Speedometer.

Lanzamiento de V8 versión v6.4

· 4 min de lectura
el equipo de V8

Cada seis semanas, creamos una nueva rama de V8 como parte de nuestro proceso de lanzamiento. Cada versión se ramifica desde el maestro de Git de V8 inmediatamente antes de un hito Beta de Chrome. Hoy nos complace anunciar nuestra nueva rama, V8 versión 6.4, que está en beta hasta su lanzamiento junto con Chrome 64 Estable en unas semanas. V8 v6.4 está lleno de todo tipo de novedades para los desarrolladores. Este artículo ofrece un adelanto de algunos de los aspectos destacados en anticipación al lanzamiento.

Cobertura de código JavaScript

· 11 min de lectura
Jakob Gruber ([@schuay](https://twitter.com/schuay))

La cobertura de código proporciona información sobre si, y opcionalmente con qué frecuencia, se han ejecutado ciertas partes de una aplicación. Comúnmente se utiliza para determinar qué tan exhaustivamente una suite de pruebas evalúa una base de código en particular.

¿Por qué es útil?

Como desarrollador de JavaScript, puede que frecuentemente te encuentres en una situación en la que la cobertura de código sea útil. Por ejemplo:

  • ¿Interesado en la calidad de tu suite de pruebas? ¿Refactorizando un gran proyecto heredado? La cobertura de código puede mostrarte exactamente qué partes de tu base de código están cubiertas.
  • ¿Quieres saber rápidamente si se alcanza una parte particular de la base de código? En lugar de instrumentar con console.log para la depuración estilo printf o avanzar manualmente paso a paso por el código, la cobertura de código puede mostrar información en vivo sobre qué partes de tus aplicaciones se han ejecutado.
  • ¿O tal vez estás optimizando para velocidad y te gustaría saber en qué áreas enfocarte? Los conteos de ejecución pueden señalar funciones y bucles calientes.