It is the reason why GPULightmass is CUDA currently =)
Edit: Regarding caching I have something to say. I believe the reason why caching is easier for GPULightmass is, doing lightmap baking requires nearly all objects in the scene to have valid surface parameterization, which is very useful for cached lighting representation - if the parameterization causes problems for cached lighting, it will have definitely caused other bigger problems for lightmaps already. A problem is caching resolution, which I believe can be solved when I implement vray style retrace into GPULightmass.