[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Public WebGL] Microsoft Weighs in on WebGL Security Issue
On Thu, Jun 23, 2011 at 4:40 PM, Patrick Baggett <email@example.com>
I can try this but at least through DirectX9, Windows GPU apps always had to deal with lost context. The structure for all sample apps in the SDK made this very clear. Their sample framework provided several callbacks you filled out with your own code 2 of which were releasing your resources when you lose the context and creating your resources then you get it.
That's the thing, the fact that an app has to handle this is kind of silly.
Lost context in directX was not designed for GPU lockup. It was designed for resource sharing. When a game goes fullscreen it gets the entire GPU. All other apps lose their context. At least since Windows 95. In Vista/Win7 it's more virtualized under the hood I guess.
The fact that Windows has code to recover from a GPU lockup (which can cause the entire screen to freeze and go black for a few seconds) is kind of a problem. Until GPU programs have the ability to interrupt their work without losing it, I think this bug can't be marked as "fixed" for anyone/everyone.
I do know that a most of the time, a Win32/D3D9 game I play usually does recover from this (sometimes crashes), but there is also a 5-10 second stall until it does. Additionally, the user experience of everything going black and receiving a scary message about drivers crashing and being restarted probably isn't one that we as an industry should consider as a "acceptable fix" -- or let Microsoft say it is. That it works is good, but the fact that we still need watchdog timers on GPUs and people still have to configure it for long calculations (e.g. GPGPU) or have their work interrupted. That is the reason I don't think it is fair to for Microsoft to conclude WebGL is unsafe -- when clearly it is not limited to WebGL but any program that has access to the GPU (Silverlight, Flash, etc.)