View previous topic :: View next topic |
Author |
Message |
Palmax Maverick Guru
Joined: 14 Oct 2004 Posts: 339
|
Posted: Wed May 18, 2005 11:12 pm Post subject: [Compilación] CGLAGS! ¿-O2? ¿-Os problematico? (abierto) |
|
|
Tras muchos mitos acerca de que un mejor código nativo implica grandes ventajas, hay que recordar que el trasiego de memoria es muy lento, mucho más lento que las instrucciones de un micro.
Viendo bechmarks, normalmente lo mejor es tener "-march=pentium4 -Os -pipe" (que para eso tengo pentium4 ejejejej).
Pero dicen que puede dar problemas el -Os, es verdad?
Gracias |
|
Back to top |
|
|
Franco Gotusso Guru
Joined: 15 Apr 2004 Posts: 313 Location: Benidorm, Alicante, Spain
|
Posted: Thu May 19, 2005 5:58 pm Post subject: |
|
|
¿-Os no es para optimizar los tamaños de los ejecutables? ¿O es que -Os reduce tanto el tamaño del ejecutable que supone una ventaja frente a la mayor optimizacion de -O2 aunque el tamaño sea mas grande? _________________ Los programadores están ocupados intentando mejorar los programas a prueba de idiotas. Mientras tanto el universo intenta mejorar a los idiotas. El universo va ganando. |
|
Back to top |
|
|
gringo Advocate
Joined: 27 Apr 2003 Posts: 3793
|
Posted: Thu May 19, 2005 6:59 pm Post subject: |
|
|
Quote: | ¿-Os no es para optimizar los tamaños de los ejecutables? |
es es la idea que yo tengo -> busca el menor tamaño del ejecutable posible incluso añadiendo optimizaciones que no están en ningún otro -OX.
No creo que implique una mayor velocidad de ejecución o nada por el estilo.
saluetes _________________ Error: Failing not supported by current locale |
|
Back to top |
|
|
LinuxBlues l33t
Joined: 26 Mar 2005 Posts: 892
|
Posted: Sun May 22, 2005 4:30 pm Post subject: |
|
|
gringo wrote: | es la idea que yo tengo -> busca el menor tamaño del ejecutable posible incluso añadiendo optimizaciones que no están en ningún otro -OX.
|
De añadir optimizaciones nada, al contrario, quita muchas de las optimizaciones de cualquier otro -OX con tal de conseguir el menor tamaño del binario posible.
De hecho, sólo es recomendable cuando no se tiene mucho espacio en el disco duro.
-Os sería muy recomendable usarlo con compilaciones monstruosas tipo OpenOffice, pero lamentablemente el ebuild filtra las CFLAGS y usa -O2 irremediablemente. Aunque claro, siempre se puede retocar
Lectura recomendada: GCC Myths and Facts |
|
Back to top |
|
|
wel Apprentice
Joined: 03 Sep 2003 Posts: 207
|
Posted: Sun May 22, 2005 8:34 pm Post subject: |
|
|
LinuxBlues wrote: | De añadir optimizaciones nada, al contrario, quita muchas de las optimizaciones de cualquier otro -OX con tal de conseguir el menor tamaño del binario posible.
De hecho, sólo es recomendable cuando no se tiene mucho espacio en el disco duro. |
Pues he pasado por esa página que enlazas, y resulta que -Os *puede* producir programas más rápidos, debido a que el programa se ajusta mejor a la caché.
Yo utilizo -Os, aunque he hecho bastantes benchmarks y la combinación -O2 -ffast-math es indispensable para obtener un código optimizado al máximo. |
|
Back to top |
|
|
gringo Advocate
Joined: 27 Apr 2003 Posts: 3793
|
Posted: Mon May 23, 2005 7:31 am Post subject: |
|
|
Quote: | De añadir optimizaciones nada, al contrario, quita muchas de las optimizaciones de cualquier otro -OX con tal de conseguir el menor tamaño del binario posible. |
cierto, pero añade optimizaciones que busquen el menor tamaño posible, que era l que yo quería decir en mi primer post.
De cualquier manera -Os debe evitarse, no veo que sentido tiene en máquinas domésticas con ram y cpu de sobra, por escasos que estos sean.
saluetes _________________ Error: Failing not supported by current locale |
|
Back to top |
|
|
LinuxBlues l33t
Joined: 26 Mar 2005 Posts: 892
|
Posted: Mon May 23, 2005 10:38 am Post subject: |
|
|
gringo wrote: | cierto, pero añade optimizaciones que busquen el menor tamaño posible, que era l que yo quería decir en mi primer post. |
Perdón, te entendí mal.
Ciertamente la O es añadir optimizaciones al código, ya sea con una "s" o con cualquier número de 1 a 3.
Disculpas por haber malinterpretado el post, no sé que me llevaría a pensar que al decir que "añadía optimizaciones que no estaban en ningún otro -Ox" de alguna forma incluía a los otros Ox sin ser exclusivo. Es sencillamente una optimización pensada para lograr otro objetivo. |
|
Back to top |
|
|
gringo Advocate
Joined: 27 Apr 2003 Posts: 3793
|
Posted: Mon May 23, 2005 11:00 am Post subject: |
|
|
Quote: | Disculpas por haber malinterpretado el post, no sé que me llevaría a pensar que al decir que "añadía optimizaciones que no estaban en ningún otro -Ox" de alguna forma incluía a los otros Ox sin ser exclusivo. Es sencillamente una optimización pensada para lograr otro objetivo. |
tranqui hombre, tal y como lo había planteao tampoco se entiende mu bien
saluetes _________________ Error: Failing not supported by current locale |
|
Back to top |
|
|
Palmax Maverick Guru
Joined: 14 Oct 2004 Posts: 339
|
Posted: Mon May 23, 2005 2:28 pm Post subject: -Os dicen q construye mal binarios |
|
|
Buenas
No digo que haga binarios mejor o peor optimizados, ni mucho menos. Digo que he oido en #gentoo que hace binarios ¡mal!
Qué lo que tu dices que haga, no es lo que hace.
De todas formas, si funcionara bien, en micros con poca L1/L2 he visto que corren mejor los programas con -Os.
Mi micro tiene 8/512KB de L1/L2 por ejemplo (un pentium4 HT a 3'4GHZ, el último northwood), lo que significaría que lo mejor para él es -Os según los benchmark que he visto. De todas formas esos benchamark son con trozos de código al azar, recuerdo que todo ello es muy dependiente del código!!
Hasta luego
Palmax Maverikc
palmax@gmail.com |
|
Back to top |
|
|
|