【动手学深度学习】(十三)深度学习硬件
2023-12-14 22:41:22
    		一、CPU和GPU

 提升CPU利用率
- 在计算a+b之前,需要准备数据 
  - 主内存->L3->L2->L1->寄存器(数据只有进入寄存器才可以参与运算)
 
- 提升空间和时间的内存本地性 
  - 时间:重要数据使得保持它们在缓存里
- 空间:按序读写数据使得可以预读取
 
GPU
 
 CPU vs GPU
 
 提升GPU利用率
- 并行 
  - 使用数千个线程
 
- 内存本地性 
  - 缓存更小,构建更加简单
 
- 少用控制语句
 [总结]:
- CPU:用于处理通用计算。性能优化考虑数据读写效率和多线程。
- GPU:使用更小的核核更多的内存带宽,适合能大规模并行的计算任务。
二、更多的芯片
1.DSP:数字信号处理

2.可编程阵列(FPGA)

3.AI ASIC

 
三、单机多卡并行
- 一台机器可以安装多个GPU(1-16)
- 在训练和预测时,我们将一个小批量计算切分到多个GPU上来达到加速目的
- 常用切分方案有: 
  - 数据并行
- 模型并行
- 通道并行(数据+模型并行)
 
数据并行vs模型并行
- 数据并行:将小批量分成n块,每个GPU拿到完整参数计算一块数据的梯度 
  - 通常性能比更好
 
- 模型并行:将模型分成n块,每个GPU拿到一块模型计算它的前向和方向结果 
  - 通常用于模型大到单GPU放不下
 
    			文章来源:https://blog.csdn.net/qq_52986400/article/details/135000319
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
    	本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!