Colab에서 CUDA 사용하기

차례대로 실행

!apt-get --purge remove cuda nvidia* libnvidia-*
!dpkg -l | grep cuda- | awk '{print $2}' | xargs -n1 dpkg --purge
!apt-get remove cuda-*
!apt autoremove
!apt-get update
!wget https://developer.nvidia.com/compute/cuda/9.2/Prod/local_installers/cuda-repo-ubuntu1604-9-2-local_9.2.88-1_amd64 -O cuda-repo-ubuntu1604-9-2-local_9.2.88-1_amd64.deb
!dpkg -i cuda-repo-ubuntu1604-9-2-local_9.2.88-1_amd64.deb
!apt-key add /var/cuda-repo-9-2-local/7fa2af80.pub
!apt-get update
!apt-get install cuda-9.2
!pip install git+git://github.com/andreinechaev/nvcc4jupyter.git
%load_ext nvcc_plugin

완료

더보기

!apt-get --purge remove cuda nvidia* libnvidia-*
!dpkg -l | grep cuda- | awk '{print $2}' | xargs -n1 dpkg --purge
!apt-get remove cuda-*
!apt autoremove
!apt-get update

 

 

!wget https://developer.nvidia.com/compute/cuda/9.2/Prod/local_installers/cuda-repo-ubuntu1604-9-2-local_9.2.88-1_amd64 -O cuda-repo-ubuntu1604-9-2-local_9.2.88-1_amd64.deb
!dpkg -i cuda-repo-ubuntu1604-9-2-local_9.2.88-1_amd64.deb
!apt-key add /var/cuda-repo-9-2-local/7fa2af80.pub
!apt-get update
!apt-get install cuda-9.2

 

 

!pip install git+git://github.com/andreinechaev/nvcc4jupyter.git

 

 

%load_ext nvcc_plugin

 

출처: https://harshityadav95.medium.com/how-to-run-cuda-c-or-c-on-google-colab-or-azure-notebook-ea75a23a5962

 

 


Hello_CUDA!

위와 같이 Colab에서 CUDA 프로그래밍을 위한 설정이 끝났습니다.

이제 아래와 같이 작성을 해주면

"Hello CUDA!" 를 볼 수 있습니다.

  • __global__ : Host(CPU)에서 GPU를 이용하기 위해 호출하는 code -> Kernel
  • __host__ : Host(CPU)에서 호출 가능한 code
  • __device__ : Device(GPU)에서 호출 가능한 code

 

※ Kernel (커널) : Device thread들의 동작을 정의하는 C function

※ <<<>>> : Host가 Device code를 호출함을 표시, 각종 설정 지정 (사용할 thread 수, memory allocation 등)

※ .cu: source code, .cuh: header file


다른 예제

이것들을 Colab에서 하면 ERROR는 안나는데 출력이 안된다... 왜 그런지는 모르겠다!

'Cuda' 카테고리의 다른 글

06_Where_is_Thread_CUDA  (0) 2021.08.30
05_How_Kernel_Works_CUDA  (0) 2021.08.30
04_Vector_Sum_CUDA  (0) 2021.08.27
02_용어정리_CUDA  (0) 2021.08.26
01_Parallel_Computing_CUDA  (0) 2021.08.25

+ Recent posts