I don't have much experience with GPUs so please forgive my ignorance. Nowadays, GPUs are being used as GPGPUs for general purpose programming. But I was wondering if GPUs have memory protection and virtualization mechanism. I mean, for example, you are running two kernels on a GPU, one could easily write to another's address if you don't have vritualization and memory protection. How is this problem solved? Has there been any work done on increasing reliability of code running on GPUs? Can two kernels be run at the same time through some sandboxing mechanism?

Edit
Report