Buenasssss... 2010/10/21 andres <[email protected]>: > Que hacés Valloud, sabía que ibas a responder :).
Pero como se te ocurre semejante cosa!??!?!... jajajaja!!! > No se si cambió algo en 7.7.1 (estoy con 7.6 por ahora), Y, mas o menos... basicamente reimplemente MemoryPolicy. Fijate en el doc de 7.7.1 porque ese archivo tambien esta re-escrito... > Ahora, desde el punto de vista teórico, que debería suceder? Si los objetos esos se quedan en large space, entonces el compacting GC (o el data compactor) no los tiene que andar moviendo de aca para alla. > Digo, así uno > aprende un poco mas sobre el GC. Recuerdo en algunas cosas que implementé > que VW andaba como piña en eso de reusar objetos "muertos" del mismo tamaño > (lease, dejar de referenciar un array de 10 slots y crear uno nuevo de ese > tamaño era mas barato que cachearlo a mano, cosa que me sorpendió bastante). Puede ser, pero si eso sucede demasiado frecuentemente entonces hay que contabilizar el costo del scavenge y del IGC para boletear el objeto viejo. > La pregunta es, eso funca igual en large space? En las pasadas de scavenge > del GC hasta debería ser mas rápido un array solo (ya que sólo queda el > header en eden/survivor) lo que me da un poco de miedo es que se termine > llamando al compacting gc muchas veces por la creación de muchas matrices. Pero eso va a suceder solo si empezas a usar mucho old space, con lo que si large space es suficientemente grande, listo. Dicho sea de paso, la configuracion por defecto de 7.7.1 es muchisimo mejor que todo lo anterior por dos razones. Primero, no hay mas colgazos de la VM porque MemoryPolicy no cumple sus responsabilidades (principalmente: asegurarse de que el scavenge siempre es posible), tampoco hay memory emergencies que no son tales, y si el IGC aborta entonces el IGC ahora puede recuperarse (fijate referencias a los simbolos #aborted y #aborting). Segundo, tu amigo tocayo se gasto escribiendo tests y otras yerbas, con los cuales el susodicho optimizo la configuracion por defecto en terminos de velocidad. Por ejemplo, antes de todo este trabajo los stress tests terminaban en ~2.25 horas (si terminaban, claro). Ahora terminan en ~20 minutos... En fin. De esto y otras cosas trata mi propuesta de charla para Smalltalks 2010. Vamos a ver si me meto en el schedule, las charlas que hay son grosas. Ya sabes como es esto, no hay hijo del vecino que valga... Andres. -- To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] http://www.clubSmalltalk.org
