X-Git-Url: https://git.llucax.com/z.facultad/75.00/informe.git/blobdiff_plain/15b868186b7ca1853b52a34ace0865f1cc24c677..447cc68bb907ff0153fcdd794750bd147977412f:/source/conclusion.rst diff --git a/source/conclusion.rst b/source/conclusion.rst index 88b5cd1..7264b44 100644 --- a/source/conclusion.rst +++ b/source/conclusion.rst @@ -13,6 +13,25 @@ Conclusión TODO +Puntos pendientes +---------------------------------------------------------------------------- + +TODO + +* Opciones log_file/verbose +* Lazy sweeping. +* Concurrent sweeping (lanzar fase de sweep en un thread que no pertenezca al + mutator). +* Continuous collection (lanzar un thread que esté haciendo fullcollect() en + un loop). Lo bueno es que el sweep podría correr en ese thread, bajando aún + más el tiempo máximo de pausa (aunque esto se puede hacer más allá de hacer + continuous collection, ver "concurrent sweeping"), lo malo es que tal vez se + estaría recolectando demasiado sin ninguna ganancia substancial. +* Medir mejor cuando lanzar una recolección cuando se usa early collection + (por ejemplo medir la tasa de alocación y el tiempo de recolección y así + hallar el momento ideal para lanzar la recolección). +* Emprolijar todavía más el código (o reescribirlo). + Trabajos relacionados ---------------------------------------------------------------------------- @@ -37,18 +56,6 @@ TODO necesarias para evitar el padding para un tamaño de bloque). Un tipo de dato NO_SCAN no alocaría directamente bits de noscan, mark y scan. Se podría tratar de forma especial a strings. -* Lazy sweeping. -* Concurrent sweeping (lanzar fase de sweep en un thread que no pertenezca al - mutator). -* Continuous collection (lanzar un thread que esté haciendo fullcollect() en - un loop). Lo bueno es que el sweep podría correr en ese thread, bajando aún - más el tiempo máximo de pausa (aunque esto se puede hacer más allá de hacer - continuous collection, ver "concurrent sweeping"), lo malo es que tal vez se - estaría recolectando demasiado sin ninguna ganancia substancial. -* Medir mejor cuando lanzar una recolección cuando se usa early collection - (por ejemplo medir la tasa de alocación y el tiempo de recolección y así - hallar el momento ideal para lanzar la recolección). -* Emprolijar todavía más el código (o reescribirlo). * Hacer preciso el static data por el tema de los TypeInfo's que ocupan mucha memoria que debe ser escaneada.