- 1 1. Giới thiệu
- 2 2. Cách Kiểm Tra Phiên Bản CUDA Trên Ubuntu
- 3 3. Cách Kiểm Tra Phiên Bản cuDNN
- 4 4. Cách Xử Lý Nhiều Phiên Bản CUDA Đã Cài Đặt
- 5 5. Câu Hỏi Thường Gặp (FAQ)
- 6 6. Tổng Kết
1. Giới thiệu
CUDA (Compute Unified Device Architecture) là một nền tảng tính toán song song do NVIDIA phát triển, sử dụng GPU. Nó được sử dụng rộng rãi cho học máy, học sâu, render 3D và nhiều khối lượng công việc tính toán khác.
Khi sử dụng CUDA trong môi trường Ubuntu, việc kiểm tra phiên bản CUDA là quan trọng vì các lý do sau:
Tương thích Driver
CUDA chỉ hỗ trợ một số phiên bản driver NVIDIA nhất định, và sự không tương thích có thể ngăn CUDA hoạt động đúng.
Tương thích Thư viện
Các thư viện như TensorFlow và PyTorch yêu cầu các phiên bản cụ thể của CUDA và cuDNN, vì vậy cần xác minh rằng các phiên bản đúng đã được cài đặt.
Tránh xung đột môi trường
Nếu có nhiều phiên bản CUDA được cài đặt trên hệ thống, bạn phải biết phiên bản nào đang hoạt động và chuyển đổi giữa chúng khi cần.
Hướng dẫn này giải thích rõ ràng cách kiểm tra phiên bản CUDA trên Ubuntu.
2. Cách Kiểm Tra Phiên Bản CUDA Trên Ubuntu
Trên Ubuntu, bạn có thể kiểm tra phiên bản CUDA bằng các phương pháp sau.
Phương pháp 1: Kiểm tra bằng nvidia-smi (Phương pháp dễ nhất)
Driver NVIDIA bao gồm một công cụ gọi là nvidia-smi (Giao diện Quản lý Hệ thống NVIDIA) hiển thị thông tin GPU.
Lệnh
nvidia-smi
Ví dụ Kết quả
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 530.41.03 Driver Version: 530.41.03 CUDA Version: 12.1 |
+-----------------------------------------------------------------------------+
Điểm chính
- Dòng
CUDA Version: 12.1cho thấy phiên bản CUDA tối đa mà driver hỗ trợ . - Điều này có thể khác với phiên bản CUDA Toolkit thực tế đã cài đặt, vì vậy cũng nên kiểm tra các phương pháp tiếp theo.
Phương pháp 2: Kiểm tra bằng nvcc -V (Dành cho nhà phát triển)
Nếu CUDA được cài đặt đúng, bạn có thể kiểm tra phiên bản của nvcc, trình biên dịch CUDA.
Lệnh
nvcc -V
Ví dụ Kết quả
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2023 NVIDIA Corporation
Built on Sun_Jul_30_19:09:40_PDT_2023
Cuda compilation tools, release 12.1, V12.1.105
Điểm chính
release 12.1, V12.1.105→ Điều này cho biết phiên bản CUDA Toolkit đã cài đặt .- Nó có thể không khớp với phiên bản được hiển thị bởi
nvidia-smi.
Phương pháp 3: Kiểm tra version.txt (Kiểm tra thủ công)
Nếu CUDA được cài đặt trong thư mục /usr/local/cuda, tệp version.txt chứa thông tin phiên bản.
Lệnh
cat /usr/local/cuda/version.txt
Ví dụ Kết quả
CUDA Version 12.1.105
Điểm chính
- Hữu ích khi
nvcc -Vkhông khả dụng. - Bạn phải đảm bảo rằng
/usr/local/cudađược liên kết tượng trưng đúng .
3. Cách Kiểm Tra Phiên Bản cuDNN
cuDNN (CUDA Deep Neural Network) là một thư viện học sâu được sử dụng cùng với CUDA.
Việc kiểm tra phiên bản cuDNN cùng với CUDA là quan trọng.
Phương pháp 1: Kiểm tra cudnn_version.h
Phiên bản cuDNN được lưu trong tệp header cudnn_version.h.
Lệnh
cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
Ví dụ Kết quả
#define CUDNN_MAJOR 8
#define CUDNN_MINOR 9
#define CUDNN_PATCHLEVEL 1
Điểm chính
- Chỉ ra rằng
cuDNN 8.9.1đã được cài đặt. - Lệnh
grepgiúp trích xuất thông tin phiên bản một cách dễ dàng. - cuDNN và CUDA phải tương thích; hãy xác minh cặp đúng.
Phương pháp 2: Kiểm tra bằng dpkg (Chỉ dành cho Linux dựa trên Debian)
Trên các hệ thống dựa trên Debian như Ubuntu, bạn có thể kiểm tra các gói cuDNN đã cài đặt bằng dpkg.
Lệnh
dpkg -l | grep libcudnn
Ví dụ Kết quả
ii libcudnn8 8.9.1-1+cuda12.1 amd64 NVIDIA cuDNN Library
Điểm chính
- Phiên bản cuDNN (8.9.1) được hiển thị trong tên gói.
cuda12.1chỉ ra phiên bản CUDA tương thích .
Sử dụng các phương pháp này để đảm bảo môi trường CUDA của bạn được cấu hình đúng.

4. Cách Xử Lý Nhiều Phiên Bản CUDA Đã Cài Đặt
Trong Ubuntu, có thể cài đặt nhiều phiên bản CUDA. Tuy nhiên, điều này có thể gây nhầm lẫn về phiên bản đang hoạt động.
Trong các trường hợp như vậy, bạn phải chuyển sang phiên bản đúng một cách thủ công.
Phương Pháp 1: Chuyển Phiên Bản Sử Dụng update-alternatives
Ubuntu cho phép bạn chuyển đổi giữa các phiên bản CUDA bằng công cụ update-alternatives.
Kiểm Tra Cài Đặt Hiện Tại
update-alternatives --query cuda
Chuyển Đổi Phiên Bản
sudo update-alternatives --config cuda
Kết Quả Ví Dụ
There are 3 choices for the alternative cuda (providing /usr/local/cuda).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/local/cuda-11.8 100 auto mode
1 /usr/local/cuda-10.2 50 manual mode
2 /usr/local/cuda-11.8 100 manual mode
3 /usr/local/cuda-12.1 110 manual mode
Press <enter> to keep the current choice[*], or type selection number:
Các Điểm Chính
- Chạy
update-alternatives --config cudasẽ hiển thị tất cả các phiên bản CUDA có sẵn. - Bạn có thể chọn phiên bản muốn sử dụng bằng cách nhập số tương ứng.
auto modevàmanual modeđều có sẵn; chọnmanual modeđể chuyển đổi thủ công.
Phương Pháp 2: Cấu Hình Liên Kết Symbolic Thủ Công
Bạn cũng có thể kích hoạt một phiên bản CUDA cụ thể bằng cách điều chỉnh các liên kết symbolic một cách thủ công.
Kiểm Tra Liên Kết Symbolic Hiện Tại
ls -l /usr/local/cuda
Kết Quả Ví Dụ
lrwxrwxrwx 1 root root 20 Feb 1 12:34 /usr/local/cuda -> /usr/local/cuda-11.8
Thay Đổi Phiên Bản CUDA
sudo rm /usr/local/cuda
sudo ln -s /usr/local/cuda-12.1 /usr/local/cuda
Xác Nhận
ls -l /usr/local/cuda
Các Điểm Chính
/usr/local/cudađược sử dụng làm đường dẫn CUDA mặc định, vì vậy việc cập nhật liên kết này sẽ chuyển phiên bản đang hoạt động.- Sử dụng
ln -sgiúp việc chuyển đổi giữa các phiên bản trở nên dễ dàng.
Bằng cách sử dụng các phương pháp này, bạn có thể quản lý nhiều cài đặt CUDA và đảm bảo phiên bản đúng đang hoạt động.
5. Câu Hỏi Thường Gặp (FAQ)
Phần này tóm tắt các vấn đề thường gặp liên quan đến việc kiểm tra phiên bản CUDA. Sử dụng nó để khắc phục sự cố.
Câu Hỏi 1: nvcc -V không được tìm thấy!
Nếu lệnh nvcc không tồn tại, có thể đường dẫn CUDA chưa được thiết lập.
Giải Pháp 1: Kiểm Tra CUDA Đã Được Cài Đặt Chưa
ls /usr/local/cuda/
Giải Pháp 2: Thêm nvcc vào PATH
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
Sau khi thực hiện, chạy lại nvcc -V để xác nhận nó hoạt động.
Câu Hỏi 2: Tại sao phiên bản CUDA hiển thị bởi nvidia-smi lại khác?
Phiên bản CUDA hiển thị bởi nvidia-smi đại diện cho phiên bản CUDA tối đa mà driver NVIDIA hỗ trợ.
Kiểm Tra Ví Dụ:
nvidia-smi
Kết Quả Ví Dụ:
CUDA Version: 12.1
Tuy nhiên, điều này không cho biết phiên bản CUDA Toolkit đã cài đặt. Hãy sử dụng nvcc -V hoặc version.txt để xác minh phiên bản thực tế đã cài đặt.
Câu Hỏi 3: Làm thế nào để kiểm tra tính tương thích giữa CUDA và cuDNN?
Cách chính xác nhất là tham khảo ma trận hỗ trợ chính thức của NVIDIA.
Trang Chính Thức:
Bạn cũng nên xác nhận tính tương thích bằng cách kiểm tra các phiên bản đã cài đặt:
Kiểm Tra Phiên Bản CUDA
nvcc -V
Kiểm Tra Phiên Bản cuDNN
cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
Bằng cách quản lý các phiên bản này một cách hợp lý, bạn có thể tránh các vấn đề liên quan đến CUDA và cuDNN.
6. Tổng Kết
Bài viết này giải thích cách kiểm tra phiên bản CUDA trong môi trường Ubuntu.
Hãy xem lại các điểm chính.
Cách Kiểm Tra Phiên Bản CUDA
| Method | Command | Description |
|---|---|---|
nvidia-smi | nvidia-smi | Shows the CUDA version supported by the driver |
nvcc -V | nvcc -V | Shows the installed CUDA Toolkit version |
version.txt | cat /usr/local/cuda/version.txt | Manually check the installed CUDA version |
Cách Kiểm Tra cuDNN
| Method | Command | Description |
|---|---|---|
cudnn_version.h | cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2 | Check version from the header file |
dpkg | dpkg -l | grep libcudnn | Check installed cuDNN packages |
Cách Chuyển Đổi Phiên Bản CUDA
| Method | Command | Description |
|---|---|---|
update-alternatives | sudo update-alternatives --config cuda | Switch between multiple CUDA versions |
| Symbolic Link | sudo ln -s /usr/local/cuda-XX.X /usr/local/cuda | Manually switch CUDA versions |
Những Điểm Chính
- Luôn xác minh phiên bản CUDA của bạn trước khi phát triển
- Kiểm tra tính tương thích giữa CUDA và cuDNN
- Hiểu cách chuyển đổi phiên bản khi có nhiều cài đặt CUDA tồn tại
Bằng cách quản lý môi trường một cách đúng đắn, bạn có thể tối đa hoá hiệu năng và độ ổn định của CUDA.
Chúng tôi hy vọng hướng dẫn này giúp bạn xác minh phiên bản CUDA một cách hiệu quả trên Ubuntu.


