Comments (7)
@taotriad could you please take a look?
from intel-device-plugins-for-kubernetes.
Hi @taotriad, can you reproduce this issue? or give me some advice about it ?
Thanks.
from intel-device-plugins-for-kubernetes.
I haven't tried the demo; we successfully use the plugin on our test cluster though, so if there's a bug it's likely in the demo rather than the plugin.
But if clinfo cannot get your GPU info it seems that the issue is further down in the stack; is your OpenCL function properly, and does it support the hardware you have?
from intel-device-plugins-for-kubernetes.
I would rather not mount your host's /etc
and /opt
to a container, because the demo image have its own OpenCL runtime installed in these directories which may differ from what you have in your host (e.g. beignet on the host and non-beignet in the container).
from intel-device-plugins-for-kubernetes.
I think in general you should never mount the host's /etc in your container. There are cases where mounting /opt might makes sense.
from intel-device-plugins-for-kubernetes.
I think simplest test for GPU access is this Dockerfile (named "test-vainfo" in run example below):
FROM ubuntu:18.04
RUN apt-get update && apt-get -y install vainfo
i965 media/VAAPI GPU driver gets pulled in to the container as "vainfo" dependency . That supports HW from Haswell to Coffeelake (whereas new iHD driver available from Github would support HW from BDW upwards).
$ docker run -it --rm -v /dev:/dev -v /etc:/etc -v /opt:/opt --privileged ubuntu-demo-opencl:devel
This worked as expected. Container prevented GPU device writes when that wasn't explicitly enabled.
If you run docker directly instead of using Kubernetes and GPU plugin, you need to do same thing as what the GPU plugin does, i.e. provide GPU device access to the container (you don't need to mount /dev or run container in privileged mode).
Like this:
$ docker run -it --rm --device /dev/dri/renderD128:/dev/dri/renderD128 -t test-vainfo vainfo
If GPU access works, vainfo prints out what HW you have and available VA-API profiles. If you remove the device mapping, i.e. prevent GPU access, vainfo doesn't detect what HW is in question and doesn't print any info.
I think in general you should never mount the host's /etc in your container. There are cases where mounting /opt might makes sense
Sometimes it's useful to mount specific files from host /etc to containers (e.g. passwd and/or group file so that names for numeric user & group IDs match host).
from intel-device-plugins-for-kubernetes.
I'm closing this issue as it seems to be caused by misuse of docker volumes, not a problem in the plugin. Please reopen if correct volumes don't solve the problem for you.
from intel-device-plugins-for-kubernetes.
Related Issues (20)
- RFC: SGX EPC limits enforcement using NRI to configure misc controller
- QAT plugin crashes when device is detected, but not fully configured HOT 15
- Improve QAT+Apparmor case HOT 2
- rethink and rework logging
- GPU: Selinux issue with workload HOT 8
- qat-initcontainer does not have LICENSE installed in root/licenses dir HOT 2
- gpu_plugin failing on k3s with kubelet.crt error HOT 7
- Intel SGX nodes not displaying expected EPC status values HOT 1
- Cannot mount /dev/dri in Pod: invalid volume specification HOT 2
- Feature to make variations of init container Dockerfiles for other platforms like OCP HOT 6
- Allow custom tolerations with operator HOT 13
- [QUESTION] Is it possible to differentiate between heterogeneous i915 devices? HOT 9
- GPU crashing on 1 node. HOT 8
- Prepare 0.29.0 release HOT 2
- FPGA: Issue with .aocx bitstream parser HOT 3
- QAT: enable 420xx
- QAT VF kernel driver name is c62xvt, not c6xxvt for C62X device HOT 5
- Intel QAT service script issues and restriction HOT 3
- intel device plugins gpu : failed to call webhook, context deadline exceeded HOT 10
- GPU product node label supports only one product type HOT 17
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from intel-device-plugins-for-kubernetes.