docker中執行的pytorch解決多執行緒報錯

2021-10-25 18:50:10 字數 588 閱讀 2072

在docker中執行的pytorch執行多執行緒訓練,報如下錯誤:

unexpected bus error encountered in worker. this might be caused by insufficient shared memory(shm)
解決方法,啟動docker時,增加--ipc=host引數

如果是在k8s上執行的,則需要在yaml的spec中加入hostipc: true類似如下效果:

apiversion: v1

kind: pod

metadata:

name: pod-with-host-pid-and-ipc-yaohong

spec:

hostpid: true //你希望這個pod使用宿主節點的pid命名空間

hostipc: true //你希望pod使用宿主節點的ipc命名空間

containers:

- name: main

image: alpine

command: ["/bin/sleep", "99999"]

參考:

Docker容器中執行docker 命令

一 在一台執行了docker的伺服器上,啟動374c3bec1f4b 映象的容器,這個映象中安裝docker yum install docker y docker run itd v var run docker.sock var run docker.sock name docker test ...

docker容器中執行Ubuntu

只習慣用centos系統,但是有些軟體編譯安裝很麻煩不方便,但是呢在ubuntu中就變得容易方便,所以我打算用docker執行ubuntu系統彌補centos短板和不足之處 1 安裝ubuntu系統命令 docker pull ubuntu 這是乙個極度精簡的系統,連最基本的wget命令都沒有 所以...

在Docker中執行crontab

在把自己的專案通過docker進行打包時,由於專案中用到了crontab,不過使用到的基礎映象python 3.6 slim並沒有安裝這項服務,記錄下在映象中安裝和配置crontab的過程。由於基礎映象中沒有crontab服務,需要在打包自己映象的dockerfile中加入安裝cron服務的步驟。f...