-
Notifications
You must be signed in to change notification settings - Fork 23
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
native cuda support #75
Conversation
Signed-off-by: Alexandru Costache <[email protected]>
Signed-off-by: Alexandru Costache <[email protected]>
Signed-off-by: Alexandru Costache <[email protected]>
For some reason that needs a bit more digging, the meta-tegra cuda recipe won't get the cuda-repo deb from the devnet. Let's add an append for now, while testing, since distributing cuda libraries already needs special permissions. Signed-off-by: Alexandru Costache <[email protected]>
We used to mask all graphics recipes, since graphics packages go to containers. But now we need some libs and their dependencies in the hostOS, so let's unmask them. Signed-off-by: Alexandru Costache <[email protected]>
Signed-off-by: Alexandru Costache <[email protected]>
Base recipe runtime depends render this package unbuildable. Drop dependencies as we don't need docker-ce, cuda-toolkit or others. Signed-off-by: Alexandru Costache <[email protected]>
includes the 19.03.13 version of balena-engine Signed-off-by: Robert Günzler <[email protected]>
Can one of the admins verify this patch? |
@resin-jenkins test this please |
In the absence of an upstream implementation of the DeviceRequest API introduced as part of Docker API v1.40 we roll our own using a feature label. As per my comment in the code, we fall back to the default behavior of docker cli's `--gpu` and request single device with the `gpu` capabilty. The only implementation at the moment is the NVIDIA driver; here: https://github.com/balena-os/balena-engine/blob/master/daemon/nvidia_linux.go Background on the composefile implementation: compose-spec/compose-spec#74 docker/compose#6691 Change-type: patch Connects-to: balena-os/balena-jetson#75 Signed-off-by: Robert Günzler <[email protected]>
In the absence of an upstream implementation of the DeviceRequest API introduced as part of Docker API v1.40 we roll our own using a feature label. As per my comment in the code, we fall back to the default behavior of docker cli's `--gpu` and request single device with the `gpu` capabilty. The only implementation at the moment is the NVIDIA driver; here: https://github.com/balena-os/balena-engine/blob/master/daemon/nvidia_linux.go Background on the composefile implementation: compose-spec/compose-spec#74 docker/compose#6691 Change-type: patch Connects-to: balena-os/balena-jetson#75 Signed-off-by: Robert Günzler <[email protected]>
In the absence of an upstream implementation of the DeviceRequest API introduced as part of Docker API v1.40 we roll our own using a feature label. As per my comment in the code, we fall back to the default behavior of docker cli's `--gpu` and request single device with the `gpu` capabilty. The only implementation at the moment is the NVIDIA driver; here: https://github.com/balena-os/balena-engine/blob/master/daemon/nvidia_linux.go Background on the composefile implementation: compose-spec/compose-spec#74 docker/compose#6691 Change-type: patch Connects-to: balena-os/balena-jetson#75 Signed-off-by: Robert Günzler <[email protected]>
In the absence of an upstream implementation of the DeviceRequest API introduced as part of Docker API v1.40 we roll our own using a feature label. As per my comment in the code, we fall back to the default behavior of docker cli's `--gpu` and request single device with the `gpu` capabilty. The only implementation at the moment is the NVIDIA driver; here: https://github.com/balena-os/balena-engine/blob/master/daemon/nvidia_linux.go Background on the composefile implementation: compose-spec/compose-spec#74 docker/compose#6691 Change-type: patch Connects-to: balena-os/balena-jetson#75 Signed-off-by: Robert Günzler <[email protected]>
In the absence of an upstream implementation of the DeviceRequest API introduced as part of Docker API v1.40 we roll our own using a feature label. As per my comment in the code, we fall back to the default behavior of docker cli's `--gpu` and request single device with the `gpu` capabilty. The only implementation at the moment is the NVIDIA driver; here: https://github.com/balena-os/balena-engine/blob/master/daemon/nvidia_linux.go Background on the composefile implementation: compose-spec/compose-spec#74 docker/compose#6691 Change-type: patch Connects-to: balena-os/balena-jetson#75 Signed-off-by: Robert Günzler <[email protected]>
In the absence of an upstream implementation of the DeviceRequest API introduced as part of Docker API v1.40 we roll our own using a feature label. As per my comment in the code, we fall back to the default behavior of docker cli's `--gpu` and request single device with the `gpu` capabilty. The only implementation at the moment is the NVIDIA driver; here: https://github.com/balena-os/balena-engine/blob/master/daemon/nvidia_linux.go Background on the composefile implementation: compose-spec/compose-spec#74 docker/compose#6691 Change-type: patch Connects-to: balena-os/balena-jetson#75 Signed-off-by: Robert Günzler <[email protected]>
In the absence of an upstream implementation of the DeviceRequest API introduced as part of Docker API v1.40 we roll our own using a feature label. As per my comment in the code, we fall back to the default behavior of docker cli's `--gpu` and request single device with the `gpu` capabilty. The only implementation at the moment is the NVIDIA driver; here: https://github.com/balena-os/balena-engine/blob/master/daemon/nvidia_linux.go Background on the composefile implementation: compose-spec/compose-spec#74 docker/compose#6691 Change-type: patch Connects-to: balena-os/balena-jetson#75 Signed-off-by: Robert Günzler <[email protected]>
In the absence of an upstream implementation of the DeviceRequest API introduced as part of Docker API v1.40 we roll our own using a feature label. As per my comment in the code, we fall back to the default behavior of docker cli's `--gpu` and request single device with the `gpu` capabilty. The only implementation at the moment is the NVIDIA driver; here: https://github.com/balena-os/balena-engine/blob/master/daemon/nvidia_linux.go Background on the composefile implementation: compose-spec/compose-spec#74 docker/compose#6691 Change-type: patch Connects-to: balena-os/balena-jetson#75 Signed-off-by: Robert Günzler <[email protected]>
@acostach can we run your test device with my supervisor patch applied? would be good to verify that change suffices before it's merged |
In the absence of an upstream implementation of the DeviceRequest API introduced as part of Docker API v1.40 we roll our own using a feature label. As per my comment in the code, we fall back to the default behavior of docker cli's `--gpu` and request single device with the `gpu` capabilty. The only implementation at the moment is the NVIDIA driver; here: https://github.com/balena-os/balena-engine/blob/master/daemon/nvidia_linux.go Background on the composefile implementation: compose-spec/compose-spec#74 docker/compose#6691 Change-type: patch Connects-to: balena-os/balena-jetson#75 Signed-off-by: Robert Günzler <[email protected]>
In the absence of an upstream implementation of the DeviceRequest API introduced as part of Docker API v1.40 we roll our own using a feature label. As per my comment in the code, we fall back to the default behavior of docker cli's `--gpu` and request single device with the `gpu` capabilty. The only implementation at the moment is the NVIDIA driver; here: https://github.com/balena-os/balena-engine/blob/master/daemon/nvidia_linux.go Background on the composefile implementation: compose-spec/compose-spec#74 docker/compose#6691 Change-type: patch Connects-to: balena-os/balena-jetson#75 Signed-off-by: Robert Günzler <[email protected]>
In the absence of an upstream implementation of the DeviceRequest API introduced as part of Docker API v1.40 we roll our own using a feature label. As per my comment in the code, we fall back to the default behavior of docker cli's `--gpu` and request single device with the `gpu` capabilty. The only implementation at the moment is the NVIDIA driver; here: https://github.com/balena-os/balena-engine/blob/master/daemon/nvidia_linux.go Background on the composefile implementation: compose-spec/compose-spec#74 docker/compose#6691 Change-type: patch Connects-to: balena-os/balena-jetson#75 Signed-off-by: Robert Günzler <[email protected]>
@robertgzr any updates regarding this PR? |
All the changes in this PR have been included in #85 For native cuda support to work there's still necessary for the hostapp extras feature to be implemented in meta-balena. That will allow overlaying the tegra libraries from a container into the rootfs. Those libraries are necessary for the nvidia hook to run. |
In the absence of an upstream implementation of the DeviceRequest API introduced as part of Docker API v1.40 we roll our own using a feature label. As per my comment in the code, we fall back to the default behavior of docker cli's `--gpu` and request single device with the `gpu` capabilty. The only implementation at the moment is the NVIDIA driver; here: https://github.com/balena-os/balena-engine/blob/master/daemon/nvidia_linux.go Background on the composefile implementation: compose-spec/compose-spec#74 docker/compose#6691 Change-type: patch Connects-to: balena-os/balena-jetson#75 Signed-off-by: Robert Günzler <[email protected]>
With balena-engine 19.03.13 merged in meta-balena it's possible to give containers access to the graphics hardware via NVIDIA's container toolkit.
We need:
Connects-to: #57