Foro de elhacker.net

Programación => Programación General => Mensaje iniciado por: crazykenny en 22 Octubre 2011, 20:05 pm



Título: Sobre rendimiento de programas
Publicado por: crazykenny en 22 Octubre 2011, 20:05 pm
Hola; el caso es que hoy, probando un programa que hice hace tiempo y que sigo utilizando para guardar datos de cartas de magic, world of warcraft y yugioh con los datos de estas y, que ya esta corregido en los errores que daba (y lo comento porque los que subi a este foro daban ciertos errores que ya estan corregidos), pues me ha dado unos datos algo extraños despues de realizar una busqueda de cartas con un parametros, en el sentido de que, por ejemplo, le digo que busque todas las cartas con un parametro X, y primero me tarda 20 milisegundos, luego 13 con otro parametro parametro, y luego, utilizando el primer parametro, 18; he de mencionar que tanto un parametro como otro carga en memoria la misma cantidad de cartas y la pauta a seguir es la misma para todos los parametros, e incluso, con dicha pauta, se pueden buscar cartas añadiendo todos los parametros de busqueda que hay en la base de datos, y, bueno, basicamente es preguntar porque, con una misma pauta y un mismo parametro y/o con un parametro que da el mismo resultado, tarda mas o menos en realizar la misma tarea.
Tambien he de decir que la base de datos, con toda la informacion de mis 2220 cartas ocupan unos 500 KB aproximadamente, y no acabo de entender porque tarda mas o menos realizando una misma accion, y, pese a que me hago una idea en la cual no influye el codigo del programa, quisiera saber vuestra opinion.
Gracias por vuestra atencion.
Saludos.
---------------------------------------------------------------------------------------------------
Se me olvidaba; he de mencionar que el programa en si ordena aleatoriamente como deben aparecer las cartas, y, bueno, si elige una carta X para la posicion Y y dicha carta ya ha sido seleccionada para una posicion anterior, pues vuelve a elegir otra carta; entonces, ¿creeis que esto puede hacer que el programa vaya mas rapido y/o lento a veces?.
Saludos.


Título: Re: Sobre rendimiento de programas
Publicado por: |Miguel| en 24 Octubre 2011, 16:41 pm
Por lo que sé, en este mundillo a mismas circustancias SIEMPRE se dan los mismos resultados. Si el código siempre es el mismo, los parámetros son los mismos, y la base de datos es la misma, lo único que puede cambiar es el estado de la máquina cuando recibe la orden de buscar.

Es decir, puede ser (y esto es una opinión, puedo estar equivocado) que puede influir la carga de trabajo que tenga el equipo en el momento de ejecutar tu aplicación. A ver que dicen por aquí.

Un saludo.


Título: Re: Sobre rendimiento de programas
Publicado por: pucheto en 24 Octubre 2011, 17:21 pm
Tu programa no se ejecuta solo, mientras se ejecuta hay interrupciones, cambios de contexto con otro proceso, algunas veces tenes muchos hit's en cache y en otra pocos... En general para medir performance se hacen varias mediciones y se agarra caso promedio, peor caso, mediana, etc...