中国人熟女HDFREEHDXⅩ

<listing id="3xzpl"></listing>
<var id="3xzpl"></var><var id="3xzpl"></var><cite id="3xzpl"><video id="3xzpl"></video></cite>
<var id="3xzpl"></var>
<menuitem id="3xzpl"></menuitem>
<var id="3xzpl"><strike id="3xzpl"><listing id="3xzpl"></listing></strike></var>
<var id="3xzpl"><video id="3xzpl"></video></var><cite id="3xzpl"><video id="3xzpl"><menuitem id="3xzpl"></menuitem></video></cite>
<var id="3xzpl"><video id="3xzpl"></video></var>
<var id="3xzpl"><strike id="3xzpl"><listing id="3xzpl"></listing></strike></var>
<ins id="3xzpl"><span id="3xzpl"><menuitem id="3xzpl"></menuitem></span></ins>
<ins id="3xzpl"><span id="3xzpl"><var id="3xzpl"></var></span></ins>

【自有技術大講堂】AI推理(TFServing GPU)在工業制造現場windows環境上的部署方案

網站首頁    行業信息    【自有技術大講堂】AI推理(TFServing GPU)在工業制造現場windows環境上的部署方案

一、背景

 

工業制造現場工控機一般采用windows系統,而TFServing-GPU推理并不支持在windows上直接安裝部署,這就給使用Tensorflow訓練的AI模型在工控機(GPU)上直接部署帶來了阻礙。

目前比較常見的做法是另外配置Linux服務器來部署TFServing掛載AI模型,這就帶來了額外的硬件成本。

另外,眾所周知,一些第三方的windows虛擬機軟件(例如virtualbox, vmware)也是無法直接使用到本機的GPU設備的。

本文提供的方案,利用了微軟官方提供的WSL2虛擬機,加載了Linux系統,提供了TFServing-GPU 推理的接口,解決了上文提到的工業制造現場AI部署痛點。

 

二、部署流程

1、Windows 環境配置

1.1 升級Windows版本到指定的Win10預覽版

 

預覽版Windows 10  ver:21390

預售版Windows 11  ver:22000 (Windows11正式發布后可以使用正式版本)

注意: win11安裝需要tpm驗證,并且開啟tpm

參考:https://baijiahao.baidu.com/s?id=1704271094210992572&wfr=spider&for=pc

 

1.關閉系統自動更新

2.防火墻關閉

依次設置為關閉

 

3.關閉睡眠

電源選項 》 更改計劃設置 》 永不休眠

4.開機自動登錄

a)組策略設置

 

按住win+R,彈出運行窗口,輸入 gpedit.msc 然后確認

 

找到 計算機配置 > 管理模板 > 系統 > 登錄 > 登陸時不顯示歡迎屏幕

雙擊進入

   

修改為 已啟動 , 然后點擊 應用 , 最后點擊 確定 .

  1.  

b)注冊表修改

保存以下內容到文件login.reg到電腦上,注意更改windows用戶賬號和密碼

Windows Registry Editor Version 5.00

 

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]

"DefaultUserName"="govion"

"AutoAdminLogon"="1"

"DefaultPassword"="XXX"

 

確定更改信息后,雙擊運行login.reg即可.

注意: 需要到注冊表中確定是否已經順利寫入;

 

Win+R 調出運行窗口,輸入 regedit ,點擊確定

切換到

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon目錄下

即為成功

 

1.2 安裝顯卡驅動

Windows安裝471.21_gameready_win10-dch_64bit_international

其他最近的驅動版本也可以。

 

1.3 安裝WSL2

WSL簡化安裝:

管理員權限打開命令行并執行:wsl --install

按照https://docs.microsoft.com/en-us/windows/wsl/install-win10鏈接中指南安裝

注意只要操作“簡化安裝”。不需要操作“手動安裝”

完成“簡化安裝”后會自動安裝一個Ubuntu20子系統版本,不用管它,也不要使用這個版本。

 

手動升級WSL2

依次輸入下面兩個命令

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

 

重啟電腦?。?!

重啟電腦?。?!

重啟電腦?。?!

 

安裝wsl2 linux內核更新包

https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

切換wsl版本:

wsl --set-default-version 2

完成wsl2 的更新,按下面步驟接著導入ubuntu18.

 

 

1.4 安裝Ubuntu18.04子系統

1.4.1 自動導入已有子系統

cmd命令提示符或Windows PowerShell中運行以下形式的命令(管理員權限):

wsl.exe --import <新的Linux子系統名稱> <新的Linux子系統路徑> <導出的tar壓縮文件路徑及名稱>

例如:wsl.exe --import Ubuntu-18.04 D:\WSL\Ubuntu_18 D:\WSL\Ubuntu-18.04.tar

Ubuntu-18.04.tar來源:之前已經做好的子系統

 

特別注意:

1.子系統名稱必須為Ubuntu-18.04

2. D:\WSL\Ubuntu_18路徑必須存在,如果沒有D盤就換個其他位置,建議使用用戶目錄(例如C:\Users\govion\Ubuntu_18

 

1.4.2 手動安裝(從零開始)

1.4.2.1 安裝Ubuntu18.04子系統

Microsoft Store”搜索Ubuntu,并安裝Ubuntu18.04LTS子系統

點擊“獲取”后再點擊“安裝”

 

1.4.2.2 安裝Docker Desktop WSL2 backend

使用提供的安裝包安裝:Docker Desktop Installer

安裝好后,進行如下設置:

 

打開1,執行2

 

去除開機自啟勾選

 

1.4.2.3 Ubuntu環境配置

1cuda 安裝

安裝命令

$ wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin

$ sudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600

$ wget https://developer.download.nvidia.com/compute/cuda/11.4.0/local_installers/cuda-repo-wsl-ubuntu-11-4-local_11.4.0-1_amd64.deb

$ sudo dpkg -i cuda-repo-wsl-ubuntu-11-4-local_11.4.0-1_amd64.deb

$ sudo apt-key add /var/cuda-repo-wsl-ubuntu-11-4-local/7fa2af80.pub

$ sudo apt-get update

$ sudo apt-get -y install cuda

 

驗證CUDA是否安裝成功:

啟動Ubuntu18.04子系統(搜索Ubuntu18應用啟動)執行如下命令:

 

確認打印結果如上類似。

 

 2)安裝Docker

$ distribution=$(. /etc/os-release;echo $ID$VERSION_ID)

$ curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -

$ curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list

$ curl -s -L https://nvidia.github.io/libnvidia-container/experimental/$distribution/libnvidia-container-experimental.list | sudo tee /etc/apt/sources.list.d/libnvidia-container-experimental.list

$ sudo apt-get update

$ sudo apt-get install -y nvidia-docker2

 

重新打開一個Ubuntu18.04應用并執行:

 

$ sudo service docker stop

$ sudo service docker start

 

驗證是否能夠啟動docker并使用GPU

執行命令和輸出如下:

 

3)開啟ssh服務

安裝ssh服務

sudo apt-get install openssh-server

啟動ssh服務

sudo service ssh start

如果ssh出現permission denied (publickey)問題還是無法登錄,就修改sshd的默認配置

修改/etc/ssh/sshd-config文件,

將其中的PermitRootLogin no修改為yes,

PubkeyAuthentication yes修改為no

 

 

4)下載安裝鏡像

tfServing鏡像

online方式)

docker pull tensorflow/serving:2.4.3-gpu

(離線方式使用已有TFServing鏡像)

•把tfServing_img.tar放到home/user(之前新建的用戶名)目錄下

•sudo docker load < tfServing_img.tar

•sudo docker tag d1eaacb267c1 tensorflow/serving:latest-gpu

 

5)啟動docker 容器,運行模型Serving服務

此部分和在Linux服務器上啟動TFServing掛載AI模型相同。

不太熟悉的同學請可以參考如下網絡教程實施:

https://blog.csdn.net/JerryZhang__/article/details/86516428

 

6)問題處理:

1. root用戶docker run報錯:

WARNING: Error loading config file: /home/raiden/.docker/config.json: stat /home/raiden/.docker/config.json: permission denied

 

解決方案:

sudo groupadd docker #添加docker用戶組

sudo gpasswd -a $USER docker #將登陸用戶加入到docker用戶組中

newgrp docker #更新用戶組

sudo chown "$USER":"$USER" /home/"$USER"/.docker -R

sudo chmod g+rwx "/home/$USER/.docker" -R

sudo systemctl restart docker

 

2、關閉管理員權限申請彈窗確認

步驟一:  控制面板

 

步驟二:  

 

步驟三:

 

步驟四:

 

步驟五: 

       使用管理員身份運行任意一個程序,確認沒有彈窗即可

 

3、開機自啟腳本

1.獲取管理員權限打開CMD

2.把WSL2子系統的端口映射到windows局域網

3.給WSL2子系統添加虛擬IP,可以在windows局域網環境找到此子系統

4. init.wsl腳本啟動TFServing

 

init.wsl腳本參考如下圖:先啟動sshdocker, 然后停止已有的TFServing鏡像,再重新啟動。

deploy_model_new.sh參考如下

5.以root用戶進入子系統(ubuntu18.04)Shell,可有可無。

4、設置腳本開機自啟

1)按鍵 Win + R, 彈出“運行”窗口

2)輸入 shell:startup,點擊確定

 

3)把StartWSL.bat放到這個路徑下

腳本:StartWsl.bat

 

4)重啟,會彈出窗口,等待腳本自動執行完成如下截圖:

 

腳本執行完成后,此命令行窗口可以關閉,也可以不關閉。

 

2021年11月3日 08:32
中国人熟女HDFREEHDXⅩ