it still could if it's compatible with the FLAC goals; it's not too late. your table doesn't have the FLAC decoding times to compare against but if you are getting an extra 10% without more decode complexity that is very promising.
Josh
[a href="index.php?act=findpost&pid=378083"][{POST_SNAPBACK}][/a]
Here some more comparison now including Timings for FLAC.
Cause i had to use a stop watch for flac, i only tested the
biggest files to reduce the effect of the measuring equipment
(my thumb isn't too accurate...).
The first two columns now include some variations of the HIGH-Mode
with reduced predictor numbers. They could compress better without
increasing decoding time, if they used the same methods for paramter
calculation as Extra or Insane modes. I just wasn't to lazy.
The bottom rows show the speed, that TAK achieves without the use
of MMX-Instructions or general assembler optimizations. This could be
interesting, if the code would be ported to some platform without such
instructions.
TAK TAK TAK FLAC
Mode: High High High Extra Insane | -8 |
Predictors: 32 64 128 256 384 | |
---------------------------------------------------+---------+
Song_02 48,96 48,69 48.41 47.87 47.73 | 51.03 |
Song_04 34,19 33,84 33.15 32.59 32.56 | 37.27 |
Song_06 34,30 34,04 33.74 33.34 33.20 | 37.04 |
Song_08 45,74 45,31 44.97 44.56 44.45 | 49.74 |
Song_10 56,84 56,71 56.41 56.00 55.94 | 59.10 |
Song_12 54,13 53,93 53.86 53.33 53.27 | 57.62 |
Song_14 49,14 49,07 48.97 48.51 48.44 | 51.87 |
Song_16 74,17 74,16 74.16 73.82 73.79 | 75.95 |
---------------------------------------------------+---------+
Sum: 48,40 48,15 47.86 47.41 47.33 | 51.35 |
---------------------------------------------------+---------+
Times with the use of MMX: | |
EncoTime: 41,59 45,14 53.01 270.94 595.41 | 191.00 |
DecoTime: 11,35 12,24 13.50 14.90 15.19 | 20.00 |
---------------------------------------------------+---------+
Times without the use of MMX: | |
EncoTime: 63,08 73,87 91,65 638,81 1350,89 | ---.-- |
DecoTime: 16,40 19,46 24,77 31,46 33,38 | ---.-- |
---------------------------------------------------+---------+
To be honest, the comparison of the three leftmost columns of TAK with FLAC isn't
quite fair, because TAK actually doesn't measure the time needed for Disk-IO (my
40 GB Disk is quite slow). This shouldn't significantly affect the validity of
the other two modes, were the calculation overhead is much higher.
Possibly interesting to see, that the MMX-Implementation of the Modes with
low predictor order isn't considerably faster than the implementation without.
That's caused by some overhead introduced by the scaling and other preparations
of the data needed for the use of MMX.
Thomas