NVIDIA(深度学习DLI)西安站培训总结
计算行业正在从只使用CPU的“中央处理”向CPU与GPU并用的“协同处理”发展的趋势进行。
编程GPUs的3种方式
1 Libraries (Easily Accelerate Applications)
2 OpenACC Directives (Easily Accelerate Applications)
CPU memory:
---malloc()
---memset()
---free()
GPU memory:
---cudaMalloc()
---cudaMemset()
---cudaFree()
Summary
1 CPU是串行处理单元,并且是需要减少等待时间的,GPU的大规模并行去减少延迟。
2 GPU包含很多个Streaming Multiprocessor(SM),并且每一个SM包含多个CUDA核心。
3 一个CPU和GPU的对应关系:
CPU <------> GPU
Threads <------> CUDA cores
Blocks <------> SM
Grid <------> GPU device
构建和部署深度神经网络应用过程
1 原始数据和想要应用的原始网络设想
2 通过数据预处理
3 定义网络
4 训练网络
5 优化网络
6 部署网络
计算行业正在从只使用CPU的“中央处理”向CPU与GPU并用的“协同处理”发展的趋势进行。
编程GPUs的3种方式
1 Libraries (Easily Accelerate Applications)
2 OpenACC Directives (Easily Accelerate Applications)
3 Programming Languages (maximum Performance)
CPU memory:
---malloc()
---memset()
---free()
GPU memory:
---cudaMalloc()
---cudaMemset()
---cudaFree()
Summary
1 CPU是串行处理单元,并且是需要减少等待时间的,GPU的大规模并行去减少延迟。
2 GPU包含很多个Streaming Multiprocessor(SM),并且每一个SM包含多个CUDA核心。
3 一个CPU和GPU的对应关系:
CPU <------> GPU
Threads <------> CUDA cores
Blocks <------> SM
Grid <------> GPU device
构建和部署深度神经网络应用过程
1 原始数据和想要应用的原始网络设想
2 通过数据预处理
3 定义网络
4 训练网络
5 优化网络
6 部署网络