Main Page | Modules | Alphabetical List | Data Structures | File List | Data Fields | Globals | Related Pages

What is renouveau?

0.1

Renouveau is a tool to find out information about the inner workings of NVidia GPUs. It does this by mmap()ing the address space of the Nvidia card into its own address space and monitors the Command FIFOs and registers of the graphic card.

Renouveau is not a replacement for the NVidia proprietary driver. It aims to collect all necessary data in order to build one at a later time. If all goes well, this could be around late summer 2007.

The output of this program can be used to find out which commands the driver sends for a given OpenGL sample.

NVidia GPUs can be grouped into families, a GF 6600 and a GForce 6800 will have different GPUs names (e.g. GF 6600 is a NV 43) but both will be listed as a NV 40. As the feature set of the cards grows from oldest to newest, newer cards will probably use different GPU commands (more efficient, shorter opcodes or using newer technologies like shaders) than older cards. So first thing we'll need to know is which cards use which commands.

I want to help...

If you know your way around C, have some basic OpenGL knowledge and a working Linux system including a NVidia card, you could install SDL, find out to what family your card belongs and finally have a look here to see which commands still needs to be figured out ("YES"). Then write a program or use a test from tests.c which does exactly that and use renouveau.

If you only want to give us your dumps of all dumps and be done with it, then please decomment define OUTPUT_MULTIPLE_FILES (and possibly DONT_DUMP_CHANGED_REGS to keep changed registers from being dumped, which can grow quite large). Compile and run renouveau to get one file for each test. Post these tests results somewhere where we can get them and let us know. You'll find both defines in re.c

Have a look at Using renouveau if you need pointers in what to do exactly.


Generated on Sat Aug 19 20:40:53 2006 for Renouveau by  doxygen 1.4.4