Giter Club home page Giter Club logo

gpu-driver-container's Introduction

GPU Driver Container

build status

The NVIDIA GPU driver container allows the provisioning of the NVIDIA driver through the use of containers.

Documentation

Driver Container documentation

Releases

NVIDIA GPU Driver at NGC

Building from Source

platform=ubuntu22.04 # where ${platform} is one of the supported platforms (e.g. ubuntu22.04)
docker build -t mydriver --build-arg DRIVER_VERSION="510.85.02" --build-arg CUDA_VERSION=11.7.1 --build-arg TARGETARCH=amd64 ${platform}

License

Apache License 2.0 License For Customer Use of NVIDIA Software

gpu-driver-container's People

Contributors

arangogutierrez avatar bordoloih avatar cdesiniotis avatar chrijonesnv avatar danlenar avatar dualvtable avatar empovit avatar fabiendupont avatar fifofonix avatar flx42 avatar guptanswati avatar jjacobelli avatar kpouget avatar kshitizbakshi avatar kshitizbakshi-adobe avatar nobbs avatar nvjmayo avatar rajatchopra avatar renaudwastaken avatar rockholla avatar rorajani avatar rtsisyk avatar shivamerla avatar sjug avatar snirka avatar tariq1890 avatar tillt avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gpu-driver-container's Issues

Rename project to gpu-driver-container

Avoiding uppercase letters in Git repository names is generally a good practice for several reasons:

  • Consistency with Git Conventions: Git itself is case-sensitive, meaning that "MyProject" and "myproject" would be considered different repositories. Consistently using lowercase letters aligns with Git's conventions and reduces the likelihood of confusion or errors related to case sensitivity.
  • Uniformity in URLs and File Systems: URLs and file systems are often case-sensitive as well, especially in Unix-like systems. Using lowercase letters exclusively ensures consistency in URLs (e.g., when accessing repositories hosted on platforms like GitHub) and file paths, which can prevent issues related to casing discrepancies.
  • Readability and Aesthetics: Lowercase letters are generally easier to read and aesthetically pleasing, especially when combined with hyphens or underscores to separate words. This enhances the readability of repository names in command-line interfaces, URLs, and documentation.
  • Avoidance of Platform Limitations: Some platforms or services may have limitations or conventions regarding uppercase letters in repository names. By sticking to lowercase letters, you can ensure compatibility with a wide range of platforms and tools without running into unexpected restrictions.

gpu-driver-container/sle15/nvidia-driver script should be fixed

Please fix the issue in the nvidia-driver script for Sle15.
The function _resolve_kernel_version() has an issue as described in nvidia-driver fails to parse correct kernel version on SLES15 SP5
where
| grep "Basesystem" should be added into the version variable otherwise it won't find a proper kernel version and the build process will fail.

Also, a Dockerfile should be updated for CUDA_VERSION to 12.4 and golang version to 1.22 (it was validated with a driver version 550.54.15)

Consider providing vGPU guest drivers removing the need to build and host one's own

If one is using vGPUs it's currently required to manually download vGPU guest drivers and to build a custom image.
While the steps are explained at https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/latest/install-gpu-operator-vgpu.html#using-nvidia-vgpu this creates quite some friction in starting to use vGPUs on K8s and also is a constant burden for driver updates.

I understand there are some licensing issues (EULA) that does not allow to host vGPU guest drivers publicly:

Uploading the NVIDIA vGPU driver to a publicly available repository or otherwise publicly sharing the driver is a violation of the NVIDIA vGPU EULA.

But the driver in itself does not do much without individual client configuration token. So I am wondering if there really is no path to also provide current vGPU drives in the gpu-driver-container images?

Add Support For Applying Patches

For OS versions without official support, e.g. FedoraCoreOS, it may sometimes (^1) be necessary to apply an NVIDIA-forum-recommended patch(es) to overcome compilation issues to deliver a working environment. The current driver container does not expose a means to easily apply patches via the installer's --apply-patch switch.

Having a means toinit the driver-container with an --apply-patches switch that searched a specified directory for applicable patches would be a convenience feature for teams running non-supported OS versions. In the situation where the driver container is running on the host one could imagine mounting patches to the container via systemd units etc. However, this method might not extend easily to a gpu-operator scheduled driver container (whether there exists an injection point for a) additional command switches, b) additional config files into the k8s/gpu-operator scheduled driver pods needs investigation).

^1 For at least a month it has been known that driver compilation for Fedora40 (which was in beta at the time, but is now released) fails affecting anyone running environments based on FedoraCoreOS's next and now testing streams. It is expected that in two weeks unless a formal new driver version is released incorporating the patch, that these failures will migrate to the FedoraCoreOS stable stream.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.