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

Re: [Public WebGL] ANGLE_instanced_arrays extension proposal

Furthermore: the WebGL spec doesn't guarantee whatsoever that recovering from a lost context is easy or even possible. It just gives events telling content that it should recreate its WebGL state from scratch. Typically that is possible by reloading textures from where they were originally loaded from, but if some script was storing in a WebGL texture some data that isn't found anywhere else (e.g. the result of a GPGPU computation), then it's just lost.
I'm curious, if the context is lost for the GPU for an application. And if that application runs OpenCL, wouldn't it mean that all CL resources are lost too?
Yes, all OpenCL resources would be lost too.
It's obvious that context lost -> "meh tough luck bye" is sort of gonna work for a lot of usecases on WebGL (although not all because it's already possible to do GPGPU stuff with framebuffers). But if you're doing OpenCL, which is entirely and completely about GPGPU, it'd be pretty much disasterous. How's that gonna work?
The only solution is to periodically read back and save (to main memory, or disk storage) the contents of the buffers that you don't want to lose. You'll still lose the last N seconds of computation, but that's better than losing everything.