On Sat, 2008-01-12 at 18:51 +0100, drago01 wrote: > 2008/1/12 Jakub 'Livio' Rusinek <jakub rusinek gmail com>: > > do we need to support legacy cpu's by i386 compilation? > > i586 would make fedora faster even 3 times. > > difference is noticeable. > > ..... > where are your benchmarks for the "3 times faster" claim? > the i386 packages are already optimized for newer cpus (mtune vs. march) > where it makes sense to have i686 versions there are some (kernel, glibc) Lets get some real numbers in here. For a quick and dirty benchmark I'm using OpenJPEG's MJ2 tools, I encode the speedway example using "frames_to_mj2 -i Speedway.yuv -o Speedway.mj2 -I 1", then decode it. I'm measuring the decode time. Tests were performed on a Mobile Celeron 1.3, which is P3 architecture. Here it is with -march=i386 -mcpu=generic. That is, standard Fedora flags: Total decoding time: 21.14 seconds (9.5 fps) With -march=i586 -mcpu=generic: Total decoding time: 21.26 seconds (9.4 fps) And -march=i686 -mcpu=generic: Total decoding time: 20.45 seconds (9.8 fps) So it is 0.54% *slower* when compiled for i586, which is unexpected and strange, but such is gcc. I wouldn't expect much of a speed difference compiling for i586, there was no major additions to the instruction set, and we're already scheduling for modern processors. Not quite "three times" faster, but 3.26% faster with i686. A major addition to the i686 architecture was cmov, and gcc is actually very aggressive about eliminating branching using cmovs, increasing performance on modern deeply pipelined processors by eliminating pipeline stalls. And yes, cmov is technically optional, earlier VIA C3 processors, still being sold, lack it. Completely dropping support for pre-i686 just isn't an option yet. If Smolt is to be believed, i686 machines are 99.43% (!) of all x86 machines. (Though I don't know if those pesky C3's are being counted as i686 or i586 or what...) I think its safe to say the vast majority of x86 systems out there have cmov, and are suffering with reduced performance in order to cater to a minority of systems. I suggest all key performance critical packages be made available in both i386 and i686 versions. glibc and openssl already do this. Off the top of my head, this would include Mesa, I know for a fact the majority of Second Life runtime is actually consumed by T&L inside Mesa/DRI. From what I understand, even Intel's latest chipsets lack hardware T&L. Makes sense, it helps sell more multi-core Intel processors, and probably helps consolidate power management. Also, all multimedia codecs. Old sub-Ghz machines have a lot of trouble playing the MPEG4 video that is common these days, and MythTV could use all the help it can get. Not that the MPEG4 codecs are in Fedora itself... Not that any of this has anything to do with the "firefox startup is slow" complaint that this thread has devolved into.
Description: This is a digitally signed message part