On Sat, 2002-10-12 at 20:25, Joerg Schilling wrote: > >From: Joerg Schilling <[EMAIL PROTECTED]> > >>From: Markus Plail <[EMAIL PROTECTED]> > > >>I have about 18% load at 16x with the new version. It says libedc is > >>able to do 147x speed. The closed source version does 422x and a36 was > >>about 125x IIRC. I am using a Athlon XP1800+ with CL2 DDRAM. > > >Please run another test. Use 1.11a36 and replace sector.c by the sector.c > >version that comes with 1.11a37. > > >Doe to the content dependance of the encoding speed, it may be that 1.11a36 > >will then only report ~ 100x. > > Here are my tests in case somebody is interested: > > > Pentium-233 (Notebook): > > Implementation Speed > ===================================== > Old Heiko libedc 1025 sectors/s, 14x > Old libedc with my speedup 1511 sectors/s, 21x > New Heilo lib (closed source) 1182 sectors/s, 16x > Cdrdao led.cc 1092 sectors/s, 15x > > > Transmeta Crusoe Processor TM5600 600 Mhz (Notebook): > > Implementation Speed > ===================================== > Old Heiko libedc 2723 sectors/s, 37x > Old libedc with my speedup 4302 sectors/s, 58x > New Heilo lib (closed source) 10496 sectors/s, 140x > Cdrdao led.cc 3634 sectors/s, 49x > > > Athlon-1000: > > Implementation Speed > ===================================== > Old Heiko libedc 5209 sectors/s, 70x > Old libedc with my speedup 7042 sectors/s, 94x > New Heilo lib (closed source) 20875 sectors/s, 279x > Cdrdao led.cc 6158 sectors/s, 83x
I also improved the performance of my implementation. When building the scalar product between the P/Q coefficients and the data vectors it is possible to compute the individual products in advance and then just look them up in a table (maybe that's what Heiko is also doing in his closed source). This improves the encoding speed by up to a factor 2. Here are some results for different CPU (time measured by encoding 100000 sectors with non zero data including scrambling): 440 MHz SUNW,UltraSPARC-IIi old lec.cc 3200 sectors/s, 42x new lec.cc 6024 sectors/s, 80x 900 MHz SUNW,UltraSPARC-III+ old lec.cc 6583 sectors/s, 87x new lec.cc 14285 sectors/s, 190x 1200 MHz AMD Athlon(tm) old lec.cc 6720 sectors/s, 89x new lec.cc 14184 sectors/s, 189x 1733 MHz AMD Athlon(tm) (multi CPU system) old lec.cc 13586 sectors/s, 181x new lec.cc 21598 sectors/s, 287x 600 MHz VIA Samuel old lec.cc 2249 sectors/s, 29x new lec.cc 2809 sectors/s, 37x I used SUNWspro-5.0 to compile lec.cc under Solaris with '-xO5 -native' for optimization. Looks like the performance of the table lookup really depends on the hardware. The Via Samuel based system shows a poor improvement. The other systems show a speedup of factor ~2. An exception is the 1733 MHz AMD based system. Here the other CPUs were loaded with other jobs which might also have had an impact on the table lookup performance. I'll put the new lec.cc sources to the patches section of SF. Andreas -- Andreas Mueller Tel: +49 89 67808848 Ramsmeierstr. 1 Email: [EMAIL PROTECTED] 85579 Neubiberg, Germany -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

