GLASS perfomance & bug detector

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
12 messages Options
Reply | Threaded
Open this post in threaded view
|

GLASS perfomance & bug detector

Leonardo Andres De Marco
Hola a todos!

estoy laburando en un proyecto que tienen un sistema ya funcionando en producción hecho con GLASS.

Debuging:

Ahora bien, al principio buscar errores que el usuario me reportaba pude salir victorioso gracias a los propios Halos+inspector seaside + Gemtools me las arregle bien  (sin conocer bien el modelo).

Preguntonta: Existe la posibilidad de hacer un snapshot de esa imagen corriendo en gemstone y levantarla en un pharo? si? no? consejos para trabajar con datos Pharo sin gemstone? o volcar parte de la info para trabajar mas comodo?


Performance:

Por otra parte, el sistema estuvo funcionando un tiempo muy bien, a nivel de funcionalidad estan contentos, perooo, estan teniendo problemas de performance sobre todo en la ejecucion de informes (los informes en este sistema generan mucha basura, pero incluso pasando el GC a manopla el sistema presenta lentitud en la ejecucion e esos informes). Estuvimos viendo este post http://gemstonesoup.wordpress.com/2009/02/28/approaching-the-speed-of-light-ssd-drives-for-gemstones/ en donde Hernan inlcuso comenta la mejora con discos SSD por problemas de i/o. Para sacarnos la duda, montamos el sistema en un servidor externo con discos SSD y si bien vimos una mejora de perfomance notable, luego montamos el mismo sistema en discos "comunes" y la mejora seguia, por lo que asumimos que el tema es de hardware... asi y todo, el servidor actual no es tan chiquito (tiene 8 procesadores y 8GB ram) de los cuales, la VM de gemstone usa 4cpu y 6 GB ram (la base de gemstone pesa 14GB pero tiene pocos usuarios concurrentes, unos 10 usuarios.). 

Conclusion: queremos estar seguros que sea solamente un tema de hard o hay algo mejorable en el sistema (seguro q lo hay, pero algo que sea bien notable que este provocando esos cuellos de botella). Finalmente pregunto: existe un profiler o algo similar en gemstone que me permita monitorear eso o que tecnica recomiendan para detectar este tipo de problemas?

gracias,
Leo

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.
Reply | Threaded
Open this post in threaded view
|

Re: GLASS perfomance & bug detector

Carlos E. Ferro-2
Leo, sobre la cuestión de performance en reportes,
hay una cosa muy tonta (que tal vez ya saben, pero no está de más recordarla)
que generalmente a los programadores "comunes" de ST nos cuesta.

Los mensajes de enumeration de Collection (do:, select:, sobre todo cosas como sortBy:) cuando los evalúas en el cliente, se van "trayendo" uno por uno los elementos de la colección para la evaluación, y desproxeándolos. Si era un select: que te dejaba un 10% de la colección en un resultado local, igual te trajiste todos los elementos. y encima, después los tenés que recolectar.

Para evitar eso, hay que dar mensajes que hagan ese procesamiento de colecciones en el servidor y sólo te pasen la colección resultado.
Es decir, que funcione como cliente delgado en ese caso.

Saludos


On 19/09/2013 07:25 p.m., Leonardo Andres De Marco wrote:
Hola a todos!

estoy laburando en un proyecto que tienen un sistema ya funcionando en producción hecho con GLASS.

Debuging:

Ahora bien, al principio buscar errores que el usuario me reportaba pude salir victorioso gracias a los propios Halos+inspector seaside + Gemtools me las arregle bien  (sin conocer bien el modelo).

Preguntonta: Existe la posibilidad de hacer un snapshot de esa imagen corriendo en gemstone y levantarla en un pharo? si? no? consejos para trabajar con datos Pharo sin gemstone? o volcar parte de la info para trabajar mas comodo?


Performance:

Por otra parte, el sistema estuvo funcionando un tiempo muy bien, a nivel de funcionalidad estan contentos, perooo, estan teniendo problemas de performance sobre todo en la ejecucion de informes (los informes en este sistema generan mucha basura, pero incluso pasando el GC a manopla el sistema presenta lentitud en la ejecucion e esos informes). Estuvimos viendo este post http://gemstonesoup.wordpress.com/2009/02/28/approaching-the-speed-of-light-ssd-drives-for-gemstones/ en donde Hernan inlcuso comenta la mejora con discos SSD por problemas de i/o. Para sacarnos la duda, montamos el sistema en un servidor externo con discos SSD y si bien vimos una mejora de perfomance notable, luego montamos el mismo sistema en discos "comunes" y la mejora seguia, por lo que asumimos que el tema es de hardware... asi y todo, el servidor actual no es tan chiquito (tiene 8 procesadores y 8GB ram) de los cuales, la VM de gemstone usa 4cpu y 6 GB ram (la base de gemstone pesa 14GB pero tiene pocos usuarios concurrentes, unos 10 usuarios.). 

Conclusion: queremos estar seguros que sea solamente un tema de hard o hay algo mejorable en el sistema (seguro q lo hay, pero algo que sea bien notable que este provocando esos cuellos de botella). Finalmente pregunto: existe un profiler o algo similar en gemstone que me permita monitorear eso o que tecnica recomiendan para detectar este tipo de problemas?

gracias,
Leo

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.


--
signature

carlos e. ferro | senior developer caesar systems

[hidden email]

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.
Reply | Threaded
Open this post in threaded view
|

Re: GLASS perfomance & bug detector

Sebastian Calvo
In reply to this post by Leonardo Andres De Marco
Leo:

No es que el tema sea de hardware. Eso te sobra.
Lo que seguramente pasa es que seguro que tenes código que para manejar cierta cvantidad de objetos no es optimo.
Claro esta, si le pones un server el doble de rapido solucionas el problema sin arreglar nada.
Si conseguis un profiler podes probar pero nomas que a simple vista y con un debugger vas a poder arreglar muchas cosas.

Saludos


El 19 de septiembre de 2013 19:25, Leonardo Andres De Marco <[hidden email]> escribió:
Hola a todos!

estoy laburando en un proyecto que tienen un sistema ya funcionando en producción hecho con GLASS.

Debuging:

Ahora bien, al principio buscar errores que el usuario me reportaba pude salir victorioso gracias a los propios Halos+inspector seaside + Gemtools me las arregle bien  (sin conocer bien el modelo).

Preguntonta: Existe la posibilidad de hacer un snapshot de esa imagen corriendo en gemstone y levantarla en un pharo? si? no? consejos para trabajar con datos Pharo sin gemstone? o volcar parte de la info para trabajar mas comodo?


Performance:

Por otra parte, el sistema estuvo funcionando un tiempo muy bien, a nivel de funcionalidad estan contentos, perooo, estan teniendo problemas de performance sobre todo en la ejecucion de informes (los informes en este sistema generan mucha basura, pero incluso pasando el GC a manopla el sistema presenta lentitud en la ejecucion e esos informes). Estuvimos viendo este post http://gemstonesoup.wordpress.com/2009/02/28/approaching-the-speed-of-light-ssd-drives-for-gemstones/ en donde Hernan inlcuso comenta la mejora con discos SSD por problemas de i/o. Para sacarnos la duda, montamos el sistema en un servidor externo con discos SSD y si bien vimos una mejora de perfomance notable, luego montamos el mismo sistema en discos "comunes" y la mejora seguia, por lo que asumimos que el tema es de hardware... asi y todo, el servidor actual no es tan chiquito (tiene 8 procesadores y 8GB ram) de los cuales, la VM de gemstone usa 4cpu y 6 GB ram (la base de gemstone pesa 14GB pero tiene pocos usuarios concurrentes, unos 10 usuarios.). 

Conclusion: queremos estar seguros que sea solamente un tema de hard o hay algo mejorable en el sistema (seguro q lo hay, pero algo que sea bien notable que este provocando esos cuellos de botella). Finalmente pregunto: existe un profiler o algo similar en gemstone que me permita monitorear eso o que tecnica recomiendan para detectar este tipo de problemas?

gracias,
Leo

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.
Reply | Threaded
Open this post in threaded view
|

Re: GLASS perfomance & bug detector

Andres Valloud-5
In reply to this post by Leonardo Andres De Marco
Si el problema tiene que ver con I/O, entonces cualquier profiler del server mismo deberia mostrarlo... top en Linux, por ejemplo, suele mostrar cuanto tiempo se va en I/O wait.  Eso no quiere decir que acelerar el I/O vaya a resolver el problema de fondo, ya que un exceso aparente de I/O puede ser consecuencia de por ejemplo lo que dijo Carlos acerca de replicar objetos en vez de forwardear requests.  No me quedo claro si los reportes de ejecutan del lado del cliente o del lado del server.


2013/9/19 Leonardo Andres De Marco <[hidden email]>
Hola a todos!

estoy laburando en un proyecto que tienen un sistema ya funcionando en producción hecho con GLASS.

Debuging:

Ahora bien, al principio buscar errores que el usuario me reportaba pude salir victorioso gracias a los propios Halos+inspector seaside + Gemtools me las arregle bien  (sin conocer bien el modelo).

Preguntonta: Existe la posibilidad de hacer un snapshot de esa imagen corriendo en gemstone y levantarla en un pharo? si? no? consejos para trabajar con datos Pharo sin gemstone? o volcar parte de la info para trabajar mas comodo?


Performance:

Por otra parte, el sistema estuvo funcionando un tiempo muy bien, a nivel de funcionalidad estan contentos, perooo, estan teniendo problemas de performance sobre todo en la ejecucion de informes (los informes en este sistema generan mucha basura, pero incluso pasando el GC a manopla el sistema presenta lentitud en la ejecucion e esos informes). Estuvimos viendo este post http://gemstonesoup.wordpress.com/2009/02/28/approaching-the-speed-of-light-ssd-drives-for-gemstones/ en donde Hernan inlcuso comenta la mejora con discos SSD por problemas de i/o. Para sacarnos la duda, montamos el sistema en un servidor externo con discos SSD y si bien vimos una mejora de perfomance notable, luego montamos el mismo sistema en discos "comunes" y la mejora seguia, por lo que asumimos que el tema es de hardware... asi y todo, el servidor actual no es tan chiquito (tiene 8 procesadores y 8GB ram) de los cuales, la VM de gemstone usa 4cpu y 6 GB ram (la base de gemstone pesa 14GB pero tiene pocos usuarios concurrentes, unos 10 usuarios.). 

Conclusion: queremos estar seguros que sea solamente un tema de hard o hay algo mejorable en el sistema (seguro q lo hay, pero algo que sea bien notable que este provocando esos cuellos de botella). Finalmente pregunto: existe un profiler o algo similar en gemstone que me permita monitorear eso o que tecnica recomiendan para detectar este tipo de problemas?

gracias,
Leo

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.
Reply | Threaded
Open this post in threaded view
|

Re: GLASS perfomance & bug detector

gcotelli
In reply to this post by Leonardo Andres De Marco
Leo,

Gemstone trae un profiler que se llama ProfMonitor. Podes ejecutarlo con:
ProfMonitor monitorBlock: [ ... codigo ... ] 
inspeccionando el resultado o con
ProfMonitor new
   traceObjectCreation: true;
   monitorBlock: [ ... código ... ];
   report
si queres que te de un informe sobre los objetos que se crean durante la corrida (es un poco mas lento este ultimo paso pero muy util).

También tienen una herramientas que se llama stat monitor o algo asi que te permite obtener estadísticas sobre lo que pasa en la base (fijate en los manuales).

Por otro lado para Debuguear es muy útil el Jade que provee Foster (si tenes Windows o Mac). Te lo podes bajar de: http://seaside.gemtalksystems.com/jade/


2013/9/19 Leonardo Andres De Marco <[hidden email]>
Hola a todos!

estoy laburando en un proyecto que tienen un sistema ya funcionando en producción hecho con GLASS.

Debuging:

Ahora bien, al principio buscar errores que el usuario me reportaba pude salir victorioso gracias a los propios Halos+inspector seaside + Gemtools me las arregle bien  (sin conocer bien el modelo).

Preguntonta: Existe la posibilidad de hacer un snapshot de esa imagen corriendo en gemstone y levantarla en un pharo? si? no? consejos para trabajar con datos Pharo sin gemstone? o volcar parte de la info para trabajar mas comodo?


Performance:

Por otra parte, el sistema estuvo funcionando un tiempo muy bien, a nivel de funcionalidad estan contentos, perooo, estan teniendo problemas de performance sobre todo en la ejecucion de informes (los informes en este sistema generan mucha basura, pero incluso pasando el GC a manopla el sistema presenta lentitud en la ejecucion e esos informes). Estuvimos viendo este post http://gemstonesoup.wordpress.com/2009/02/28/approaching-the-speed-of-light-ssd-drives-for-gemstones/ en donde Hernan inlcuso comenta la mejora con discos SSD por problemas de i/o. Para sacarnos la duda, montamos el sistema en un servidor externo con discos SSD y si bien vimos una mejora de perfomance notable, luego montamos el mismo sistema en discos "comunes" y la mejora seguia, por lo que asumimos que el tema es de hardware... asi y todo, el servidor actual no es tan chiquito (tiene 8 procesadores y 8GB ram) de los cuales, la VM de gemstone usa 4cpu y 6 GB ram (la base de gemstone pesa 14GB pero tiene pocos usuarios concurrentes, unos 10 usuarios.). 

Conclusion: queremos estar seguros que sea solamente un tema de hard o hay algo mejorable en el sistema (seguro q lo hay, pero algo que sea bien notable que este provocando esos cuellos de botella). Finalmente pregunto: existe un profiler o algo similar en gemstone que me permita monitorear eso o que tecnica recomiendan para detectar este tipo de problemas?

gracias,
Leo

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.
Reply | Threaded
Open this post in threaded view
|

Re: GLASS perfomance & bug detector

leodm
In reply to this post by Leonardo Andres De Marco

Carlos,

el gallego en privado me estuvo dando un par de consejos en ese sentido, pero mas alla de donde procesa (en este caso es todo en el server) me comento el tema de los select: y los detect: cambiarlos por diccionarios.

llendo a un caso concreto, supongamos que tenemos resuelto esto con un detect:

self personas detect:[: each | each nombre = 'Leo'].

es menos performante que cachear todo en un Diccionario x nombre y que luego hacer:

self personas at: 'Leo'

a nivel de codigo voy a empezar revisando este tipo de cosas...y luego probar.

abz

leo
----- Original Message -----
From: Carlos E. Ferro [mailto:[hidden email]]
To: [hidden email]
Sent: Fri, 20 Sep 2013 09:00:41 -0300
Subject: Re: [clubSmalltalk] GLASS perfomance & bug detector

Leo, sobre la cuestión de performance en reportes,
hay una cosa muy tonta (que tal vez ya saben, pero no está de más recordarla)
que generalmente a los programadores "comunes" de ST nos cuesta.

Los mensajes de enumeration de Collection (do:, select:, sobre todo cosas como sortBy:) cuando los evalúas en el cliente, se van "trayendo" uno por uno los elementos de la colección para la evaluación, y desproxeándolos. Si era un select: que te dejaba un 10% de la colección en un resultado local, igual te trajiste todos los elementos. y encima, después los tenés que recolectar.

Para evitar eso, hay que dar mensajes que hagan ese procesamiento de colecciones en el servidor y sólo te pasen la colección resultado.
Es decir, que funcione como cliente delgado en ese caso.

Saludos


On 19/09/2013 07:25 p.m., Leonardo Andres De Marco wrote:
Hola a todos!

estoy laburando en un proyecto que tienen un sistema ya funcionando en producción hecho con GLASS.

Debuging:

Ahora bien, al principio buscar errores que el usuario me reportaba pude salir victorioso gracias a los propios Halos+inspector seaside + Gemtools me las arregle bien  (sin conocer bien el modelo).

Preguntonta: Existe la posibilidad de hacer un snapshot de esa imagen corriendo en gemstone y levantarla en un pharo? si? no? consejos para trabajar con datos Pharo sin gemstone? o volcar parte de la info para trabajar mas comodo?


Performance:

Por otra parte, el sistema estuvo funcionando un tiempo muy bien, a nivel de funcionalidad estan contentos, perooo, estan teniendo problemas de performance sobre todo en la ejecucion de informes (los informes en este sistema generan mucha basura, pero incluso pasando el GC a manopla el sistema presenta lentitud en la ejecucion e esos informes). Estuvimos viendo este post http://gemstonesoup.wordpress.com/2009/02/28/approaching-the-speed-of-light-ssd-drives-for-gemstones/ en donde Hernan inlcuso comenta la mejora con discos SSD por problemas de i/o. Para sacarnos la duda, montamos el sistema en un servidor externo con discos SSD y si bien vimos una mejora de perfomance notable, luego montamos el mismo sistema en discos "comunes" y la mejora seguia, por lo que asumimos que el tema es de hardware... asi y todo, el servidor actual no es tan chiquito (tiene 8 procesadores y 8GB ram) de los cuales, la VM de gemstone usa 4cpu y 6 GB ram (la base de gemstone pesa 14GB pero tiene pocos usuarios concurrentes, unos 10 usuarios.). 

Conclusion: queremos estar seguros que sea solamente un tema de hard o hay algo mejorable en el sistema (seguro q lo hay, pero algo que sea bien notable que este provocando esos cuellos de botella). Finalmente pregunto: existe un profiler o algo similar en gemstone que me permita monitorear eso o que tecnica recomiendan para detectar este tipo de problemas?

gracias,
Leo

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.


--

carlos e. ferro | senior developer caesar systems

[hidden email]

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.
Reply | Threaded
Open this post in threaded view
|

Re: GLASS perfomance & bug detector

leodm
In reply to this post by Leonardo Andres De Marco

Si galle, ahi el amigo Gabriel me paso una data muy copada al respecto. Gracias x toda la ayuda x linea privada!

abrazo,

Leo

----- Original Message -----
From: GallegO [mailto:[hidden email]]
To: [hidden email]
Sent: Fri, 20 Sep 2013 09:03:11 -0300
Subject: Re: [clubSmalltalk] GLASS perfomance & bug detector

Leo:

No es que el tema sea de hardware. Eso te sobra.
Lo que seguramente pasa es que seguro que tenes código que para manejar cierta cvantidad de objetos no es optimo.
Claro esta, si le pones un server el doble de rapido solucionas el problema sin arreglar nada.
Si conseguis un profiler podes probar pero nomas que a simple vista y con un debugger vas a poder arreglar muchas cosas.

Saludos


El 19 de septiembre de 2013 19:25, Leonardo Andres De Marco <[hidden email]> escribió:
Hola a todos!

estoy laburando en un proyecto que tienen un sistema ya funcionando en producción hecho con GLASS.

Debuging:

Ahora bien, al principio buscar errores que el usuario me reportaba pude salir victorioso gracias a los propios Halos+inspector seaside + Gemtools me las arregle bien  (sin conocer bien el modelo).

Preguntonta: Existe la posibilidad de hacer un snapshot de esa imagen corriendo en gemstone y levantarla en un pharo? si? no? consejos para trabajar con datos Pharo sin gemstone? o volcar parte de la info para trabajar mas comodo?


Performance:

Por otra parte, el sistema estuvo funcionando un tiempo muy bien, a nivel de funcionalidad estan contentos, perooo, estan teniendo problemas de performance sobre todo en la ejecucion de informes (los informes en este sistema generan mucha basura, pero incluso pasando el GC a manopla el sistema presenta lentitud en la ejecucion e esos informes). Estuvimos viendo este post http://gemstonesoup.wordpress.com/2009/02/28/approaching-the-speed-of-light-ssd-drives-for-gemstones/ en donde Hernan inlcuso comenta la mejora con discos SSD por problemas de i/o. Para sacarnos la duda, montamos el sistema en un servidor externo con discos SSD y si bien vimos una mejora de perfomance notable, luego montamos el mismo sistema en discos "comunes" y la mejora seguia, por lo que asumimos que el tema es de hardware... asi y todo, el servidor actual no es tan chiquito (tiene 8 procesadores y 8GB ram) de los cuales, la VM de gemstone usa 4cpu y 6 GB ram (la base de gemstone pesa 14GB pero tiene pocos usuarios concurrentes, unos 10 usuarios.). 

Conclusion: queremos estar seguros que sea solamente un tema de hard o hay algo mejorable en el sistema (seguro q lo hay, pero algo que sea bien notable que este provocando esos cuellos de botella). Finalmente pregunto: existe un profiler o algo similar en gemstone que me permita monitorear eso o que tecnica recomiendan para detectar este tipo de problemas?

gracias,
Leo

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.
Reply | Threaded
Open this post in threaded view
|

Re: GLASS perfomance & bug detector

leodm
In reply to this post by Leonardo Andres De Marco

Andres, justamente eso hicimos, ejecutamos un top en el server y comprobamos que no habia demasiados problemas de I/O, en cambio si al ejecutar un informe el proceso topaz se va al 100% al toque (lo que no puedo distinguir es que procesador se va al 100 o si son los 4, si hubiera alguna forma de ver esto agradeceria el consejo).

Efectivamente el nuevo hard donde hicimos la prueba tiene mejor procesador y seguramente influyo en la mejora que percibimos alli.

saludos!
Leo

----- Original Message -----
From: Andres Valloud [mailto:[hidden email]]
To: [hidden email]
Sent: Fri, 20 Sep 2013 05:14:17 -0700
Subject: Re: [clubSmalltalk] GLASS perfomance & bug detector

Si el problema tiene que ver con I/O, entonces cualquier profiler del server mismo deberia mostrarlo... top en Linux, por ejemplo, suele mostrar cuanto tiempo se va en I/O wait.  Eso no quiere decir que acelerar el I/O vaya a resolver el problema de fondo, ya que un exceso aparente de I/O puede ser consecuencia de por ejemplo lo que dijo Carlos acerca de replicar objetos en vez de forwardear requests.  No me quedo claro si los reportes de ejecutan del lado del cliente o del lado del server.


2013/9/19 Leonardo Andres De Marco <[hidden email]>
Hola a todos!

estoy laburando en un proyecto que tienen un sistema ya funcionando en producción hecho con GLASS.

Debuging:

Ahora bien, al principio buscar errores que el usuario me reportaba pude salir victorioso gracias a los propios Halos+inspector seaside + Gemtools me las arregle bien  (sin conocer bien el modelo).

Preguntonta: Existe la posibilidad de hacer un snapshot de esa imagen corriendo en gemstone y levantarla en un pharo? si? no? consejos para trabajar con datos Pharo sin gemstone? o volcar parte de la info para trabajar mas comodo?


Performance:

Por otra parte, el sistema estuvo funcionando un tiempo muy bien, a nivel de funcionalidad estan contentos, perooo, estan teniendo problemas de performance sobre todo en la ejecucion de informes (los informes en este sistema generan mucha basura, pero incluso pasando el GC a manopla el sistema presenta lentitud en la ejecucion e esos informes). Estuvimos viendo este post http://gemstonesoup.wordpress.com/2009/02/28/approaching-the-speed-of-light-ssd-drives-for-gemstones/ en donde Hernan inlcuso comenta la mejora con discos SSD por problemas de i/o. Para sacarnos la duda, montamos el sistema en un servidor externo con discos SSD y si bien vimos una mejora de perfomance notable, luego montamos el mismo sistema en discos "comunes" y la mejora seguia, por lo que asumimos que el tema es de hardware... asi y todo, el servidor actual no es tan chiquito (tiene 8 procesadores y 8GB ram) de los cuales, la VM de gemstone usa 4cpu y 6 GB ram (la base de gemstone pesa 14GB pero tiene pocos usuarios concurrentes, unos 10 usuarios.). 

Conclusion: queremos estar seguros que sea solamente un tema de hard o hay algo mejorable en el sistema (seguro q lo hay, pero algo que sea bien notable que este provocando esos cuellos de botella). Finalmente pregunto: existe un profiler o algo similar en gemstone que me permita monitorear eso o que tecnica recomiendan para detectar este tipo de problemas?

gracias,
Leo

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.
Reply | Threaded
Open this post in threaded view
|

Re: GLASS perfomance & bug detector

leodm
In reply to this post by Leonardo Andres De Marco

Gabriel,

mil gracias por este dato, algo asi estaba buscando. Gracias a todos x los aportes, voy a seguir una estrategia conjunta entre

1) Mejoramiento de codigo en donde se pueda (sobre todo en el armado de reportes, la utilizacion de colecciones con detect:/select:)
2) Mejora en la configuracion actual del servidor a nivel Linux y a nivel Gemstone
3) Opcionalmente mejoramiento de hard

Gracias y les estoy contando como me fue.

Saludos,
Leo

----- Original Message -----
From: Gabriel Cotelli [mailto:[hidden email]]
To: [hidden email]
Sent: Fri, 20 Sep 2013 09:40:50 -0300
Subject: Re: [clubSmalltalk] GLASS perfomance & bug detector

Leo,

Gemstone trae un profiler que se llama ProfMonitor. Podes ejecutarlo con:
ProfMonitor monitorBlock: [ ... codigo ... ] 
inspeccionando el resultado o con
ProfMonitor new
   traceObjectCreation: true;
   monitorBlock: [ ... código ... ];
   report
si queres que te de un informe sobre los objetos que se crean durante la corrida (es un poco mas lento este ultimo paso pero muy util).

También tienen una herramientas que se llama stat monitor o algo asi que te permite obtener estadísticas sobre lo que pasa en la base (fijate en los manuales).

Por otro lado para Debuguear es muy útil el Jade que provee Foster (si tenes Windows o Mac). Te lo podes bajar de: http://seaside.gemtalksystems.com/jade/


2013/9/19 Leonardo Andres De Marco <[hidden email]>
Hola a todos!

estoy laburando en un proyecto que tienen un sistema ya funcionando en producción hecho con GLASS.

Debuging:

Ahora bien, al principio buscar errores que el usuario me reportaba pude salir victorioso gracias a los propios Halos+inspector seaside + Gemtools me las arregle bien  (sin conocer bien el modelo).

Preguntonta: Existe la posibilidad de hacer un snapshot de esa imagen corriendo en gemstone y levantarla en un pharo? si? no? consejos para trabajar con datos Pharo sin gemstone? o volcar parte de la info para trabajar mas comodo?


Performance:

Por otra parte, el sistema estuvo funcionando un tiempo muy bien, a nivel de funcionalidad estan contentos, perooo, estan teniendo problemas de performance sobre todo en la ejecucion de informes (los informes en este sistema generan mucha basura, pero incluso pasando el GC a manopla el sistema presenta lentitud en la ejecucion e esos informes). Estuvimos viendo este post http://gemstonesoup.wordpress.com/2009/02/28/approaching-the-speed-of-light-ssd-drives-for-gemstones/ en donde Hernan inlcuso comenta la mejora con discos SSD por problemas de i/o. Para sacarnos la duda, montamos el sistema en un servidor externo con discos SSD y si bien vimos una mejora de perfomance notable, luego montamos el mismo sistema en discos "comunes" y la mejora seguia, por lo que asumimos que el tema es de hardware... asi y todo, el servidor actual no es tan chiquito (tiene 8 procesadores y 8GB ram) de los cuales, la VM de gemstone usa 4cpu y 6 GB ram (la base de gemstone pesa 14GB pero tiene pocos usuarios concurrentes, unos 10 usuarios.). 

Conclusion: queremos estar seguros que sea solamente un tema de hard o hay algo mejorable en el sistema (seguro q lo hay, pero algo que sea bien notable que este provocando esos cuellos de botella). Finalmente pregunto: existe un profiler o algo similar en gemstone que me permita monitorear eso o que tecnica recomiendan para detectar este tipo de problemas?

gracias,
Leo

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.
Reply | Threaded
Open this post in threaded view
|

Re: GLASS perfomance & bug detector

Andres Valloud-5
In reply to this post by leodm
Que un server este yendo al 100% de ultima es inevitable.  O sea, nadie se espanta si la maquina de uno, que puede correr N threads, se va al 100% si lo que estas haciendo es compactar video con N threads.  El tema es 100% de que.  Seria un problema mucho mas grande que el CPU se fuera al 100% y que top diga algo como "si, 100% de CPU, de lo cual el 70% es I/O wait".  Si hay 100% de CPU y casi nada de I/O wait, entonces el hardware esta haciendo lo que corresponde.

Ahora bien, si el 100% es por busqueda lineal de 'Leo', entonces hay que cambiar el algoritmo y hacer que ese 100% de CPU sea mas eficiente en terminos de lograr el resultado que uno busca.


2013/9/20 <[hidden email]>

Andres, justamente eso hicimos, ejecutamos un top en el server y comprobamos que no habia demasiados problemas de I/O, en cambio si al ejecutar un informe el proceso topaz se va al 100% al toque (lo que no puedo distinguir es que procesador se va al 100 o si son los 4, si hubiera alguna forma de ver esto agradeceria el consejo).

Efectivamente el nuevo hard donde hicimos la prueba tiene mejor procesador y seguramente influyo en la mejora que percibimos alli.

saludos!


Leo

----- Original Message -----
From: Andres Valloud [mailto:[hidden email]]
To: [hidden email]
Sent: Fri, 20 Sep 2013 05:14:17 -0700
Subject: Re: [clubSmalltalk] GLASS perfomance & bug detector

Si el problema tiene que ver con I/O, entonces cualquier profiler del server mismo deberia mostrarlo... top en Linux, por ejemplo, suele mostrar cuanto tiempo se va en I/O wait.  Eso no quiere decir que acelerar el I/O vaya a resolver el problema de fondo, ya que un exceso aparente de I/O puede ser consecuencia de por ejemplo lo que dijo Carlos acerca de replicar objetos en vez de forwardear requests.  No me quedo claro si los reportes de ejecutan del lado del cliente o del lado del server.


2013/9/19 Leonardo Andres De Marco <[hidden email]>
Hola a todos!

estoy laburando en un proyecto que tienen un sistema ya funcionando en producción hecho con GLASS.

Debuging:

Ahora bien, al principio buscar errores que el usuario me reportaba pude salir victorioso gracias a los propios Halos+inspector seaside + Gemtools me las arregle bien  (sin conocer bien el modelo).

Preguntonta: Existe la posibilidad de hacer un snapshot de esa imagen corriendo en gemstone y levantarla en un pharo? si? no? consejos para trabajar con datos Pharo sin gemstone? o volcar parte de la info para trabajar mas comodo?


Performance:

Por otra parte, el sistema estuvo funcionando un tiempo muy bien, a nivel de funcionalidad estan contentos, perooo, estan teniendo problemas de performance sobre todo en la ejecucion de informes (los informes en este sistema generan mucha basura, pero incluso pasando el GC a manopla el sistema presenta lentitud en la ejecucion e esos informes). Estuvimos viendo este post http://gemstonesoup.wordpress.com/2009/02/28/approaching-the-speed-of-light-ssd-drives-for-gemstones/ en donde Hernan inlcuso comenta la mejora con discos SSD por problemas de i/o. Para sacarnos la duda, montamos el sistema en un servidor externo con discos SSD y si bien vimos una mejora de perfomance notable, luego montamos el mismo sistema en discos "comunes" y la mejora seguia, por lo que asumimos que el tema es de hardware... asi y todo, el servidor actual no es tan chiquito (tiene 8 procesadores y 8GB ram) de los cuales, la VM de gemstone usa 4cpu y 6 GB ram (la base de gemstone pesa 14GB pero tiene pocos usuarios concurrentes, unos 10 usuarios.). 

Conclusion: queremos estar seguros que sea solamente un tema de hard o hay algo mejorable en el sistema (seguro q lo hay, pero algo que sea bien notable que este provocando esos cuellos de botella). Finalmente pregunto: existe un profiler o algo similar en gemstone que me permita monitorear eso o que tecnica recomiendan para detectar este tipo de problemas?

gracias,
Leo

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.
Reply | Threaded
Open this post in threaded view
|

Re: GLASS perfomance & bug detector

hernanmd
In reply to this post by leodm


El 20 de septiembre de 2013 15:18, <[hidden email]> escribió:

Andres, justamente eso hicimos, ejecutamos un top en el server y comprobamos que no habia demasiados problemas de I/O, en cambio si al ejecutar un informe el proceso topaz se va al 100% al toque (lo que no puedo distinguir es que procesador se va al 100 o si son los 4, si hubiera alguna forma de ver esto agradeceria el consejo).


Cuando estés ejecutando el "top" apretá 1

Saludos

Hernán



--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.
Reply | Threaded
Open this post in threaded view
|

Re: GLASS perfomance & bug detector

Gastón Dall' Oglio
Hola.

Podes usar htop en el servidor que es mas amigable que top :)
También hay pila de otros comandos al estilo top (ojo alguno solo los podes correr como root o con sudo), como iotop, nettop, iftop, atop... Consejo, buscate con el administrador de paquetes del linux que uses todos los paquetes que se contengan top.

Saludos!


El 22 de septiembre de 2013 01:04, Hernán Morales Durand <[hidden email]> escribió:


El 20 de septiembre de 2013 15:18, <[hidden email]> escribió:

Andres, justamente eso hicimos, ejecutamos un top en el server y comprobamos que no habia demasiados problemas de I/O, en cambio si al ejecutar un informe el proceso topaz se va al 100% al toque (lo que no puedo distinguir es que procesador se va al 100 o si son los 4, si hubiera alguna forma de ver esto agradeceria el consejo).


Cuando estés ejecutando el "top" apretá 1

Saludos

Hernán



--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.

--
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
---
Has recibido este mensaje porque estás suscrito al grupo "ClubSmalltalk" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a [hidden email].
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.