DirectFB - Home of the pragmatist Roadmap

[directfb-cvs] DirectFB
Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[directfb-cvs] DirectFB

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 
	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 with 
"unsubscribe directfb-cvs" as subject.

Home | Main Index | Thread Index / Development / Old Archives