State of experimental branch

From: Tomaz Solc <>
Date: Sat Sep 04 2004 - 23:26:33 CEST


I would just like to say a few words on the state of the experimental
CVS branch, in case anyone would like to test it.

It currently includes changes that were proposed by John Winters on this
list in July, together with an optimized version of "extend_chromo"
function. I did some extensive testing which showed that this version of
Tablix is about 10% faster than 0.0.8. (on Athlon XP 2500, using
"tablix_benchmark --multiple-gpm" and sample.xml file)

I also experimented with using different memcpy functions in
"mate_chromo" functions. I tested with MMX optimized
"SDL_memcpyMMX8" from libSDL and MMX and SSE optimized
"fast_memcpy" from mplayer. Unfortunately, the use of these functions
made Tablix a few percent slower instead of faster.

I also talked about MMX optimized memcpy routines with Andraz Tori,
Cinelerra developer, and he had similar experiences. It seems that this
kind of MMX optimization is a dead end.

The code that is related to MMX optimizations is currently commented out
in "main.c", but it should be trivial to uncomment it in case anyone
would like to experiment on his own.

I believe modifications didn't introduce new bugs into the code, so it
should be as stable as release 0.0.8, but I haven't done much testing in
this way.

These changes will most likely go into the 0.1.0 version of Tablix.
Unfortunately, this also means that all modules will have to be changed,
because the new data structures are no longer compatible. Good news is
that I have a sed script that automaticaly fixes most incompatibilites.
It will be included in the release.

You can get the experimental branch with the following commands:

$ cvs -d checkout -r
EXPERIMENTAL_0_1_0 tablix

Best regards
Tomaz Solc

Received on Sat Sep 04 23:49:53 2004

This archive was generated by hypermail 2.1.8 : Tue Aug 16 2005 - 20:42:21 CEST