|Site sponsored by IGEL|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
CVSROOT: /cvs/directfb Module name: DirectFB Changes by: dok 20030701 01:54:22 Modified files: src/core : fonts.c fonts.h gfxcard.c layers.c state.c state.h src/gfx/generic: generic.c generic.h generic_mmx.h Log message: Moved all global variables of the software driver to a new struct called GenefxState. Genefx (pron. 'genie facts') is the new name for the virtual GPU being emulated. For each CardState a GenefxState is allocated the first time the software driver is used with this state. It gets freed when the CardState is destroyed. Removed global software driver mutex, doubles software driver performance when multiple threads are rendering on an SMP machine. The pipeline parts are called GenefxFunc instead GFunc now. These functions get a pointer to a GenefxState now. Nothing else outside is referenced. Surprisingly or not, the software only got faster though much dereferencing of GenefxState pointers is done. I guess removing the mutex and avoiding the global offset table made it faster. FillRectangle(1x1) throughput got increased by ~16% on my P3 800 E. This change was necessary to modularize pixel formats. -- Info: To unsubscribe send a mail to firstname.lastname@example.org with "unsubscribe directfb-cvs" as subject.