I posted this on the horrible 'new' NVIDIA developer forums but I did not get any bites:
CUDA is able to use pinned memory with zero copy as inputs to kernels. This means the GPU kernel reads directly from system RAM.
Is it possible to do this with OpenGL on Fermi? I notice AMD have the equivalent function in there new GL_AMD_pinned_memory extension.