Tăng tốc Deep Learning bằng CUDA 10.1

Trong bài Huấn luyện phân loại nam nữ bằng Tensorflow bạn đã biết về Deep Learning. Bài viết này hướng dẫn cách sử dụng GPU để tăng tốc training Deep Learning trên Windows.

Để sử dụng được GPU các bạn cần cài đặt CUDA cuDNN để Tensorflow có thể sử dụng GPU. Bài viết này sử dụng CUDA 10.1 phù hợp với nhiều source code & GPU hiện nay.

CUDA dùng để tính toán song song, còn cuDNN là thư viện hỗ trợ Deep Learning gọi lệnh CUDA. Do đó cần cài CUDA trước rồi cuDNN sau.

Chuẩn bị

Để biết GPU của bạn có thể chạy được CUDA hay không các bạn nên sử dụng GPUz để kiểm tra GPU có hỗ trợ CUDA hay không.

Hoặc sử dụng command nvidia-smi như hình dưới để xem thông số card

Lưu ý CUDA là công nghệ của NVIDIA, do đó các card AMD/ATI sẽ không chạy được CUDA

Bước 1: cài đặt CUDA 10.1

Đầu tiên download CUDA 10.1 tại trang web của NVIDIA. Các bạn chọn giống như bên dưới để download bản CUDA cho Windows.

Sau khi download tiến hành cài đặt như bình thường, sau khi cài xong thì restart máy tính trước khi qua bước tiếp theo.

Lưu ý: trong quá trình cài đặt có thể xảy ra lỗi tương thích driver nếu bạn đã cài driver NVIDA mới hơn 418. Khi đó bạn cần phải gỡ driver NVIDIA trước khi cài CUDA

Bước 2: download cuDNN

Để download cuDNN bạn phải đăng ký tài khoản developer, sau khi đăng ký xong bạn mới download được cuDNN.

Với CUDA 11 các bạn nên download cuDNN v7.6.5 (November 5th, 2019), for CUDA 10.1. Các bạn chọn cuDNN Library for Windows 10 Không nên chọn phiên bản mới hơn 7.6.5.

Sau khi download cuDNN xong, các bạn giải nén rồi copy tất cả file vào folder C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1. Sau đó restart máy vậy là xong.

Test xem CUDA và cuDNN có cài đặt thành công không

Mở cmd lên gõ nvcc –version để kiểm tra phiên bản CUDA. Như hình dưới là CUDA 10.1

where cudnn* để kiểm tra, đúng đường dẫn như bên dưới là ok

Khi Tensorflow load GPU thành công sẽ có output tương tự bên dưới:

Tạo biến môi trường (Environment Variables)

Thêm 2 biến môi trường sau:

CUDA_TOOLKIT_ROOT_DIR: C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1
CUDA_SDK_ROOT_DIR: C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1

Tích hợp CUDA vào Visual Studio

Bước này là phụ thêm nếu bạn muốn make solution bằng Visual Studio có sử dụng CUDA. Ví dụ như make solution OpenCV,…

Copy 4 file từ folder C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\extras\visual_studio_integration\MSBuildExtensions sang folder C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\BuildCustomizations.

Link cần thiết

https://www.tensorflow.org/install/source#gpu: tìm phiên bản CUDA phù hợp với Tensorflow mà bạn đang sử dụng.

2 thoughts on “Tăng tốc Deep Learning bằng CUDA 10.1

  1. Chào bạn vohungvi,

    Mình có con GPU Tesla K80 cài trên Window Server 2016. Mình có 1 file python dùng face-recognition của Davis King (https://pypi.org/project/face-recognition/) và OpenCV để nhận diện mặt người qua IP camera.

    Mình cài CUDA Toolkit 10.1 để tính toán song song.

    CuDNN 7.6.5 để hỗ trợ Deep Learning. Mình không biết là có cần phải cài CuDNN không nữa.

    Bạn có thể hướng dẫn mình built như thế nào để code chạy được GPU không? Mình đã build nhưng đều không thành công

    Email của mình là trankimtrung78@gmail.com.

    Rất mong nhận được phản hồi của bạn.

Leave a Reply