▲GN⁺ 11달전 | parent | ★ favorite | on: Ask HN: CUDA를 전문가 레벨로 배우려면 어떻게 해야하나요?(news.ycombinator.com)Hacker News 의견 2008년 NVidia cudacontest 참가자로서, 인도에서 제출한 몇 안 되는 사람 중 한 명으로 BlackEdition Card 참가상도 받은 경험을 바탕으로 내가 따라온 방법 공유함 NVidia CUDA Programming Guide 참고 NVidia에서 배포한 CUDA Programming 관련 도서 활용(developer.nvidia.com/cuda-books-archive 참조) 기존 구현 기반으로 작은 프로그램부터 작성(강력한 C 언어 구현력 필수이므로 필요하다면 복습 권장) 필요한 Toolchain, 컴파일러 설치 및 작업용 하드웨어 확보 가정 Github의 CUDA 프로젝트 코드 분석 및 최신에는 LLM 활용해서 코드 설명 요청 가능 작지만 병렬처리 기반 프로그램부터 점차 확대 1~2개월 차분히 진행하면 충분히 CUDA 프로그래밍 시작 가능 요즘은 2007/08년보다 자료와 리소스가 풍부한 환경 6~8주 학습 계획 수립 후 실행 추천 언제든 질문 남기면 도울 수 있는 부분 최대한 안내 가능 필요한 하드웨어 관련해서 구체적으로 궁금함. 5년 전쯤 나오 nvidia 그래픽카드만 있으면 충분한지, 아니면 더 특별한 사양이 필요한지 질문 어떤 개발 환경을 사용하는지 궁금함. 아직도 Windows가 CUDA 주 개발 환경인지 확인 원함 Leela Chess Zero의 CUDA 코드 직접 살펴보니 이해할 만한 수준이었음 당시 Leela는 transformer 대신 DCNN 구조를 사용했는데, fast.ai 영상 통해 DCNN 기초 쉽게 배움 Transformer는 더 복잡해 아직 학습 시작을 못함 CUDA 언어 자체는 C++ 기반이므로 C++ 경험 있으면 어렵지 않게 접근 가능 다만 CUDA 개발자가 되고 싶다면 AI 프로그래밍 수준까지 도달 필요성 큼—AI는 CUDA보다 훨씬 깊고 방대한 영역이라 많은 시간과 실전 경험 필요 그래도 실력 갖추게 되면 시장 수요 매우 높음 fast.ai 영상 강력 추천 게임 분야라면 3D 그래픽스까지 얘기가 이어지는데, 최근은 훨씬 더 복잡해진 상황이라 입문 경로를 모르겠음 CUDA 개발자로 구직하는 게 현재 다른 소프트웨어 엔지니어 분야에 비해 부담이 적은지 질문. 현재 Java 미들웨어 개발자로서 CUDA와 AI 쪽이 커리어 전환에 좋을 것 같다는 의견 이 코드가 여기 맞는지 확인 요청 및 두 가지 초보 질문 왜 C++/CUDA를 직접 썼는지, 단순히 pytorch나 tensorflow로는 Leela 학습 속도가 부족한 건지 그리고 tensorflow 코드도 있는데 그 이유에 대한 궁금증 돈이 동기라면 HPC 및 수학적인 영역은 패스 추천 해당 분야는 박사급이 아니면 실력이 아무리 좋아도 관심 받기 어려움 진짜 돈이 되는 역량은 PTX, nvcc, cuobjdump, Nsight Systems, Nsight Compute 등 툴 마스터, 그리고 CUTLASS 같은 오픈소스 코드베이스 분석 관련 실전 노트 참고 추천 무엇보다 HN에만 머물지 말고 진짜 개발자 모여 있는 discord gpu mode 커뮤니티 참여 권장 멋지고 실제적이지만 매우 틈새 분야로 보임 진입 자체가 어려우며 게임 산업, 드라이버 등 한정된 분야에서만 쓰임 처음부터 바로 그 단계까지 가려면 상당한 재능 필요성 언급 gpumode.com 리소스 및 디스코드 커뮤니티 수개월 동안 공부 거리를 충분히 제공 Programming massively parallel processors 책 nvidia cuda 공식 문서는 매우 포괄적 GPU-Puzzles도 도전 추천 ThunderKittens flashattention-2 예시 코드 보며 말로 설명하기 어려운 코드 복잡성 느낌 이런 퍼즐은 '승자 독식' 구조라 실질적인 성취 차이는 1% 이내이며, 실습 자체가 큰 의미 없다는 생각 학습 범위 쪼개서 접근성 높이기 추천 CUDA 자체(프레임워크/라이브러리/추상화 레이어) 학습 고성능 컴퓨팅 기본(이것은 GPU, Nvlink 개념 넘어서 HPC 아키텍처 전반에 통용) 응용 분야 특화(Transformer면 Torch, Tensorflow 등 최신 고수준 추상화에서 출발) 실제 CUDA 마스터 원한다면, 대규모 병렬처리 프로그래밍 원리 체험과 이해가 핵심이며 상당 부분 이식 가능한 스킬 전직 GPU 개발자로서 나 역시 같은 조언, 특히 2번과 3번 강조 취업 목표에 따라 달라지겠지만, 정말 필요한 것은 CUDA 라이브러리(cuDNN, cuBLAS, cuFFT 등) 경험일 수도 있음 병렬 프로그래밍 원리 이해가 무엇보다 우선 이 접근법이 정답이며, 2번 없이 1번부터 바로 배우면 더 큰 혼란만 초래 추천 도서 안내 개인적인 CUDA 학습 과정 경험 공유 체계적이진 않으나 학계 및 연구에 도움된 방식 박사 프로젝트 때문에 CUDA 직접 학습 필요 연구실 내에 경험자 전무하여 NVIDIA 기본 과정(Getting Started with Accelerated Computing with CUDA C/C++ 및 python 버전)으로 개념 기초 익힘 공식 튜토리얼 외 실제로는 시행착오 중심 학습 많았음 온라인 튜토리얼, 책 활용했으나 함수나 API가 금방 바뀌어 구버전/신버전 혼동 많고, 내 GPU와 실 환경의 호환성 이슈까지 신경 써야 했음 가장 어려웠던 점은 대부분 시간을 디버깅(생각보다 느린 원인 추적) 및 도구(예: "compute-sanitizer", Nsight) 사용에 쏟았던 부분 조급해하지 말고, CPU에서 동작하는 간단한 프로젝트를 CUDA로 포팅 후 benchmark하면서 최적화 경험 쌓기 추천 최적화는 맨 마지막에, 일단 올바른 동작 구현을 우선시 동작은 느려도 메모리 손상 없는 커널이 최적화된 커널보다 더 가치 있음 비슷한 박사과정 경험 공유—flashrnn 실습 결과물 기본 원리와 GPU 구조 이해했다면 추천하는 워크플로우 커널 테스트 가능한 환경 세팅, 상위 레벨 언어로 된 Baseline과 비교 급한 프로젝트 없으면 기존 유명 문제(MatMul 등) 복습 또는 재구현—모든 케이스 다 하려 하지 말고 기능별로 집중 점진적으로 복잡도 높이기—루프, 그리드 병렬화, 전역/공유/레지스터 메모리 차례로 사용, 단순 행렬곱에서 TensorCore(MMA)까지 확장 CUDA C Programming Guide 반복 탐독—실습하면서만 제대로 체득 CUTLASS, ThunderKitten 등 상위 추상화도 케이스 따라 추천, JAX/Torch 환경이면 triton 우선 활용 PTX까지 마스터하려면 시간은 더 오래 걸리지만 실전에서 몸으로 익히는 과정 강조 CUDA 성능 디버깅 고통에 깊이 공감 고등학생에게 CUDA 가르칠 때 활용한 자료 소개—혼자 전체 마스터엔 부족하지만 첫 시작에 도움이 되는 강좌 입문 강의(YouTube) 아직 써보진 않았지만 꽤 괜찮아 보여서 추천하고 싶은 leetgpu.com 플랫폼 CUDA 엔지니어 채용하는 직무, 포지션, 기업군에 대한 현업 의견 요청 현재는 많은 회사가 PyTorch처럼 CUDA 기반 라이브러리를 이용하지만, Native CUDA 개발 자체가 많은 회사에 필요한지 모르겠음 직접 CUDA 중심으로 일하는 조직이나 역할 발굴을 기대 우리 팀의 경우, 지리정보(geospatial) 데이터 분석에 CUDA 직접 활용 slippy map 타일을 래스터화하고 GPU로 래스터 요약 처리 대부분 픽셀 단위 독립적 처리라 GPU에 적합 행 단위로 요약 병렬처리 후 마지막에 모아서 처리 다만 GPU로 데이터 복사 부분이 현재 병목 시대 변화에 맞춰, Claude 등 LLM에 질문해서 결과 코드와 설명 한꺼번에 받는 방법 활용 2025년엔 이렇게 해도 통할 수 있지만, 2026년은 한 단계 더 요구할 것이라는 의견
Hacker News 의견
2008년 NVidia cudacontest 참가자로서, 인도에서 제출한 몇 안 되는 사람 중 한 명으로 BlackEdition Card 참가상도 받은 경험을 바탕으로 내가 따라온 방법 공유함
Leela Chess Zero의 CUDA 코드 직접 살펴보니 이해할 만한 수준이었음
돈이 동기라면 HPC 및 수학적인 영역은 패스 추천
gpumode.com 리소스 및 디스코드 커뮤니티 수개월 동안 공부 거리를 충분히 제공
학습 범위 쪼개서 접근성 높이기 추천
개인적인 CUDA 학습 과정 경험 공유
고등학생에게 CUDA 가르칠 때 활용한 자료 소개—혼자 전체 마스터엔 부족하지만 첫 시작에 도움이 되는 강좌
아직 써보진 않았지만 꽤 괜찮아 보여서 추천하고 싶은 leetgpu.com 플랫폼
CUDA 엔지니어 채용하는 직무, 포지션, 기업군에 대한 현업 의견 요청
시대 변화에 맞춰, Claude 등 LLM에 질문해서 결과 코드와 설명 한꺼번에 받는 방법 활용