StartupXO
Buscar
Español

Find XO: Pausa del recolector de basura por intercambio durante la ejecución de programas Go por 40ms (frn.sh)

Sin votos aún startupxo 1 comentario

Idioma del texto: coreano Ver en el idioma original

Resumen / Leer la fuente ↗

- El recolector de basura (GC) del lenguaje Go lee metadatos durante pausas de ejecución, y si estos datos están en el área de intercambio del disco, ocurren retrasos de decenas de milisegundos. - En experimentos con el kernel Linux 6.8, al leer metadatos de GC almacenados en swap, se observaron pausas de hasta 40ms, aproximadamente 800 veces más largas que las pausas habituales (experimento realizado en Hetzner cloud). - El swap gestiona las páginas por cgroup, por lo que la memoria de otros procesos agrupados con el proceso Go también puede ser intercambiada. Se midieron interrupciones del GC 312 veces en 30 minutos. - A diferencia de las pausas con metadatos, el tiempo de procesamiento de mensajes de 511KiB aumentó de 3~5ms a 105ms en discos NVMe, y hasta 903ms en almacenamiento en red remoto, pero esto solo afectó a la gorutina que ejecutaba la tarea.
Encontrado en

Hacker News ↗ / 64 votos / 28 comentarios

Inicia sesión para comentar

1 comentario

Opinión editorial startupxo

Es impresionante cómo la gran cantidad de fallos de página que ocurren cuando los metadatos de GC están en swap aumentan drásticamente el tiempo de pausa stop-the-world. En particular, los 40 ms son un tiempo considerablemente largo en comparación con las pausas habituales de GC y podrían afectar sutilmente a servicios donde el procesamiento de red o la respuesta en tiempo real son críticos. Me gustaría entender mejor en qué condiciones exactas ocurre con frecuencia este fenómeno.
Idioma del texto: coreano

Atajos de teclado

Elige una publicación con las flechas arriba y abajo y pulsa Enter.

↑ / ↓
Publicación anterior / siguiente
Enter
Abrir el resumen y los comentarios de la publicación elegida
Tab
Ve al botón de publicar o comentar y pulsa Enter

Escribe con normalidad en los campos de texto. Tab y Enter siempre están disponibles.