Virtualization for GPU that allows you to run local GPU apps and the code is actually run in the cloud, keeping your data local, without changing your app, at least not much.
Warning
This is still under development. Please do not use it with sensitive data for now, please wait for a
stable release.
It's mostly ideal for experimental and learning projects.
vGPUis avirtualizationlayer for aGPU- your local app "runs" on local
vGPU - local app decrypts the actual local data and sends the (
CUDA) instructions to the remoteGPU-Coordinator GPU-Coordinatordistribute the instructions to multiple realGPUs- then it sends the results back to
vGPUwhich sends them to the local app
Three advantages emerge:
- You can execute
AImodels without having a localGPU - Execute on multiple
GPUs, in the end, for some use cases, it could be faster than running on a localGPU - Execute
MLmodels without storing your data onuntrustedproviders. It will keep some blocks inmemorywhich are needed for executing currentinstructions. But at least they areobfuscatedandprotectedby OS not to be easily copied by otherprocessesfrom memory.Data in transitissecuredbyTLS
- I know it will be slow, but in cases where the data flow is small compared to processing time it could be a reasonable compromise for the security it gives you
- Also because the instructions are distributed to multiple
GPUs, when possible, it could offer a better performance, in some cases, than locally
The main idea is of Andrei Mărcuţ.
