예제로 배우는 cuda 프로그래밍 소스

다음은 Tesla M2050 CUDA hello world 예제에 대한 프로파일링 결과이며 프로그램이 컴파일되더라도 화면에 아무 것도 표시되지 않습니다. 작업을 실행하기 위해 벡터 추가를 살펴봅니다. 나는 C / C ++ 프로그래밍에 대한 몇 가지 지식을 가지고 있으며 CUDA를 배우고 싶습니다. 나는 또한 맥에있어. 그렇다면 CUDA를 배우는 가장 좋은 방법은 무엇입니까? 이 중 내가 가장 좋아하는 것은 전문 CUDA C 프로그래밍입니다. 이 책의 접근 방식은 감소 알고리즘의 순진한 구현으로 시작하여 각 장에서 도입 된 새로운 기능을 사용하여 최적화하는 것을 좋아합니다. 이 잘 trodden 땅 동안, 같은 예는 여기 와 Udacity 과정 자체에서 볼 수 있습니다,이 책은 좋은 이야기를 제시, CUDA 프로파일러 nvprof 일찍 정당화하고 제안 된 변화를 검토하기 위해 도입, 그것은 모두 부드러운 만들기 당신이 CPU에 직렬 프로그래밍에 사용되는 경우, 아주 외계인 뭔가 소개. 또한, 이것은 CUDA에 새로운 책 중 하나입니다., CUDA 스트림에 더 많은 최신 장, 그리고 멀티 GPU 프로그래밍. 이 게시물은 CUDA에 대 한 매우 간단한 소개, NVIDIA에서 인기 있는 병렬 컴퓨팅 플랫폼 및 프로그래밍 모델. 나는 2013 년에 CUDA에 이전 “쉬운 소개”를 썼으며 수년에 걸쳐 매우 인기가있었습니다. 그러나 CUDA 프로그래밍이 더 쉬워졌고 GPU가 훨씬 빨라졌기 때문에 업데이트된 (그리고 더 쉬운) 도입을 할 때입니다. C와 CUDA 구현의 주요 차이점은 __global__ 지정자 및 <<> 구문입니다.

__global__ 지정기는 장치(GPU)에서 실행되는 함수를 나타냅니다. 이러한 함수는 호스트 코드(예: 예제의 main() 함수를 통해 호출될 수 있으며 “커널”이라고도 합니다. 첫 번째 연습에서는 hello 월드를 예로 사용하여 vector_add.c를 CUDA 프로그램 vector_add.cu로 변환합니다. CUDA에 익숙하지 않고 초보자 수준에서 배우고 싶은 사람은 필수 조건을 완료하면이 자습서를 읽어야합니다. 또한 이미 CUDA를 알고 개념을 브러시 업하려는 사람들에 의해 사용될 수있다. 오프라인 리소스를 선호하는 경우 CUDA에는 동일한 자료를 더 크거나 적게 다루는 좋은 책이 많이 있습니다. 내가 개인적으로 읽은 몇 가지 중, 내가 유용 찾을 것 들: 그래서, CUDA에 대해 들었어요 그리고 당신은 당신의 자신의 응용 프로그램에서 그것을 사용 하는 방법을 학습에 관심이. C 또는 C++ 프로그래머인 경우 이 블로그 게시물을 통해 좋은 출발을 할 수 있습니다.

따라가려면 CUDA 지원 GPU(Windows, Mac 또는 Linux, NVIDIA GPU가 수행해야 하는) 컴퓨터 또는 GPU가 있는 클라우드 인스턴스(AWS, Azure, IBM SoftLayer 및 기타 클라우드 서비스 공급자가 해당)가 필요합니다. 또한 무료 CUDA 툴킷이 설치되어 있어야 합니다. 내 의견으로는 CUDA와 GPU 프로그래밍을 배울 수있는 가장 빠른 방법, 그리고 / 또는 당신에게 유용한 경우 알아, CUDA 커널의 최대한 빨리 쓰기 시작하는 것입니다. 불행 하 게도, 엔비디아 CUDA 가능 GPU의 전제 조건 (적어도 이후 SDK v3.0) 성공에 첫 번째 장벽을 넣을 수 있습니다.

This entry was posted in Uncategorized. Bookmark the permalink.