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.