AI03, Deep learning trend
Back to the previous page
List of posts to read before reading this article
Contents
Researcher
LeCun | Hinton | Fei-Fei Li | Krizhevsky
Framework
Past
Caffe2 | MatConvNet
Present
Tensorflw | Pytorch
Cloud Platform
AWS | Google Cloud Platform | Microsoft Azure
Enterprise IT(legacy IT) > Infrastructure(as a Service, IaaS) > Platform(as a Service, PaaS) > Software(as a Service, SaaS)
Hardware
NVIDIA(GTX, Titan, TESLA)
CUDA(Compute Unified Device Architecture) Programming
hayun’s lecture
$ apt update
$ apt upgrade
$ apt install nvidia-driver-[version]
$ nvidia-smi # hardware information
$ lsmod | grep nvidia # kernel module
cuda
URL
cudnn
URL
Present situation of CUDA and deep learning framework
Multiprocessing system and programming model concept for using CUDA/cuDNN, by grasping graphics card and hardware model in relation to Caffe, Caffe2, Tensorflow.
- CUDA DeviceInfo
- 1D/2D Matrix sum, product based on CUDA
- Optimizing parallel reduction
- Code review for Caffe, Caffe2, Tensorflow
GPU Memory usage
Deep understanding of the principle of data transfer between CPU and GPUs, and the characteristics of the different kinds of memory used by GPUs, and we learn efficient memory utilization techniques and implement them into CUDA.
메모리 동기/비동기 복사 공유 메모리/고정 메모리 복사 글로벌 메모리/Zero-Copy 메모리 복사 통합 메모리 복사
GPU Memory and stream usage
Stream concept and access technique for maximizing resource utlization of GPU, with implementation.
메모리 정합/정렬 액세스 메모리 뱅크 충돌과 패딩 회피 데이터 전송 스트림과 이벤트 구현 스트림 동기화 구현
CUDA debugging profiling, cuDNN usage
CUDA 프로그램을 실질적으로 디버깅하거나 성능 최적화하는 방법을 이해하고 이때 사용하는 도구들을 활용해봅니다. 병렬처리 성능을 극대화시키기 위해cuDNN 을 학습한 다음, 효율적인 Convolution연산을 위한 GEMM(General Matrix Multiplication) 알고리즘을 학습하고 직접 구현해봅니다.
[실습] CUDA 디버깅 도구 활용 [실습] CUDA 시각화/프로파일링 도구 활용 [실습] GEMM 구현 [실습] CUDA/cuDNN 기반 Convolution Layer
Implement of deep learning with CUDA
CUDA및 cuDNN을 활용해서 MaxPooling, Activation, FC 레이어 등을 구현해보고, 이들을 통합해서 Object Detection을 위한 YOLO v2를 구현해봅니다.
[실습] CUDA/cuDNN 기반 MaxPooling Layer [실습] CUDA/cuDNN 기반 Activation Layer [실습] CUDA/cuDNN 기반 FullyConnected Layer [실습] YOLO v2 구현
Implement of custom layers based on CUDA/cuDNN
CUDA/cuDNN 구현 테크닉들을 기반으로, Caffe/Caffe2/Tensorflow에서 각각 적용해볼 수 있는 자신만의 사용자 정의 레이어를 구현해봅니다.
[실습] Caffe Custom Layer(CPP, CUDA, cuDNN)구현 [실습] Caffe2 Custom Operator(CPP, CUDA, cuDNN)구현 [실습] Tensorflow Custom Operator(CPP, CUDA, cuDNN)구현
List of posts followed by this article
Reference