En el U2 de GeneXus X se incluyeron varias mejoras, algunas especificamente orientadas a mejorar la performance del IDE. Entre ellas se cambió el modo en el cual se carga el Winte y los generadores. En lugar de ser cargado cada vez, se deja residente en memoria (un demonio) de modo que la próxima vez que se especifique/genere un objeto o grupo de objetos, dicho proceso sea mucho más rápido.
Para mí es un poco difícil (no imposible) hacer mediciones "científicas" sobre este punto porque no se trata de un build all o rebuild all o tareas de msbuilds que se puedan marcar con "timestamp" fácilmente sino es la propia utilización del IDE y la "sensación" más que una medición exacta.
Mi sensación entonces es que realmente mucho más "ágil" el proceso de edición-especificación-prueba-edición... que en sus versiones anterior. Como dice un amigo: "es mucho más fácil hacer eficiente algo que es eficaz que hacer eficaz algo que es eficiente", en realidad lo dice más "criollo": "es más fácil hacer andar rápido algo que anda bien que hacer andar bien algo que anda rápido"
Obviamente esto de los demonios en memoria consume más de la misma, tampoco tengo mediciones "cientificas" pero aparecen como MSBuilds consumiendo entre 80 y 200 megas de memoria. Como siempre, dependerá de qué máquina tengo, si el SQL Server está local o en un Server, cómo tengo configurado ese SQL Server (memoria limitada o no), etc. Para quienes tengan problemas con la memoria utilizada, pueden volver al esquema anterior (tools/options/build y ahi tienen "close specifier" y "close generator")
Tip
Para finalizar un tip de algo disponible a partir del U2 también, GeneXus se puede ejecutar con la opción "/MeasureCommandTime" es decir algo como:
"c:\GeneXus\genexus.exe" /MeasureCommandTime
si se ejecuta de ese modo, entonces en la ventana de output (general) aparecerán mensajes del estilo:
---> Command: RebuildAll - Elapsed time: 00:00:00.6212445
---> Command: AfterBuildCommandWrapper - Elapsed time: 00:01:54.0176120
Esto en buen romance significa que demoró 1:54 minutos en hacer un rebuild de una KB que tengo (es chiquita, 30 objetos).
Del mismo modo aparecen muchas más operaciones, por ejemplo, al salvar un objeto dice:
---> Command: Save - Elapsed time: 00:00:01.6181117
En fin, no soy un especialista, solo un simple usuario pero capaz el tip le puede servir a alguien en algún escenario.
Para mí es un poco difícil (no imposible) hacer mediciones "científicas" sobre este punto porque no se trata de un build all o rebuild all o tareas de msbuilds que se puedan marcar con "timestamp" fácilmente sino es la propia utilización del IDE y la "sensación" más que una medición exacta.
Mi sensación entonces es que realmente mucho más "ágil" el proceso de edición-especificación-prueba-edición... que en sus versiones anterior. Como dice un amigo: "es mucho más fácil hacer eficiente algo que es eficaz que hacer eficaz algo que es eficiente", en realidad lo dice más "criollo": "es más fácil hacer andar rápido algo que anda bien que hacer andar bien algo que anda rápido"
Obviamente esto de los demonios en memoria consume más de la misma, tampoco tengo mediciones "cientificas" pero aparecen como MSBuilds consumiendo entre 80 y 200 megas de memoria. Como siempre, dependerá de qué máquina tengo, si el SQL Server está local o en un Server, cómo tengo configurado ese SQL Server (memoria limitada o no), etc. Para quienes tengan problemas con la memoria utilizada, pueden volver al esquema anterior (tools/options/build y ahi tienen "close specifier" y "close generator")
Tip
Para finalizar un tip de algo disponible a partir del U2 también, GeneXus se puede ejecutar con la opción "/MeasureCommandTime" es decir algo como:
"c:\GeneXus\genexus.exe" /MeasureCommandTime
si se ejecuta de ese modo, entonces en la ventana de output (general) aparecerán mensajes del estilo:
---> Command: RebuildAll - Elapsed time: 00:00:00.6212445
---> Command: AfterBuildCommandWrapper - Elapsed time: 00:01:54.0176120
Esto en buen romance significa que demoró 1:54 minutos en hacer un rebuild de una KB que tengo (es chiquita, 30 objetos).
Del mismo modo aparecen muchas más operaciones, por ejemplo, al salvar un objeto dice:
---> Command: Save - Elapsed time: 00:00:01.6181117
En fin, no soy un especialista, solo un simple usuario pero capaz el tip le puede servir a alguien en algún escenario.
Comentarios
Publicar un comentario