On Fri, Jun 24, 2005 at 03:37:51PM +0200, Alfredo Beaumont Sainz wrote: > Desde luego, en el hardware nuevo tendra mayor rendimiento la compilacion > personalizada, yo no he dicho lo contrario. Repito lo dicho: la ventaja de > rendimiento _se hace mas evidente_ en maquinas menos potentes. Un claro > ejemplo: > > Optimizacion de un 15% en un PII 350 frente a un 25% en un PIV 3500. La > aplicacion tarda en cargar 2 segundos en el PIV y 20 en el PII. Si > optimizamos, en el PIV tendremos un 1.5 de tiempo de carga, frente a 17 en el > PII. En cual se va a hacer mas evidente la mejora de rendimiento?
Bueno ya que nadie mas ataca al clan Beaumont yo voy a seguir con mi particular cruzada. Sin embargo, espero dejar mis ideas bien claras y detalladas de forma que doy por acabado el flame, que me esta llevando mucho tiempo... Se agradecen las muestras de apoyo de otros debianitas de ITSAS PERO MALDITOS PODRIAS HABER AYUDADO UN POKO MAS xDD. = Prologo = Es curioso como en la lista de paquetes binarios de gentoo facilitados por Dewonik aparecen los programas mas pesados. Son precisamente estos programas los que compilados con las opciones especificas de tu maquina pueden ofrecer mayores ventajas de rendimiento. ¿Que pasa con los parametros march, mcpu, O, maling-*, ....? Sinceramente, yo entre FreeBSD y Debian no noto mucha diferencia en el tiempo de respuesta del comando "ls". = Introducción = Se está hablando de la idoniedad de la compilacion de aplicaciones en software viejo frente a un sistema clásico de paquetes precompilados. Centrandonos en la arquitectura Intel 386 tendriamos los siguientes procesadores: i386 -> i486 -> i586 -> i686 -> pentium -> pentium-mmx -> pentium-pro -> pentium2 -> pentium3 -> pentium4 (Donde i586 es equivalente a pentium y i686 es equivalente a pentiumpro). Yo personalmente no compilaria software para maquinas inferiores a i586 considerando que el beneficio obtenido es mucho menor que el trabajo realizado. Sobre todo en maquinas de escritorio, si bien en maquinas servidoras con poco software instalado podria ser una opcion. Por ejemplo debian tiene compilados sus paquetes para i386 pero slackware tiene el apache compilado para i486 y gxine para i686... Ahora bien ya que igual para un pentium en adelante haya grandes ventajas de ejecucion del programa y puesto que dispongo de un pentium II a 350 MHz he hecho unas pruebillas. Las pruebas las he realizado con el mozilla-firefox. = Sistema de paqueteria = # apt-get install mozilla-firefox mozilla-checky Con el sistema de paqueteria me sentia que tiraba la casa por la ventana y me he dicho: ya que estoy pos voy a instalar tambien el comprobador de paginas webs. En total 8,966MB para que mi linea de 56 kbps sufra un poko... Unos 49 minutos a una media de 30kbps. = Sistema de compilacion = Para las pruebas he utilizado el apt-build. Como primer paso me descarge las fuentes de mozilla-firefox. # apt-build source mozilla-firefox ... Need to get 40.4MB of source archives ... ¡¡VAYA PUTADA!! Pos nada a descargar los 40.4MB por el rigor de las pruebas. Como tengo una line de 56 kbps y a veces dos ordenadores simultaneamente conectados, la descarga empezo a las 14:37 del sabado y no acabo hasta las 19:16. ¡¡Dios soy un puto martir!! A continaucion segui con el proceso de la compilacion e instalación. Pero o sorpresa mia me tenia que descargar unas bonitas dependencias de compilacion: ... 0 upgraded, 42 newly installed, 0 to remove and 1 not upgraded. Need to get 15.5MB of archives. ... Pos nada continua la descarga de software... No os preocupeis que esto solo me llevo desde las 19:26 hasta las 21:03. Esto hace una media de 28,7 Kbps no se porque ostias me iria tan lenta la conexion con rediris... Por fin, despues llega el paso magico de la compilacion!! Pos nada a las 21:05 empieza a compilar el mozilla firefox con el apt-build. Voy a cenar, me afeito, ducho, me doy colonia e incluso veo un poco salsa rosa (esto no lo comenteis por ahi...). A las 24.00 a mirar al ordenador y no habia terminado el hijo puta de compilar... Asi que decidi salir de jaia a las fiestas de San Juan del barrio de Larrazabal de Laudio que habia los conciertos de Kauta y Keike junto con unas buenas cantidades de pika. Luego a las 02.00 hubo romeria con Amaiur hasta las 06:00 de la mañana con temas clasicos de Lin Ton Taun, Negu, ... Sobre las 06:30 llegue a casa. Pues bien lo primere que hice fue mirar si habia terminado el pentium II (anteriormente h*** p***) de compilar. ¡¡¡¡Y si!!!! habia terminado de compilar a la 01:00, si me hubiese kedao viendo salsa rosa habria sido participe del gran evento, lastima... = Rendimiento = Lo realmente raro es que despues de tanto jolgorio no he notado diferencias de rendimiento entre la version precompilada y la compilada con apt-build. He utilizado el comando "time mozilla-firefox" (y chapaba el navegador nada mas abrirse) para intentar hacerme una idea del tiempo que tardaba en arrancarse y los tiempos eran casi iguales. No se si apt-build le habra pasado correctamente las opciones de compilacion a gcc (-march=pentium2 -mcpu=pentium2 -O2) ya que este programa ha tenido anteriormete algun tipo de bug similar. O si por el contrario la compilacion de debian utiliza parches que mejoren el rendimiento... Tal vez tenga que realizar unas futuras pruebas adicionales hasta que tenga banda ancha en casa (es decir indefinidamente) y os notificare los resultados de las segundas pruebas. = Conclusiones = Actualmente con el mozilla tarda unos 22 segundos en arracarme la primera vez. El 15% de mejora de rendimiento propuesto por ziberpunk en este caso es de 3,3 segundos, me siento generoso y lo he ampliado a 4 segundos. Si se me redujese en 4 segundos el arranque (que de todas formas no ha pasado en las pruebas, seguramente por algun error de configuracion) pues genial. Pero una vez puestos a esperar, que mas me da esperar 18 segundos de arranque frente a 22, encima si para conseguir esos 4 putos segundos me he tenido que descargar 40 MB en lugar de 8 MB (amen de las descargas de dependencias de compilacion) y ademas 4 horitas de compilacion durante el cual no he tenido disponible el navegador para trabajar (yo no quiero tunear el ordenador quiero que me sirva para trabajar lo mas eficientemente). ¿¿Sabeis la cantidad de veces que deberia arrancar el mozilla-firefox para "amortizar" la descarga de sources y el tiempo de compilacion (esos magicos 4 segundos)?? Si quiero amortizar solo el tiempo de compilacion deberia arrancarlo 3600 veces, suponiendo que arranco el mozilla-firefox 50 veces al dia me daria 72 dias de amortizacion. Es muy probable que no lo arranque tantas veces al dia xDD o que antes de los 72 dias aparezca una nueva version de mozilla, con lo que no amortizaria el trabajo realizado... Ademas hace poco ha aparecido un fallo de seguridad en todos los navegadores salvo Opera y seguro que Mozilla sacara el Firefox 1.05 dentro de poco. Así pues, considero que la compilacion en maquinas antiguas por debajo de pentium no trae ventajas frente a los sistemas de paqueteria y si que conlleva un gasto enorme de recursos en tiempo de compilacion. Ademas, para máquinas desktop me quedo con los sistemas de paqueteria ya que ofrecen una mejor funcionalidad y productividad aunque malgaste ciclos de reloj al ejecutar los programas hasta ziberpunk ha dicho que esa diferencia de optimizacion se nota muy poco en maquinas potentes. Sin embargo, para servidores donde el rendimiento es una opcion clave (lease, no el servidor de ITSAS), ya sea para hardware no muy viejo o nuevo, si que considero una opcion preferente los sistemas de compilacion. Un cordial saludo a todos, en especial a los que habeis aguantado la chapa hasta aki. Saludos, zako
