-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Michael Lange wrote: > Am Sonntag, 13. November 2005 07:27 schrieb Damian Mihai Liviu: > >> (...) >> After doing some optimized RPMS for amarok and some kde-* I talk with >> Pascal Bleser about optimization. Here are parts of our conversation log: >> >> ### >> (22:03:58) liviudm: since you definately have much experience than me... >> how much waste of time realy is? >> (22:04:00) Pascal Bleser: not much. it's usually not very productive.. you >> might gain 3% on most apps >> (22:04:20) Pascal Bleser: on very few apps you might gain 10 to 20%, but >> it's the exception, not the rule >> (22:04:32) Pascal Bleser: current gcc optimizations are enough for most >> things [stuff deleted] ... > Hmm, 3% faster ´startup´ "on most apps" - cool ;) why not? > The question is : Are there negative side effects?
Exactly. Why not ? because it's barely noticeable. Because compilation time increases a lot (but that's a minor issue, given you don't make packages ;P), because it may affect the behaviour of the application, because the developers don't test their software with such insane optimizations. And because it's not worth spending hours of building, testing, (proper) benchmarking and investigation on optimization flags when you barely win a few milliseconds on startup, if at all. Let's take amarok as an example. You don't have to be an expert to see that the slowest things it does are: - - communication with the database (sqlite, mysql, postgresql): I/O and networking (or named pipes) - - read mp3 files and stream them into the sound driver: I/O - - converting compressed formats such as mp3 and ogg into wav: CPU Actually, that format converting stuff is not even done by amarok itself, but by mad, libogg, arts, xine, gstreamer. So, applying optimizations to the amarok build only affects the 2 other points. Do you think that other LDFLAGS or CFLAGS will affect I/O or networking ? Not at all, that's done in the kernel. I didn't run benchmarks as, to me, it's a waste of time, but I would already guess that most of the time, amarok is doing I/O waits. You want to spend hours, days of work to optimize maybe... 10% of the application, that doesn't do I/O and I/O waits ? Basically, that's my argumentation when I say it's a waste of time. But hey, that's just my very personal opinion and optimization + benchmarking (at least on that low level) is certainly not my domain of expertise, so I might be wrong here and there. cheers - -- -o) Pascal Bleser http://linux01.gwdg.de/~pbleser/ /\\ <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> _\_v The more things change, the more they stay insane. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.0 (GNU/Linux) iD8DBQFDdzXYr3NMWliFcXcRAm4GAJ48BzalhcgnX4QNPkYs2sJROtcVewCgpdmM cJkOcZQcwL9Eitw4TMWslII= =noUt -----END PGP SIGNATURE----- --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]