找回密码
 立即注册
查看: 239|回复: 0

CPU学习(深度学习硬件必备知识)

[复制链接]
发表于 2022-8-23 16:39 | 显示全部楼层 |阅读模式
中央处理单元(CPU) ,也称为中央处理器主处理器或仅称为处理器,是执行包含计算机程序的指令的电子电路。CPU 执行程序中的指令指定的基本算术、逻辑、控制和输入/输出(I/O) 操作。这与诸如主存储器和 I/O 电路之类的外部组件以及图形处理单元(GPU) 之类的专用处理器形成鲜明对比。
硬盘、内存、流程:


CPU 本身具有以下三个组件。

  • 内存或存储单元
  • 控制单元
  • ALU(算术逻辑单元)
内存或存储单元

该单元可以存储指令、数据和中间结果。该单元在需要时向计算机的其他单元提供信息。它也被称为内部存储单元或主存储器或主存储器或随机存取存储器(RAM)。
它的大小会影响速度、力量和能力。主存储器和辅助存储器是计算机中的两种存储器。记忆单元的功能是 -

  • 它存储处理所需的所有数据和指令。
  • 它存储处理的中间结果。
  • 它在将这些结果发布到输出设备之前存储处理的最终结果。
  • 所有输入和输出都通过主存储器传输。
控制单元

该单元控制计算机所有部分的操作,但不执行任何实际的数据处理操作。
该单元的功能是 -

  • 它负责控制计算机其他单元之间的数据和指令传输。
  • 它管理和协调计算机的所有单元。
  • 它从内存中获取指令,对其进行解释,并指导计算机的操作。
  • 它与输入/输出设备通信,以从存储中传输数据或结果。
  • 它不处理或存储数据。
ALU(算术逻辑单元)

ALU(算术逻辑单元)负责执行算术和逻辑功能或运算。它由两个部分组成,分别是:
算术部分:算术运算是指加法、减法、乘法和除法等运算,所有这些运算和功能都由 ALU 执行。此外,所有复杂的操作都是通过重复使用 ALU 提到的操作来完成的。
逻辑部分:逻辑操作是指选择、比较、匹配和合并数据等操作或功能,所有这些都由 ALU 执行。
注意:CPU 可能包含多个 ALU,ALU 可用于维护有助于运行计算机系统的计时器。
L1、L2 和 L3的区别

CPU 的缓存通常分成了三个级别:L1、L2 和 L3。级别越小就越接近 CPU,速度更快,同时容量也越小。L1 和 L2 一般在核的内部,我们下一讲还会详细讲。L3 缓存是三级缓存中最大的一级,同时也是最慢的一级;在同一个处理器内部的核会共享同一个 L3 缓存
CPU 性能指标和常见性能问题

CPU 的负载情况

CPI(Cycles Per Instruction,每指令的周期数)和 IPC(Instructions Per Cycle,每周期的指令数)
CPU使用率

linux上通过top指令监控
CPU常见中断

中断是一种电信号,当设备有某种事件发生时,它就会产生中断,通过总线把电信号发送给中断控制器。
硬中断
由硬件产生的,比如,像磁盘,网卡,键盘,时钟等
软中断
为了满足实时系统的要求,中断处理应该是越快越好。linux为了实现这个特点,当中断发生的时候,硬中断处理那些短时间就可以完成的工作,而将那些处理事件比较长的工作,放到中断之后来完成,也就是软中断(softirq)来完成。
CPU性能监控工具

Perf 是 Linux 上的性能剖析(profiling)工具,是基于事件采样原理,以性能事件为基础,利用内核中的计数器来进行性能统计。它不但可以分析指定应用程序的性能问题,也可以用来分析内核的性能问题。
CPU 在训练时候的注意事项


  • 一般不用 CPU 训练深度学习模型。
  • 很多 if…else 出现时,CPU 会比 GPU 快。
  • 如果需要加速,可以通过 Cython 访问 C++,这在实际业务性应用时很有用。
  • 对于大部分硬件(GPU,TPU,FPGA),CPU会负责数据的读写 -> 在进行训练时,
  • 有时为了加速需要选择更多核的机器
  • 避免 Cache Miss
  • 有时需要使用足够多的核来支持读写

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-11-25 06:52 , Processed in 0.163082 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表