Apache MXNet - การติดตั้ง MXNet

ในการเริ่มต้นกับ MXNet สิ่งแรกที่เราต้องทำคือติดตั้งลงในคอมพิวเตอร์ของเรา Apache MXNet ทำงานบนแพลตฟอร์มทั้งหมดที่มีอยู่รวมถึง Windows, Mac และ Linux

ระบบปฏิบัติการลินุกซ์

เราสามารถติดตั้ง MXNet บน Linux OS ได้ด้วยวิธีต่อไปนี้ -

หน่วยประมวลผลกราฟิก (GPU)

ที่นี่เราจะใช้วิธีการต่างๆเช่น Pip, Docker และ Source เพื่อติดตั้ง MXNet เมื่อเราใช้ GPU ในการประมวลผล -

โดยใช้วิธี Pip

คุณสามารถใช้คำสั่งต่อไปนี้เพื่อติดตั้ง MXNet บน Linus OS ของคุณ -

pip install mxnet

Apache MXNet ยังมีแพ็คเกจ pip MKL ซึ่งเร็วกว่ามากเมื่อทำงานบนฮาร์ดแวร์ Intel ตัวอย่างเช่นmxnet-cu101mkl หมายความว่า -

  • แพคเกจสร้างขึ้นด้วย CUDA / cuDNN

  • แพ็คเกจนี้เปิดใช้งาน MKL-DNN

  • เวอร์ชัน CUDA คือ 10.1

สำหรับตัวเลือกอื่น ๆ คุณสามารถอ้างถึงได้ https://pypi.org/project/mxnet/.

โดยใช้ Docker

คุณสามารถค้นหาอิมเมจนักเทียบท่าด้วย MXNet ได้ที่ DockerHub ซึ่งมีอยู่ที่ https://hub.docker.com/u/mxnet ให้เราตรวจสอบขั้นตอนด้านล่างเพื่อติดตั้ง MXNet โดยใช้ Docker กับ GPU -

Step 1- ขั้นแรกทำตามคำแนะนำในการติดตั้งนักเทียบท่าซึ่งมีอยู่ที่ https://docs.docker.com/engine/install/ubuntu/. เราจำเป็นต้องติดตั้ง Docker บนเครื่องของเรา

Step 2- ในการเปิดใช้งานการใช้งาน GPU จากคอนเทนเนอร์นักเทียบท่าต่อไปเราต้องติดตั้ง nvidia-docker-plugin คุณสามารถทำตามคำแนะนำในการติดตั้งได้ที่https://github.com/NVIDIA/nvidia-docker/wiki.

Step 3- โดยใช้คำสั่งต่อไปนี้คุณสามารถดึงภาพ MXNet docker -

$ sudo docker pull mxnet/python:gpu

ตอนนี้เพื่อดูว่าการดึงภาพนักเทียบท่า mxnet / python สำเร็จหรือไม่เราสามารถแสดงรายการภาพนักเทียบท่าได้ดังนี้ -

$ sudo docker images

สำหรับความเร็วในการอนุมานที่เร็วที่สุดกับ MXNet ขอแนะนำให้ใช้ MXNet ล่าสุดกับ Intel MKL-DNN ตรวจสอบคำสั่งด้านล่าง -

$ sudo docker pull mxnet/python:1.3.0_cpu_mkl
$ sudo docker images

จากแหล่งที่มา

ในการสร้างไลบรารีที่ใช้ร่วมกัน MXNet จากซอร์สด้วย GPU อันดับแรกเราต้องตั้งค่าสภาพแวดล้อมสำหรับ CUDA และ cuDNN ดังนี้

  • ดาวน์โหลดและติดตั้งชุดเครื่องมือ CUDA ที่นี่แนะนำให้ใช้ CUDA 9.2

  • ดาวน์โหลดต่อไป cuDNN 7.1.4

  • ตอนนี้เราต้องคลายซิปไฟล์ นอกจากนี้ยังจำเป็นต้องเปลี่ยนเป็นไดเรกทอรีราก cuDNN ย้ายส่วนหัวและไลบรารีไปยังโฟลเดอร์ CUDA Toolkit ในเครื่องดังนี้ -

tar xvzf cudnn-9.2-linux-x64-v7.1
sudo cp -P cuda/include/cudnn.h /usr/local/cuda/include
sudo cp -P cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
sudo ldconfig

หลังจากตั้งค่าสภาพแวดล้อมสำหรับ CUDA และ cuDNN แล้วให้ทำตามขั้นตอนด้านล่างเพื่อสร้างไลบรารีที่ใช้ร่วมกัน MXNet จากซอร์ส -

Step 1- ขั้นแรกเราต้องติดตั้งแพ็คเกจที่จำเป็น การอ้างอิงเหล่านี้จำเป็นสำหรับ Ubuntu เวอร์ชัน 16.04 หรือใหม่กว่า

sudo apt-get update
sudo apt-get install -y build-essential git ninja-build ccache libopenblas-dev 
libopencv-dev cmake

Step 2- ในขั้นตอนนี้เราจะดาวน์โหลดแหล่ง MXNet และกำหนดค่า ก่อนอื่นให้เราโคลนที่เก็บโดยใช้คำสั่งต่อไปนี้

git clone –recursive https://github.com/apache/incubator-mxnet.git mxnet
cd mxnet
cp config/linux_gpu.cmake #for build with CUDA

Step 3- โดยใช้คำสั่งต่อไปนี้คุณสามารถสร้าง MXNet core shared library−

rm -rf build
mkdir -p build && cd build
cmake -GNinja ..
cmake --build .

Two important points regarding the above step is as follows−

หากคุณต้องการสร้างเวอร์ชัน Debug ให้ระบุดังต่อไปนี้ −

cmake -DCMAKE_BUILD_TYPE=Debug -GNinja ..

ในการกำหนดจำนวนงานคอมไพล์แบบขนานให้ระบุสิ่งต่อไปนี้ -

cmake --build . --parallel N

เมื่อคุณสร้างไลบรารีที่ใช้ร่วมกันหลัก MXNet สำเร็จแล้วในไฟล์ build โฟลเดอร์ในไฟล์ MXNet project root, คุณจะพบว่า libmxnet.so ซึ่งจำเป็นในการติดตั้งการผูกภาษา (ทางเลือก)

หน่วยประมวลผลกลาง (CPU)

ในที่นี้เราจะใช้วิธีการต่างๆเช่น Pip, Docker และ Source เพื่อติดตั้ง MXNet เมื่อเราใช้ CPU ในการประมวลผล -

โดยใช้วิธี Pip

คุณสามารถใช้คำสั่งต่อไปนี้เพื่อติดตั้ง MXNet บน Linus OS− ของคุณ

pip install mxnet

Apache MXNet ยังมีแพ็คเกจ pip ที่เปิดใช้งาน MKL-DNN ซึ่งเร็วกว่ามากเมื่อทำงานบนฮาร์ดแวร์ของ Intel

pip install mxnet-mkl

โดยใช้ Docker

คุณสามารถค้นหาอิมเมจนักเทียบท่าด้วย MXNet ได้ที่ DockerHub ซึ่งมีอยู่ที่ https://hub.docker.com/u/mxnet. ให้เราตรวจสอบขั้นตอนด้านล่างเพื่อติดตั้ง MXNet โดยใช้ Docker กับ CPU -

Step 1- ขั้นแรกทำตามคำแนะนำในการติดตั้งนักเทียบท่าซึ่งมีอยู่ที่ https://docs.docker.com/engine/install/ubuntu/. เราจำเป็นต้องติดตั้ง Docker บนเครื่องของเรา

Step 2- โดยใช้คำสั่งต่อไปนี้คุณสามารถดึงภาพ MXNet docker:

$ sudo docker pull mxnet/python

ตอนนี้เพื่อดูว่าการดึงภาพนักเทียบท่า mxnet / python สำเร็จหรือไม่เราสามารถแสดงรายการภาพนักเทียบท่าได้ดังนี้ -

$ sudo docker images

สำหรับความเร็วในการอนุมานที่เร็วที่สุดกับ MXNet ขอแนะนำให้ใช้ MXNet ล่าสุดกับ Intel MKL-DNN

ตรวจสอบคำสั่งด้านล่าง -

$ sudo docker pull mxnet/python:1.3.0_cpu_mkl
$ sudo docker images

จากแหล่งที่มา

ในการสร้างไลบรารีที่ใช้ร่วมกัน MXNet จากซอร์สด้วย CPU ให้ทำตามขั้นตอนด้านล่าง -

Step 1- ขั้นแรกเราต้องติดตั้งแพ็คเกจที่จำเป็น การอ้างอิงเหล่านี้จำเป็นสำหรับ Ubuntu เวอร์ชัน 16.04 หรือใหม่กว่า

sudo apt-get update

sudo apt-get install -y build-essential git ninja-build ccache libopenblas-dev libopencv-dev cmake

Step 2- ในขั้นตอนนี้เราจะดาวน์โหลดแหล่ง MXNet และกำหนดค่า ก่อนอื่นให้เราโคลนที่เก็บโดยใช้คำสั่งต่อไปนี้:

git clone –recursive https://github.com/apache/incubator-mxnet.git mxnet

cd mxnet
cp config/linux.cmake config.cmake

Step 3- โดยใช้คำสั่งต่อไปนี้คุณสามารถสร้างไลบรารีที่ใช้ร่วมกันของ MXNet core:

rm -rf build
mkdir -p build && cd build
cmake -GNinja ..
cmake --build .

Two important points regarding the above step is as follows−

หากคุณต้องการสร้างเวอร์ชัน Debug ให้ระบุดังต่อไปนี้:

cmake -DCMAKE_BUILD_TYPE=Debug -GNinja ..

ในการกำหนดจำนวนงานคอมไพล์แบบขนานให้ระบุสิ่งต่อไปนี้ −

cmake --build . --parallel N

เมื่อคุณสร้างไลบรารีที่ใช้ร่วมกันหลัก MXNet สำเร็จแล้วในไฟล์ build ในรูทโปรเจ็กต์ MXNet ของคุณคุณจะพบ libmxnet.so ซึ่งจำเป็นสำหรับการติดตั้งการผูกภาษา (ไม่บังคับ)

MacOS

เราสามารถติดตั้ง MXNet บน MacOS ได้ด้วยวิธีต่อไปนี้

หน่วยประมวลผลกราฟิก (GPU)

หากคุณวางแผนที่จะสร้าง MXNet บน MacOS ด้วย GPU แสดงว่าไม่มีวิธี Pip และ Docker วิธีเดียวในกรณีนี้คือสร้างจากแหล่งที่มา

จากแหล่งที่มา

ในการสร้างไลบรารีที่ใช้ร่วมกัน MXNet จากซอร์สด้วย GPU อันดับแรกเราต้องตั้งค่าสภาพแวดล้อมสำหรับ CUDA และ cuDNN คุณต้องทำตามNVIDIA CUDA Installation Guide ซึ่งมีอยู่ที่ https://docs.nvidia.com และ cuDNN Installation Guide, ซึ่งมีอยู่ที่ https://docs.nvidia.com/deeplearning สำหรับ mac OS

โปรดทราบว่าในปี 2019 CUDA หยุดรองรับ macOS ในความเป็นจริง CUDA เวอร์ชันอนาคตอาจไม่รองรับ macOS

เมื่อคุณตั้งค่าสภาพแวดล้อมสำหรับ CUDA และ cuDNN แล้วให้ทำตามขั้นตอนด้านล่างเพื่อติดตั้ง MXNet จากซอร์สบน OS X (Mac) -

Step 1- เนื่องจากเราต้องการการอ้างอิงบางอย่างบน OS x ก่อนอื่นเราต้องติดตั้งแพ็คเกจข้อกำหนดเบื้องต้น

xcode-select –-install #Install OS X Developer Tools

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" #Install Homebrew

brew install cmake ninja ccache opencv # Install dependencies

นอกจากนี้เรายังสามารถสร้าง MXNet ได้โดยไม่ต้องใช้ OpenCV เนื่องจาก opencv เป็นการพึ่งพาที่เป็นทางเลือก

Step 2- ในขั้นตอนนี้เราจะดาวน์โหลดแหล่ง MXNet และกำหนดค่า ก่อนอื่นให้เราโคลนที่เก็บโดยใช้คำสั่งต่อไปนี้

git clone –-recursive https://github.com/apache/incubator-mxnet.git mxnet

cd mxnet
cp config/linux.cmake config.cmake

สำหรับ GPU ที่เปิดใช้งานจำเป็นต้องติดตั้งการอ้างอิง CUDA ก่อนเนื่องจากเมื่อพยายามสร้างบิวด์ที่เปิดใช้งาน GPU บนเครื่องที่ไม่มี GPU บิวด์ MXNet จะไม่สามารถตรวจจับสถาปัตยกรรม GPU ของคุณโดยอัตโนมัติ ในกรณีเช่นนี้ MXNet จะกำหนดเป้าหมายสถาปัตยกรรม GPU ที่มีอยู่ทั้งหมด

Step 3- โดยใช้คำสั่งต่อไปนี้คุณสามารถสร้าง MXNet core shared library−

rm -rf build
mkdir -p build && cd build
cmake -GNinja ..
cmake --build .

ประเด็นสำคัญสองประการเกี่ยวกับขั้นตอนข้างต้นมีดังนี้

หากคุณต้องการสร้างเวอร์ชัน Debug ให้ระบุดังต่อไปนี้ −

cmake -DCMAKE_BUILD_TYPE=Debug -GNinja ..

ในการกำหนดจำนวนงานคอมไพล์แบบขนานให้ระบุสิ่งต่อไปนี้:

cmake --build . --parallel N

เมื่อคุณสร้างไลบรารีที่ใช้ร่วมกันหลัก MXNet สำเร็จแล้วในไฟล์ build โฟลเดอร์ในไฟล์ MXNet project root, คุณจะพบว่า libmxnet.dylib, ซึ่งจำเป็นในการติดตั้งการผูกภาษา (ทางเลือก)

หน่วยประมวลผลกลาง (CPU)

ที่นี่เราจะใช้วิธีการต่างๆเช่น Pip, Docker และ Source เพื่อติดตั้ง MXNet เมื่อเราใช้ CPU ในการประมวลผล −

โดยใช้วิธี Pip

คุณสามารถใช้คำสั่งต่อไปนี้เพื่อติดตั้ง MXNet บน Linus OS ของคุณ

pip install mxnet

โดยใช้ Docker

คุณสามารถค้นหาอิมเมจนักเทียบท่าด้วย MXNet ได้ที่ DockerHub ซึ่งมีอยู่ที่ https://hub.docker.com/u/mxnet. ให้เราตรวจสอบขั้นตอนด้านล่างเพื่อติดตั้ง MXNet โดยใช้ Docker กับ CPU−

Step 1- ก่อนอื่นทำตามไฟล์ docker installation instructions ซึ่งมีให้บริการที่ https://docs.docker.com/docker-for-mac เราจำเป็นต้องติดตั้ง Docker บนเครื่องของเรา

Step 2- โดยใช้คำสั่งต่อไปนี้คุณสามารถดึง MXNet docker image−

$ docker pull mxnet/python

ตอนนี้เพื่อดูว่าการดึงภาพนักเทียบท่า mxnet / python สำเร็จหรือไม่เราสามารถแสดงรายการภาพนักเทียบท่าได้ดังนี้ −

$ docker images

สำหรับความเร็วในการอนุมานที่เร็วที่สุดกับ MXNet ขอแนะนำให้ใช้ MXNet ล่าสุดกับ Intel MKL-DNN ตรวจสอบคำสั่งด้านล่าง

$ docker pull mxnet/python:1.3.0_cpu_mkl
$ docker images

จากแหล่งที่มา

ทำตามขั้นตอนด้านล่างเพื่อติดตั้ง MXNet จากแหล่งบน OS X (Mac) -

Step 1- เนื่องจากเราต้องการการอ้างอิงบางอย่างบน OS x อันดับแรกเราต้องติดตั้งแพ็คเกจข้อกำหนดเบื้องต้น

xcode-select –-install #Install OS X Developer Tools
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" #Install Homebrew
brew install cmake ninja ccache opencv # Install dependencies

นอกจากนี้เรายังสามารถสร้าง MXNet ได้โดยไม่ต้องใช้ OpenCV เนื่องจาก opencv เป็นการพึ่งพาที่เป็นทางเลือก

Step 2- ในขั้นตอนนี้เราจะดาวน์โหลดแหล่ง MXNet และกำหนดค่า ขั้นแรกให้เราโคลนที่เก็บโดยใช้คำสั่งต่อไปนี้

git clone –-recursive https://github.com/apache/incubator-mxnet.git mxnet

cd mxnet

cp config/linux.cmake config.cmake

Step 3- โดยใช้คำสั่งต่อไปนี้คุณสามารถสร้างไลบรารีที่ใช้ร่วมกันของ MXNet core:

rm -rf build
mkdir -p build && cd build
cmake -GNinja ..
cmake --build .

Two important points regarding the above step is as follows−

หากคุณต้องการสร้างเวอร์ชัน Debug ให้ระบุดังต่อไปนี้ −

cmake -DCMAKE_BUILD_TYPE=Debug -GNinja ..

ในการกำหนดจำนวนงานคอมไพล์แบบขนานให้ระบุสิ่งต่อไปนี้ −

cmake --build . --parallel N

เมื่อคุณสร้างไลบรารีที่ใช้ร่วมกันหลัก MXNet สำเร็จแล้วในไฟล์ build โฟลเดอร์ในไฟล์ MXNet project root, คุณจะพบว่า libmxnet.dylib, ซึ่งจำเป็นในการติดตั้งการผูกภาษา (ทางเลือก)

ระบบปฏิบัติการ Windows

ในการติดตั้ง MXNet บน Windows สิ่งต่อไปนี้เป็นข้อกำหนดเบื้องต้น

ข้อกำหนดขั้นต่ำของระบบ

  • Windows 7, 10, Server 2012 R2 หรือ Server 2016

  • Visual Studio 2015 หรือ 2017 (ทุกประเภท)

  • Python 2.7 หรือ 3.6

  • pip

ความต้องการของระบบที่แนะนำ

  • Windows 10, Server 2012 R2 หรือ Server 2016

  • Visual Studio 2017

  • GPU ที่รองรับ NVIDIA CUDA อย่างน้อยหนึ่งตัว

  • CPU ที่รองรับ MKL: โปรเซสเซอร์Intel®Xeon®, ตระกูลโปรเซสเซอร์Intel® Core ™, โปรเซสเซอร์ Intel Atom®หรือโปรเซสเซอร์Intel® Xeon Phi ™

  • Python 2.7 หรือ 3.6

  • pip

หน่วยประมวลผลกราฟิก (GPU)

โดยใช้วิธี Pip−

หากคุณวางแผนที่จะสร้าง MXNet บน Windows ด้วย NVIDIA GPUs มีสองตัวเลือกสำหรับการติดตั้ง MXNet ด้วย CUDA ที่รองรับแพ็คเกจ Python −

ติดตั้งด้วย CUDA Support

ด้านล่างนี้เป็นขั้นตอนด้วยความช่วยเหลือซึ่งเราสามารถตั้งค่า MXNet ด้วย CUDA

Step 1- ติดตั้ง Microsoft Visual Studio 2017 หรือ Microsoft Visual Studio 2015 ก่อน

Step 2- ถัดไปดาวน์โหลดและติดตั้ง NVIDIA CUDA ขอแนะนำให้ใช้ CUDA เวอร์ชัน 9.2 หรือ 9.0 เนื่องจากมีการระบุปัญหาบางอย่างกับ CUDA 9.1 ในอดีต

Step 3- ตอนนี้ดาวน์โหลดและติดตั้ง NVIDIA_CUDA_DNN

Step 4- สุดท้ายโดยใช้คำสั่ง pip ต่อไปนี้ให้ติดตั้ง MXNet ด้วย CUDA−

pip install mxnet-cu92

ติดตั้งด้วย CUDA และ MKL Support

ด้านล่างนี้เป็นขั้นตอนด้วยความช่วยเหลือซึ่งเราสามารถตั้งค่า MXNet ด้วย CUDA และ MKL ได้

Step 1- ติดตั้ง Microsoft Visual Studio 2017 หรือ Microsoft Visual Studio 2015 ก่อน

Step 2- ถัดไปดาวน์โหลดและติดตั้ง intel MKL

Step 3- ตอนนี้ดาวน์โหลดและติดตั้ง NVIDIA CUDA

Step 4- ตอนนี้ดาวน์โหลดและติดตั้ง NVIDIA_CUDA_DNN

Step 5- สุดท้ายโดยใช้คำสั่ง pip ต่อไปนี้ให้ติดตั้ง MXNet ด้วย MKL

pip install mxnet-cu92mkl

จากแหล่งที่มา

ในการสร้างไลบรารีหลักของ MXNet จากซอร์สด้วย GPU เรามีสองตัวเลือกต่อไปนี้

Option 1− Build with Microsoft Visual Studio 2017

ในการสร้างและติดตั้ง MXNet ด้วยตัวคุณเองโดยใช้ Microsoft Visual Studio 2017 คุณต้องมีการอ้างอิงต่อไปนี้

Install/update Microsoft Visual Studio.

  • หากยังไม่ได้ติดตั้ง Microsoft Visual Studio บนเครื่องของคุณให้ดาวน์โหลดและติดตั้งก่อน

  • มันจะแจ้งเกี่ยวกับการติดตั้ง Git ติดตั้งด้วย

  • หากมีการติดตั้ง Microsoft Visual Studio บนเครื่องของคุณแล้ว แต่คุณต้องการอัปเดตให้ดำเนินการในขั้นตอนถัดไปเพื่อแก้ไขการติดตั้งของคุณ ที่นี่คุณจะได้รับโอกาสในการอัปเดต Microsoft Visual Studio ด้วย

ทำตามคำแนะนำในการเปิดโปรแกรมติดตั้ง Visual Studio ที่มีอยู่ที่ https://docs.microsoft.com/en-us เพื่อปรับเปลี่ยนส่วนประกอบส่วนบุคคล

ในแอปพลิเคชัน Visual Studio Installer ให้อัปเดตตามต้องการ หลังจากนั้นมองหาและตรวจสอบVC++ 2017 version 15.4 v14.11 toolset แล้วคลิก Modify.

ตอนนี้โดยใช้คำสั่งต่อไปนี้ให้เปลี่ยนรุ่นของ Microsoft VS2017 เป็น v14.11−

"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat" -vcvars_ver=14.11

ถัดไปคุณต้องดาวน์โหลดและติดตั้ง CMake สามารถดูได้ที่ https://cmake.org/download/ ขอแนะนำให้ใช้ CMake v3.12.2 ซึ่งมีอยู่ที่ https://cmake.org/download/ เนื่องจากผ่านการทดสอบด้วย MXNet

ตอนนี้ดาวน์โหลดและเรียกใช้ไฟล์ OpenCV แพ็คเกจได้ที่ https://sourceforge.net/projects/opencvlibrary/ซึ่งจะแตกไฟล์หลายไฟล์ ขึ้นอยู่กับคุณว่าคุณต้องการวางไว้ในไดเรกทอรีอื่นหรือไม่ ที่นี่เราจะใช้เส้นทางC:\utils(mkdir C:\utils) เป็นเส้นทางเริ่มต้นของเรา

ต่อไปเราต้องตั้งค่าตัวแปรสภาพแวดล้อม OpenCV_DIR ให้ชี้ไปที่ไดเร็กทอรีบิลด์ OpenCV ที่เราเพิ่งคลายซิป สำหรับพรอมต์คำสั่งที่เปิดนี้และพิมพ์set OpenCV_DIR=C:\utils\opencv\build.

ประเด็นสำคัญประการหนึ่งคือหากคุณไม่ได้ติดตั้ง Intel MKL (Math Kernel Library) คุณสามารถติดตั้งได้

แพ็คเกจโอเพ่นซอร์สอื่นที่คุณสามารถใช้ได้คือ OpenBLAS. สำหรับคำแนะนำเพิ่มเติมเราถือว่าคุณกำลังใช้งานอยู่ที่นี่OpenBLAS.

ดังนั้นดาวน์โหลดไฟล์ OpenBlas ซึ่งมีจำหน่ายที่ https://sourceforge.net และคลายซิปไฟล์เปลี่ยนชื่อเป็น OpenBLAS และวางไว้ข้างใต้ C:\utils.

ต่อไปเราต้องตั้งค่าตัวแปรสภาพแวดล้อม OpenBLAS_HOME เพื่อชี้ไปที่ไดเร็กทอรี OpenBLAS ที่มีไฟล์ include และ libไดเรกทอรี สำหรับพรอมต์คำสั่งที่เปิดนี้และพิมพ์set OpenBLAS_HOME=C:\utils\OpenBLAS.

ตอนนี้ดาวน์โหลดและติดตั้ง CUDA ได้ที่ https://developer.nvidia.com. โปรดทราบว่าหากคุณมี CUDA อยู่แล้วจากนั้นติดตั้ง Microsoft VS2017 คุณต้องติดตั้ง CUDA ใหม่ทันทีเพื่อให้คุณได้รับส่วนประกอบชุดเครื่องมือ CUDA สำหรับการรวม Microsoft VS2017

ถัดไปคุณต้องดาวน์โหลดและติดตั้ง cuDNN

ถัดไปคุณต้องดาวน์โหลดและติดตั้งคอมไพล์ซึ่งอยู่ที่ https://gitforwindows.org/ ด้วย.

เมื่อคุณติดตั้งการอ้างอิงที่จำเป็นทั้งหมดแล้วให้ทำตามขั้นตอนด้านล่างเพื่อสร้างซอร์สโค้ด MXNet

Step 1- เปิดพรอมต์คำสั่งใน windows

Step 2- ตอนนี้โดยใช้คำสั่งต่อไปนี้ให้ดาวน์โหลดซอร์สโค้ด MXNet จาก GitHub:

cd C:\

git clone https://github.com/apache/incubator-mxnet.git --recursive

Step 3- ถัดไปตรวจสอบสิ่งต่อไปนี้ −

DCUDNN_INCLUDE and DCUDNN_LIBRARY ตัวแปรสภาพแวดล้อมชี้ไปที่ include โฟลเดอร์และ cudnn.lib ไฟล์ของตำแหน่งที่ติดตั้ง CUDA ของคุณ

C:\incubator-mxnet คือตำแหน่งของซอร์สโค้ดที่คุณเพิ่งโคลนในขั้นตอนก่อนหน้า

Step 4- ถัดไปโดยใช้คำสั่งต่อไปนี้สร้างบิลด์ directory และไปที่ไดเร็กทอรีเช่น −

mkdir C:\incubator-mxnet\build
cd C:\incubator-mxnet\build

Step 5- ตอนนี้โดยใช้ cmake ให้รวบรวมซอร์สโค้ด MXNet ดังต่อไปนี้

cmake -G "Visual Studio 15 2017 Win64" -T cuda=9.2,host=x64 -DUSE_CUDA=1 -DUSE_CUDNN=1 -DUSE_NVRTC=1 -DUSE_OPENCV=1 -DUSE_OPENMP=1 -DUSE_BLAS=open -DUSE_LAPACK=1 -DUSE_DIST_KVSTORE=0 -DCUDA_ARCH_LIST=Common -DCUDA_TOOLSET=9.2 -DCUDNN_INCLUDE=C:\cuda\include -DCUDNN_LIBRARY=C:\cuda\lib\x64\cudnn.lib "C:\incubator-mxnet"

Step 6- เมื่อสร้าง CMake สำเร็จแล้วให้ใช้คำสั่งต่อไปนี้เพื่อคอมไพล์ซอร์สโค้ด MXNet −

msbuild mxnet.sln /p:Configuration=Release;Platform=x64 /maxcpucount

Option 2: Build with Microsoft Visual Studio 2015

ในการสร้างและติดตั้ง MXNet ด้วยตัวคุณเองโดยใช้ Microsoft Visual Studio 2015 คุณต้องมีการอ้างอิงต่อไปนี้

ติดตั้ง / อัปเดต Microsoft Visual Studio 2015 ข้อกำหนดขั้นต่ำในการสร้าง MXnet จากซอร์สคือ Update 3 ของ Microsoft Visual Studio 2015 คุณสามารถใช้ Tools -> Extensions and Updates... | Product Updates เมนูเพื่ออัปเกรด

ถัดไปคุณต้องดาวน์โหลดและติดตั้ง CMake ซึ่งมีอยู่ที่ https://cmake.org/download/. ขอแนะนำให้ใช้CMake v3.12.2 ซึ่งอยู่ที่ https://cmake.org/download/เนื่องจากมีการทดสอบด้วย MXNet

ตอนนี้ดาวน์โหลดและเรียกใช้แพ็คเกจ OpenCV ได้ที่ https://excellmedia.dl.sourceforge.netซึ่งจะแตกไฟล์หลายไฟล์ ขึ้นอยู่กับคุณว่าคุณต้องการวางไว้ในไดเรกทอรีอื่นหรือไม่

ต่อไปเราต้องตั้งค่าตัวแปรสภาพแวดล้อม OpenCV_DIR ชี้ไปที่ OpenCVสร้างไดเร็กทอรีที่เราเพิ่งคลายซิป สำหรับสิ่งนี้ให้เปิดพรอมต์คำสั่งและพิมพ์ชุดOpenCV_DIR=C:\opencv\build\x64\vc14\bin.

ประเด็นสำคัญประการหนึ่งคือหากคุณไม่ได้ติดตั้ง Intel MKL (Math Kernel Library) คุณสามารถติดตั้งได้

แพ็คเกจโอเพ่นซอร์สอื่นที่คุณสามารถใช้ได้คือ OpenBLAS. สำหรับคำแนะนำเพิ่มเติมเราถือว่าคุณกำลังใช้งานอยู่ที่นี่OpenBLAS.

ดังนั้นดาวน์โหลดไฟล์ OpenBLAS แพ็คเกจได้ที่ https://excellmedia.dl.sourceforge.net และคลายซิปไฟล์เปลี่ยนชื่อเป็น OpenBLAS แล้ววางไว้ใต้ C: \ utils

ต่อไปเราต้องตั้งค่าตัวแปรสภาพแวดล้อม OpenBLAS_HOME ให้ชี้ไปที่ไดเร็กทอรี OpenBLAS ที่มีไดเร็กทอรี include และ lib คุณสามารถค้นหาไดเร็กทอรีในC:\Program files (x86)\OpenBLAS\

โปรดทราบว่าหากคุณมี CUDA อยู่แล้วจากนั้นติดตั้ง Microsoft VS2015 คุณต้องติดตั้ง CUDA ใหม่ทันทีเพื่อที่คุณจะได้รับส่วนประกอบชุดเครื่องมือ CUDA สำหรับการรวม Microsoft VS2017

ถัดไปคุณต้องดาวน์โหลดและติดตั้ง cuDNN

ตอนนี้เราต้องตั้งค่าตัวแปรสภาพแวดล้อม CUDACXX ให้ชี้ไปที่ไฟล์ CUDA Compiler(C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.1\bin\nvcc.exe ตัวอย่างเช่น).

ในทำนองเดียวกันเราต้องตั้งค่าตัวแปรสภาพแวดล้อมด้วย CUDNN_ROOT ชี้ไปที่ cuDNN ไดเร็กทอรีที่มี include, lib และ bin ไดเรกทอรี (C:\Downloads\cudnn-9.1-windows7-x64-v7\cuda ตัวอย่างเช่น).

เมื่อคุณติดตั้งการอ้างอิงที่จำเป็นทั้งหมดแล้วให้ทำตามขั้นตอนด้านล่างเพื่อสร้างซอร์สโค้ด MXNet

Step 1- ขั้นแรกให้ดาวน์โหลดซอร์สโค้ด MXNet จาก GitHub−

cd C:\
git clone https://github.com/apache/incubator-mxnet.git --recursive

Step 2- จากนั้นใช้ CMake เพื่อสร้าง Visual Studio ใน. / build.

Step 3- ตอนนี้ใน Visual Studio เราต้องเปิดไฟล์โซลูชัน.slnและรวบรวม คำสั่งเหล่านี้จะสร้างไลบรารีที่เรียกว่าmxnet.dll ใน ./build/Release/ or ./build/Debug โฟลเดอร์

Step 4- เมื่อสร้าง CMake สำเร็จแล้วให้ใช้คำสั่งต่อไปนี้เพื่อคอมไพล์ซอร์สโค้ด MXNet

msbuild mxnet.sln /p:Configuration=Release;Platform=x64 /maxcpucount

หน่วยประมวลผลกลาง (CPU)

ที่นี่เราจะใช้วิธีการต่างๆเช่น Pip, Docker และ Source เพื่อติดตั้ง MXNet เมื่อเราใช้ CPU ในการประมวลผล −

โดยใช้วิธี Pip

หากคุณวางแผนที่จะสร้าง MXNet บน Windows ด้วยซีพียูมีสองตัวเลือกสำหรับการติดตั้ง MXNet โดยใช้แพ็คเกจ Python−

Install with CPUs

ใช้คำสั่งต่อไปนี้เพื่อติดตั้ง MXNet กับ CPU ด้วย Python−

pip install mxnet

Install with Intel CPUs

ตามที่กล่าวไว้ข้างต้น MXNet มีการสนับสนุนทดลองสำหรับ Intel MKL และ MKL-DNN ใช้คำสั่งต่อไปนี้เพื่อติดตั้ง MXNet กับ Intel CPU ด้วย Python−

pip install mxnet-mkl

โดยใช้ Docker

คุณสามารถค้นหาอิมเมจนักเทียบท่าด้วย MXNet ได้ที่ DockerHub, สามารถดูได้ที่ https://hub.docker.com/u/mxnet ให้เราตรวจสอบขั้นตอนด้านล่างเพื่อติดตั้ง MXNet โดยใช้ Docker กับ CPU−

Step 1- ขั้นแรกทำตามคำแนะนำในการติดตั้งนักเทียบท่าซึ่งสามารถอ่านได้ที่ https://docs.docker.com/docker-for-mac/install. เราจำเป็นต้องติดตั้ง Docker บนเครื่องของเรา

Step 2- โดยใช้คำสั่งต่อไปนี้คุณสามารถดึง MXNet docker image−

$ docker pull mxnet/python

ตอนนี้เพื่อดูว่าการดึงภาพนักเทียบท่า mxnet / python สำเร็จหรือไม่เราสามารถแสดงรายการภาพนักเทียบท่าได้ดังนี้ −

$ docker images

สำหรับความเร็วในการอนุมานที่เร็วที่สุดกับ MXNet ขอแนะนำให้ใช้ MXNet ล่าสุดกับ Intel MKL-DNN

ตรวจสอบคำสั่งด้านล่าง

$ docker pull mxnet/python:1.3.0_cpu_mkl
$ docker images

การติดตั้ง MXNet บนคลาวด์และอุปกรณ์

ส่วนนี้เน้นวิธีการติดตั้ง Apache MXNet บนคลาวด์และบนอุปกรณ์ เริ่มต้นด้วยการเรียนรู้เกี่ยวกับการติดตั้ง MXNet บนคลาวด์

การติดตั้ง MXNet บนคลาวด์

คุณยังสามารถรับ Apache MXNet จากผู้ให้บริการคลาวด์หลายรายได้ด้วย Graphical Processing Unit (GPU)สนับสนุน. การสนับสนุนอีกสองประเภทที่คุณสามารถพบได้มีดังต่อไปนี้

  • รองรับ GPU / CPU-hybrid สำหรับกรณีการใช้งานเช่นการอนุมานที่ปรับขนาดได้
  • รองรับ Factorial GPU พร้อม AWS Elastic Inference

ต่อไปนี้เป็นผู้ให้บริการระบบคลาวด์ที่ให้การสนับสนุน GPU กับเครื่องเสมือนอื่นสำหรับ Apache MXNet−

คอนโซลอาลีบาบา

คุณสามารถสร้างไฟล์ NVIDIA GPU Cloud Virtual Machine (VM) สามารถดูได้ที่ https://docs.nvidia.com/ngc ด้วย Alibaba Console และใช้ Apache MXNet

Amazon Web Services

นอกจากนี้ยังให้การสนับสนุน GPU และให้บริการต่อไปนี้สำหรับ Apache MXNet−

Amazon SageMaker

จัดการการฝึกอบรมและการปรับใช้โมเดล Apache MXNet

AWS Deep Learning AMI

มีสภาพแวดล้อม Conda ที่ติดตั้งไว้ล่วงหน้าสำหรับทั้ง Python 2 และ Python 3 พร้อม Apache MXNet, CUDA, cuDNN, MKL-DNN และ AWS Elastic Inference

การฝึกอบรมแบบไดนามิกบน AWS

มีการฝึกอบรมสำหรับการตั้งค่า EC2 ด้วยตนเองแบบทดลองและการตั้งค่า CloudFormation แบบกึ่งอัตโนมัติ

คุณสามารถใช้ได้ NVIDIA VM สามารถดูได้ที่ https://aws.amazon.com ด้วยบริการเว็บของ Amazon

Google Cloud Platform

Google ยังให้บริการ NVIDIA GPU cloud image ซึ่งมีอยู่ที่ https://console.cloud.google.com เพื่อทำงานกับ Apache MXNet

Microsoft Azure

นอกจากนี้ Microsoft Azure Marketplace ยังให้บริการ NVIDIA GPU cloud image สามารถดูได้ที่ https://azuremarketplace.microsoft.com เพื่อทำงานกับ Apache MXNet

Oracle Cloud

Oracle ยังให้บริการ NVIDIA GPU cloud image สามารถดูได้ที่ https://docs.cloud.oracle.com เพื่อทำงานกับ Apache MXNet

หน่วยประมวลผลกลาง (CPU)

Apache MXNet ทำงานบนอินสแตนซ์ CPU เท่านั้นของผู้ให้บริการคลาวด์ทุกราย มีหลายวิธีในการติดตั้งเช่น

  • คำแนะนำในการติดตั้ง Python pip

  • คำแนะนำนักเทียบท่า

  • ตัวเลือกที่ติดตั้งไว้ล่วงหน้าเช่น Amazon Web Services ซึ่งให้ AWS Deep Learning AMI (มีสภาพแวดล้อม Conda ที่ติดตั้งไว้ล่วงหน้าสำหรับทั้ง Python 2 และ Python 3 พร้อม MXNet และ MKL-DNN)

การติดตั้ง MXNet บนอุปกรณ์

ให้เราเรียนรู้วิธีการติดตั้ง MXNet บนอุปกรณ์

ราสเบอร์รี่ Pi

คุณยังสามารถเรียกใช้ Apache MXNet บนอุปกรณ์ Raspberry Pi 3B ได้เนื่องจาก MXNet ยังรองรับระบบปฏิบัติการที่ใช้ Respbian ARM เพื่อให้ใช้งาน MXNet ได้อย่างราบรื่นบน Raspberry Pi3 ขอแนะนำให้มีอุปกรณ์ที่มี RAM มากกว่า 1 GB และการ์ด SD ที่มีพื้นที่ว่างอย่างน้อย 4GB

ต่อไปนี้เป็นวิธีที่คุณสามารถสร้าง MXNet สำหรับ Raspberry Pi และติดตั้งการผูก Python สำหรับไลบรารีได้เช่นกัน

ติดตั้งด่วน

ล้อ Python ที่สร้างไว้ล่วงหน้าสามารถใช้กับ Raspberry Pi 3B พร้อม Stretch เพื่อการติดตั้งที่รวดเร็ว ปัญหาที่สำคัญอย่างหนึ่งของวิธีนี้คือเราต้องติดตั้งการอ้างอิงหลายอย่างเพื่อให้ Apache MXNet ทำงานได้

การติดตั้ง Docker

คุณสามารถทำตามคำแนะนำในการติดตั้งนักเทียบท่าซึ่งมีอยู่ที่ https://docs.docker.com/engine/install/ubuntu/เพื่อติดตั้ง Docker บนเครื่องของคุณ เพื่อจุดประสงค์นี้เราสามารถติดตั้งและใช้งาน Community Edition (CE) ได้ด้วย

Native Build (จากแหล่งที่มา)

ในการติดตั้ง MXNet จากแหล่งที่มาเราต้องทำตามสองขั้นตอนต่อไปนี้

ขั้นตอนที่ 1

Build the shared library from the Apache MXNet C++ source code

ในการสร้างไลบรารีที่ใช้ร่วมกันบน Raspberry เวอร์ชัน Wheezy และใหม่กว่าเราจำเป็นต้องมีการอ้างอิงต่อไปนี้:

  • Git- จำเป็นต้องดึงโค้ดจาก GitHub

  • Libblas- จำเป็นสำหรับการดำเนินการเกี่ยวกับพีชคณิตเชิงเส้น

  • Libopencv- จำเป็นสำหรับการดำเนินการที่เกี่ยวข้องกับการมองเห็นด้วยคอมพิวเตอร์ อย่างไรก็ตามเป็นทางเลือกหากคุณต้องการประหยัด RAM และพื้นที่ดิสก์

  • C++ Compiler- จำเป็นต้องรวบรวมและสร้างซอร์สโค้ด MXNet ต่อไปนี้เป็นคอมไพเลอร์ที่รองรับซึ่งรองรับ C ++ 11−

    • G ++ (4.8 หรือใหม่กว่า)

    • Clang(3.9-6)

ใช้คำสั่งต่อไปนี้เพื่อติดตั้งการอ้างอิงข้างต้น

sudo apt-get update
sudo apt-get -y install git cmake ninja-build build-essential g++-4.9 c++-4.9 liblapack*
libblas* libopencv*
libopenblas* python3-dev python-dev virtualenv

ต่อไปเราต้องโคลนที่เก็บซอร์สโค้ด MXNet สำหรับสิ่งนี้ให้ใช้คำสั่ง git ต่อไปนี้ในโฮมไดเร็กทอรีของคุณ

git clone https://github.com/apache/incubator-mxnet.git --recursive

cd incubator-mxnet

ตอนนี้ด้วยความช่วยเหลือของคำสั่งต่อไปนี้สร้างไลบรารีที่ใช้ร่วมกัน:

mkdir -p build && cd build
cmake \
-DUSE_SSE=OFF \
-DUSE_CUDA=OFF \
-DUSE_OPENCV=ON \
-DUSE_OPENMP=ON \
-DUSE_MKL_IF_AVAILABLE=OFF \
-DUSE_SIGNAL_HANDLER=ON \

-DCMAKE_BUILD_TYPE=Release \
-GNinja ..
ninja -j$(nproc)

เมื่อคุณดำเนินการตามคำสั่งข้างต้นมันจะเริ่มกระบวนการสร้างซึ่งจะใช้เวลาสองสามชั่วโมงจึงจะเสร็จสิ้น คุณจะได้รับไฟล์ชื่อlibmxnet.so ในไดเร็กทอรี build

ขั้นตอนที่ 2

Install the supported language-specific packages for Apache MXNet

ในขั้นตอนนี้เราจะติดตั้งการผูก MXNet Pythin ในการทำเช่นนั้นเราต้องรันคำสั่งต่อไปนี้ในไดเรกทอรี MXNet−

cd python
pip install --upgrade pip
pip install -e .

หรือด้วยคำสั่งต่อไปนี้คุณยังสามารถสร้างไฟล์ whl package ติดตั้งได้ด้วย pip-

ci/docker/runtime_functions.sh build_wheel python/ $(realpath build)

อุปกรณ์ NVIDIA Jetson

คุณยังสามารถเรียกใช้ Apache MXNet บนอุปกรณ์ NVIDIA Jetson เช่น TX2 หรือ Nanoเนื่องจาก MXNet ยังรองรับระบบปฏิบัติการที่ใช้ Ubuntu Arch64 เพื่อให้ทำงาน MXNet ได้อย่างราบรื่นบนอุปกรณ์ NVIDIA Jetson จำเป็นต้องติดตั้ง CUDA บนอุปกรณ์ Jetson ของคุณ

ต่อไปนี้เป็นวิธีที่คุณสามารถสร้าง MXNet สำหรับอุปกรณ์ NVIDIA Jetson:

  • โดยใช้ pip wheel ของ Jetson MXNet สำหรับการพัฒนา Python

  • จากแหล่งที่มา

แต่ก่อนที่จะสร้าง MXNet จากวิธีการใด ๆ ข้างต้นคุณต้องติดตั้งการอ้างอิงต่อไปนี้บนอุปกรณ์ Jetson ของคุณ

การพึ่งพา Python

ในการใช้ Python API เราจำเป็นต้องมีการอ้างอิงต่อไปนี้

sudo apt update
sudo apt -y install \
   build-essential \
   git \
   graphviz \
   libatlas-base-dev \
   libopencv-dev \
   python-pip
sudo pip install --upgrade \
   pip \
   setuptools
sudo pip install \
   graphviz==0.8.4 \
   jupyter \
   numpy==1.15.2

โคลนที่เก็บซอร์สโค้ด MXNet

โดยใช้คำสั่ง git ต่อไปนี้ในโฮมไดเร็กทอรีของคุณให้โคลนที่เก็บซอร์สโค้ด MXNet

git clone --recursive https://github.com/apache/incubator-mxnet.git mxnet

ตั้งค่าตัวแปรสภาพแวดล้อม

เพิ่มสิ่งต่อไปนี้ในไฟล์ .profile ไฟล์ในโฮมไดเร็กทอรีของคุณ

export PATH=/usr/local/cuda/bin:$PATH
export MXNET_HOME=$HOME/mxnet/
export PYTHONPATH=$MXNET_HOME/python:$PYTHONPATH

ตอนนี้ใช้การเปลี่ยนแปลงทันทีด้วยคำสั่งต่อไปนี้

source .profile

กำหนดค่า CUDA

ก่อนกำหนดค่า CUDA ด้วย nvcc คุณต้องตรวจสอบว่า CUDA รุ่นใดกำลังทำงานอยู่ −

nvcc --version

สมมติว่าหากมีการติดตั้ง CUDA มากกว่าหนึ่งเวอร์ชันบนอุปกรณ์หรือคอมพิวเตอร์ของคุณและคุณต้องการเปลี่ยนเวอร์ชัน CUDA ให้ใช้สิ่งต่อไปนี้และแทนที่ลิงก์สัญลักษณ์ไปยังเวอร์ชันที่คุณต้องการ

sudo rm /usr/local/cuda
sudo ln -s /usr/local/cuda-10.0 /usr/local/cuda

คำสั่งดังกล่าวจะเปลี่ยนเป็น CUDA 10.0 ซึ่งติดตั้งไว้ล่วงหน้าบนอุปกรณ์ NVIDIA Jetson Nano.

เมื่อคุณทำตามข้อกำหนดเบื้องต้นข้างต้นเสร็จแล้วคุณสามารถติดตั้ง MXNet บนอุปกรณ์ NVIDIA Jetson ได้แล้ว ดังนั้นให้เราเข้าใจวิธีการต่างๆที่คุณสามารถติดตั้ง MXNet− ได้

By using a Jetson MXNet pip wheel for Python development- หากคุณต้องการใช้วงล้อ Python ที่เตรียมไว้ให้ดาวน์โหลดสิ่งต่อไปนี้ลงใน Jetson ของคุณและเรียกใช้

  • MXNet 1.4.0 (สำหรับ Python 3) ได้ที่ https://docs.docker.com

  • MXNet 1.4.0 (สำหรับ Python 2) ได้ที่ https://docs.docker.com

Native Build (จากแหล่งที่มา)

ในการติดตั้ง MXNet จากแหล่งที่มาเราต้องทำตามสองขั้นตอนต่อไปนี้

ขั้นตอนที่ 1

Build the shared library from the Apache MXNet C++ source code

ในการสร้างไลบรารีที่ใช้ร่วมกันจากซอร์สโค้ด Apache MXNet C ++ คุณสามารถใช้วิธี Docker หรือทำด้วยตนเอง

วิธีการเทียบท่า

ในวิธีนี้คุณต้องติดตั้ง Docker ก่อนและสามารถเรียกใช้งานได้โดยไม่ต้องใช้ sudo (ซึ่งอธิบายไว้ในขั้นตอนก่อนหน้านี้ด้วย) เมื่อเสร็จแล้วให้รันสิ่งต่อไปนี้เพื่อดำเนินการข้ามคอมไพล์ผ่าน Docker−

$MXNET_HOME/ci/build.py -p jetson

คู่มือ

ในวิธีนี้คุณต้องแก้ไขไฟล์ Makefile (ด้วยคำสั่งด้านล่าง) เพื่อติดตั้ง MXNet พร้อมการผูก CUDA เพื่อใช้ประโยชน์จากหน่วยประมวลผลกราฟิก (GPU) บนอุปกรณ์ NVIDIA Jetson:

cp $MXNET_HOME/make/crosscompile.jetson.mk config.mk

หลังจากแก้ไข Makefile คุณต้องแก้ไขไฟล์ config.mk เพื่อทำการเปลี่ยนแปลงเพิ่มเติมสำหรับอุปกรณ์ NVIDIA Jetson

สำหรับสิ่งนี้ให้อัปเดตการตั้งค่าต่อไปนี้

  • อัปเดตเส้นทาง CUDA: USE_CUDA_PATH = / usr / local / cuda

  • เพิ่ม -gencode arch = compute-63, code = sm_62 ในการตั้งค่า CUDA_ARCH

  • อัปเดตการตั้งค่า NVCC: NVCCFLAGS: = -m64

  • เปิด OpenCV: USE_OPENCV = 1

ตอนนี้เพื่อให้แน่ใจว่า MXNet สร้างด้วยการเร่งความแม่นยำต่ำระดับฮาร์ดแวร์ของ Pascal เราจำเป็นต้องแก้ไข Mshadow Makefile ดังต่อไปนี้ −

MSHADOW_CFLAGS += -DMSHADOW_USE_PASCAL=1

สุดท้ายด้วยความช่วยเหลือของคำสั่งต่อไปนี้คุณสามารถสร้างไลบรารี Apache MXNet ที่สมบูรณ์ −

cd $MXNET_HOME
make -j $(nproc)

เมื่อคุณดำเนินการตามคำสั่งข้างต้นมันจะเริ่มกระบวนการสร้างซึ่งจะใช้เวลาสองสามชั่วโมงจึงจะเสร็จสิ้น คุณจะได้รับไฟล์ชื่อlibmxnet.so ใน mxnet/lib directory.

ขั้นตอนที่ 2

Install the Apache MXNet Python Bindings

ในขั้นตอนนี้เราจะติดตั้งการผูก MXNet Python ในการทำเช่นนั้นเราต้องรันคำสั่งต่อไปนี้ในไดเรกทอรี MXNet−

cd $MXNET_HOME/python
sudo pip install -e .

เมื่อทำตามขั้นตอนข้างต้นเสร็จแล้วคุณก็พร้อมที่จะเรียกใช้ MXNet บนอุปกรณ์ NVIDIA Jetson TX2 หรือ Nano สามารถตรวจสอบได้ด้วยคำสั่งต่อไปนี้

import mxnet
mxnet.__version__

มันจะส่งคืนหมายเลขเวอร์ชันหากทุกอย่างทำงานได้อย่างถูกต้อง