X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=docs%2Fcell.html;h=30626b60b42be283e4985537eadfa9de484aa5a1;hb=ab56e3be9aae54602372427755305c354821e105;hp=34d9a92723154d0346430725928814839dca1fd7;hpb=89ab66448e1bcd78caab6678261c2885dcff741c;p=mesa.git diff --git a/docs/cell.html b/docs/cell.html index 34d9a927231..30626b60b42 100644 --- a/docs/cell.html +++ b/docs/cell.html @@ -12,31 +12,18 @@ The Mesa Cell driver is part of the -Gallium3D +Gallium3D architecture. -
- --Tungsten Graphics -is leading the project. -Two phases are planned. -First, to implement the framework for parallel rasterization using the Cell -SPEs, including texture mapping. -Second, to implement a full-featured OpenGL driver with support for GLSL, etc. -The second phase is now underway. +Tungsten Graphics did the original implementation of the Cell driver.
-The latest Cell driver source code is on the gallium-0.2
branch
-of the Mesa git repository.
-After you've cloned the repository, check out the branch with:
+The latest Cell driver source code is on the master branch of the Mesa
+git repository.
- git-checkout -b gallium-0.2 origin/gallium-0.2 -
To build the driver you'll need the IBM Cell SDK (version 2.1 or 3.0). To use the driver you'll need a Cell system, such as a PS3 running Linux, @@ -50,19 +37,21 @@ special changes.
To compile the code, run make linux-cell
.
-To build in debug mode, run make linux-cell-debug
.
+Or to build in debug mode, run make linux-cell-debug
.
-To use the library, make sure LD_LIBRARY_PATH
points the Mesa/lib/
-directory that contains libGL.so
.
-
LD_LIBRARY_PATH
like this:
++ export LD_LIBRARY_PATH=$PWD/lib/gallium:$PWD/lib/ +
-Verify that the Cell driver is being used by running glxinfo
-and looking for:
+Verify that the Cell driver is being used by running
+progs/xdemos/glxinfo
and looking for:
- OpenGL renderer string: Gallium 0.2, Cell on Xlib + OpenGL renderer string: Gallium 0.3, Cell on Xlib@@ -83,23 +72,23 @@ Similarly, textures are tiled and brought into local store as needed.
-As of September 2008, the driver supports smooth/flat shaded triangle rendering -with Z testing and simple texture mapping. -Simple demos like gears run successfully. -To test texture mapping, try progs/demos/texcyl (press right mouse button for -rendering options). +As of October 2008, the driver runs quite a few OpenGL demos. +Features that work include:
+-Runtime/dynamic code generation is being done for per-fragment -operations (Z test, blend, etc) and for fragment programs (though only a -few opcodes are implemented now). +Performance has recently improved with the addition of PPC code generation +for vertex shaders, but the code quality isn't too great yet.
-In general, however, the driver is rather slow because all vertex -transformation is being done by an interpreter running on the PPU. -Programs with many vertices or complex vertex shaders will run especially -slow. -This will be addressed in the future. +Another bottleneck is SwapBuffers. It may be the limiting factor for +many simple GL tests.
@@ -114,8 +103,20 @@ more of the following debug options:+Note that some of these options may only work for linux-cell-debug builds. +
++If the GALLIUM_NOPPC env var is set, PPC code generation will not be used +and vertex shaders will be run with the TGSI interpreter. +
If the GALLIUM_NOCELL env var is set, the softpipe driver will be used intead of the Cell driver.