- vừa được xem lúc

[NVIDIA Tools] Bài 2: Cài đặt Nsight system - Nsight compute

0 0 12

Người đăng: NgoHuuGiaHuy

Theo Viblo Asia

Ở bài viết này mình sẽ hướng dẫn các bạn cách cài đặt Nsight system và Nsight compute và nó sẽ dễ 1 cách bất ngờ nên yên tâm nha

Xin lưu ý là những thiết bị không có GPU vẫn có thể dùng được thông qua google colab

Cài đặt Nsight system

Bấm vào đây để tải Nsight system

Nếu các bạn dùng Linux thì hãy tải cái Host .deb image.png

Sau khi tải xong có thể check bằng lệnh: $nsys -v

Cài đặt Nsight compute

Nsight compute đã có sẵn khi các bạn cài đặt cuda-toolkit rồi nên không cần phải tải lại, nhưng nếu các bạn muốn update lên phiên bản mới nhất thì có thể tải ở đây

image.png

Sau khi tải xong có thể check bằng lệnh: $ncu -v

image.png

Các lỗi thường gặp

Mặc dù đã tải thành công và check bằng các lệnh nsys -v hoặc ncu -v thì vẫn sẽ có 1 số lỗi nên mình sẽ hướng dẫn các bạn cách khắc phục

#include <stdio.h> __global__ void kernel()
{ printf("hello world");
} int main()
{ kernel<<<1,1>>>(); cudaDeviceSynchronize(); return 0;
}

Đây là 1 đoạn code đơn giản để chúng ta thử nghiệm 2 công cụ vừa tải

Nsight system

các bạn chạy đoạn code này như bình thường để có được các file .exe ( windows) hoặc ./a.out (Ubuntu ) bằng dòng lệnh:

$nvcc <tên file>.cu

$ ./a.out

sau đó hãy gõ dòng lệnh này ( mình sẽ giải thích chi tiết cách hoạt động của dòng lệnh này ở các bài sau )

$nsys profile ./a.out

image.png

Nó sẽ tạo ra file .nsys-rep và chúng ta sẽ mở Nsight system lên và open file đó

image.png

các bạn bấm vào cái warmings và sẽ thấy có 1 cái cảnh cáo Daemon

image.png

thì hãy chạy dòng lệnh này để fix. XIN LƯU Ý LÀ MỖI MÁY TÍNH SẼ CÓ 1 LEVEL KHÁC NHAU NÊN CHÚ Ý NHA.

$cat /proc/sys/kernel/perf_event_paranoid

$sudo sh -c 'echo 1 >/proc/sys/kernel/perf_event_paranoid' ( THAY ĐỔI SỐ 1 THÀNH SỐ PHÙ HỢP Ở MÁY TÍNH BẠN )

$sudo sh -c 'echo kernel.perf_event_paranoid=2 > /etc/sysctl.d/local.conf'

chạy lại lệnh này để check:

$cat /proc/sys/kernel/perf_event_paranoid

Nsight compute

thay vì chạy dòng lệnh $nsys profile ./a.out thì hãy chạy

$ncu --set full -o test ./a.out

image.png

Nếu nó tạo ra được file .ncu-rep thì là thành công NHƯNG nếu các bạn gặp vấn đề là nsight compute permission deny thì hãy chạy các dòng lệnh này:

$sudo nano /etc/modprobe.d/nvidia.conf $options nvidia NVreg_RestrictProfilingToAdminUsers=0

sau đó hãy ctrl + o rồi ctrl + x ( save and exit )

Sử dụng google colab

Đừng quên chỉnh qua bên GPU thay vì dùng ở CPU nha

image.png

Như các bạn có thể thấy thì chúng ta chỉ cần tải nsight system thôi.

!wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/nsight-systems-2023.2.3_2023.2.3.1001-1_amd64.deb

!apt update

!apt install ./nsight-systems-2023.2.3_2023.2.3.1001-1_amd64.deb

!apt --fix-broken install

và đây là kết quả sau khi xong image.png

Bình luận

Bài viết tương tự

- vừa được xem lúc

GPU programming với Golang

GPU programming với Golang. Ở bài trước mình có giới thiệu về kĩ thuật lập trình GPU với OpenCL bằng C/C++.

0 0 27

- vừa được xem lúc

Allocating Memory on HPC ( Slurm Scripts)

Bài viết này giải thích cách yêu cầu bộ nhớ trong các Slurm Scripts và cách xử lý các lỗi thường gặp liên quan đến bộ nhớ CPU và GPU. Lưu ý rằng "memory" luôn đề cập đến RAM .

0 0 27

- vừa được xem lúc

[Lập trình song song] Bài 1: Giới thiệu về CPU-GPU

Trước khi tìm hiểu thế nào là lập trình song song cũng như cách code thì mình phải biết 1 chút về lịch sử hình thành nên ở bài 1 mình sẽ giới thiệu sơ lược những điều bạn nên biết ở lĩnh vực này. Chắc

0 0 28

- vừa được xem lúc

[Lập trình song song] Bài 2: Cài đặt môi trường code CudaC

Trước khi code thì chúng ta phải setup môi trường để code thì ở bài này mình sẽ hướng dẫn các bạn cách setup và đối với những ai sở hữu máy tính mà không có GPU thì cũng đừng có lo vì chúng ta sẽ code

0 0 18

- vừa được xem lúc

[Lập trình song song] Bài bonus 1: Cách thức hoạt động của máy tính

Ở bài này mình sẽ nói qua về cách máy tính hoạt động trong việc lấy và xử lí data qua ví dụ cực kì trực quan và dễ hiểu . Và xin lưu ý là ví dụ này sẽ được nhắc lại khá nhiều trong các bài học về lập

0 0 19

- vừa được xem lúc

[Lập trình song song] Bài bonus 2: Các thuật ngữ trong lập trình song song

Ở bài này mình sẽ giải thích các thuật ngữ thường hay được đề cập tới trong lập trình song song. .

0 0 23