googlecolab / colabtools

Python libraries for Google Colaboratory
Apache License 2.0
2.17k stars 705 forks source link

Enable CUDA Heterogeneous Memory Management (HMM) on GPU instances #4748

Open gonzalobg opened 1 month ago

gonzalobg commented 1 month ago

Is your feature request related to a problem? Please describe. CUDA Heterogeneous Memory Management (HMM) enables GPU code to access all data allocated by a process. That is, users do no longer have to explicitly allocate memory as GPU-only memory, and copy memory back and forth, to use the GPU.

This makes it much much much easier for programmers to use GPUs because they don't need to learn or know anything about memory management to be able to launch GPU work. It also makes it much much easier to use the GPU with Python because the GPU can directly access Python objects, chase pointers, etc.

To learn more, see, e.g., Simplifying GPU application development with Heterogeneous Memory Management

Describe the solution you'd like I'd like HMM to be enabled for GPU instances.

Describe alternatives you've considered We currently use AWS and Azure to run our notebooks, because those have it enabled, but colab is much easier for beginners to use and access, so I'd like to migrate our GPU teaching content to it, to help as many users as possible learn how to use GPUs.

Additional context

cperry-goog commented 1 month ago

Thanks for the request, this is blocked by an Ubuntu upgrade, but I've filed an internal feature request at b/358375546