![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
La unica manera FIABLE es haver profiling i.e. hay que medir el desempeño.
La programacion voodo no es el mejor estilo ![]() Que se mide? 1- Uso de Memoria 2- Lecturas al disco 3- Carga de la BD 4- Uso de recursos graficos 5- Ejecucion bruta de algoritmos etc... Debes determinar cual es la tarea MAS importante que desempeña tu sistema (ej: Leer datos de una bd)... Ten en cuenta que el 80% de los problemas de desempeño esta en el 10-20% del codigo.... Teniendo esto como base: 1- A lo bestia: En maquinas con Win2000+ usa Ctrl+alt+del y mira cuanta memoria esta usando el sistema. Mirar visualmente que programas estan corriendo NOOOOOO sirve. Ese es un aproximado... 2- Usa los performance counters del sistema operativo ( o baja una herramienta de profiling externo como las que hay en http://www.sysinternals.com/) es mas confiable 3- Inserta funciones de logeo en el programa, entre las secciones que probablemente tenga mas peso (MEJOR aun: Usa una herramienta como MemProof (gratis) o AQtime para saber que partes de tu programa REALMENTE estan comiendo tiempo) y lo guardas en un archivo como: Operacion Lugar Fecha IniciarApp Project.dpr 01/01/2005 01:01:01 a.m. CargarForm Main.pas 01/01/2005 01:01:02 a.m. CargarForm Otra.pas 01/01/2005 01:01:03 a.m. etc... 4- Aprende que hace que un SO sea mas o menos lento Por ejemplo http://www.extremetech.com/article2/0,,5155,00.asp Ayer me sente a organizar un portatil de la empresa que tiene solo 256 RAM y recien arranca y sin abrir manualmente nada comia 260 RAM, de los cuales 64 se los como la tarjeta grafica integrada. Optmizando el SO lo baje a 110-120 RAM. Lo de las maquinas son iguales es una utopia. Aun teniendo el mismo hardware+software si lo toco un usuario y/o corre procesos automaticos como el de windows update deja de ser iguales. 5- Llevate el Delphi a la maquina con problemas y depura Las cosas que te digo, como ves, son un monton de cosas apuntando a un monton de lados, asi es esto.... Solo con experiencia se puede deducir con velocidad que puede ser (y otras veces puede demorar 1 semana en encontrar el problema y a veces hasta 1 mese). Asi que si no ves una solucion monta momentaneamente Delphi y a depurar.
__________________
El malabarista. Última edición por mamcx fecha: 08-07-2005 a las 00:18:30. Razón: Se me fue un link errado |
|
#2
|
||||
|
||||
|
A proposito ya que mencionas que es en TU maquina que corre lento, es ya mas obvio... es mas normal que la maquina de desarrollo tenga tropocientas cosas... ademas correr el programa desde el IDE siempre es mas lento..
Por otro lado, si corres desde el .dpr y usas memproof vas a encontrar el problema rapidisimo... lo grave es que ocurra en maquinas de los usuarios, en el equipo de desarrollo es pan comido (agrio, pero comido!)
__________________
El malabarista. |
![]() |
|
|
|