4paradigm / 4paradigm/k8s-vgpu-scheduler

core dump when request 2 or more gpus with Tesla T4

オープン
#24 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
Go
スター
595
フォーク
100
PR マージ指標
30日以内にマージされた PR はありません

説明

### 1. Issue or feature description
It's ok when request 1 gpu in yaml. But when request more than 1, the output of nvidia-smi is below:
![image](https://user-images.githubusercontent.com/22440678/176585153-3a43f4fa-c8be-4693-b3bd-38cc125711f2.png)
The output of nvidia-smi in host machine is ok.

In another machine with GeForce RTX 2070 SUPER ,it's all right when request 2 gpus.
![image](https://user-images.githubusercontent.com/22440678/176585865-ca820791-a21c-4b5c-b8b9-5e626ca18205.png)
but when I run application locally , it abort due to :
```
[4pdvGPU ERROR (pid:697 thread=140106827071488 context.c:189)]: cuCtxGetDevice Not Found. tid=140106827071488 ctx=0x239601906000:0x23960041a000
home/limengxuan/work/libcuda_override/src/cuda/context.c:189: cuCtxGetDevice: Assertion `0' failed.
```

### 2. Steps to reproduce the issue
ubuntu1~20.04 + microk8s + Tesla T4 GPU + 510driver
### 3. Information to [attach](https://help.github.com/articles/file-attachments-on-issues-and-pull-requests/) (optional if deemed irrelevant)

Common error checking:
- [ ] The output of `nvidia-smi -a` on your host
![image](https://user-images.githubusercontent.com/22440678/176586282-c3a0c48d-1a8d-4faf-85ca-1bff87e4a78b.png)
- [ ] Your docker configuration file (e.g: `/etc/docker/daemon.json`)
-{
"default-runtime": "nvidia",
"runtimes": {
"nvidia": {
"path": "nvidia-container-runtime",
"runtimeArgs": []
}
}
}

Additional information that might help better understand your environment and reproduce the bug:
- [ ] Any relevant kernel output lines from `dmesg`
```
nvidia-smi[2260220]: segfault at 0 ip 00007fde46d051ce sp 00007ffe1ae4c9e8 error 4 in libc-2.31.so[7fde46b9d000+178000]
[89993.700532] Code: fd d7 c9 0f bc d1 c5 fe 7f 27 c5 fe 7f 6f 20 c5 fe 7f 77 40 c5 fe 7f 7f 60 49 83 c0 1f 49 29 d0 48 8d 7c 17 61 e9 c2 04 00 00 fe 6f 1e c5 fe 6f 56 20 c5 fd 74 cb c5 fd d7 d1 49 83 f8 21 0f
[90182.697502] nvidia-smi[2265941]: segfault at 0 ip 00007f241971c1ce sp 00007fffff703d08 error 4 in libc-2.31.so[7f24195b4000+178000]
[90182.697509] Code: fd d7 c9 0f bc d1 c5 fe 7f 27 c5 fe 7f 6f 20 c5 fe 7f 77 40 c5 fe 7f 7f 60 49 83 c0 1f 49 29 d0 48 8d 7c 17 61 e9 c2 04 00 00 fe 6f 1e c5 fe 6f 56 20 c5 fd 74 cb c5 fd d7 d1 49 83 f8 21 0f

```

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

調査の方向性

この issue は、k8s-vgpu-scheduler を介して複数の Tesla T4 GPU を要求した際に core dump が発生する問題に関するものです。まず、複数 GPU の割り当てを処理する Device Plugin のコードを、特に CUDA コンテキスト管理の周辺を調べます。ログと提供された dmesg の出力を確認し、nvidia-smi で Segmentation Faults が発生していないか調べます。Ubuntu 20.04、microk8s、Tesla T4、driver 510 の環境を再現します。nvidia-container-runtime の設定と、scheduler が複数の GPU を pod に割り当てる方法を確認します。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
docker, kubernetes
領域
cloud, devops, infrastructure
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。