目录
前言
多核系统具有一个带有多个处理单元的处理器;这些处理单元称为核心。
多处理器系统具有两个或更多处理器;多处理器系统比多核系统可靠的多,但多处理器系统与多核系统相比具有更复杂的配置。
多核处理器和多处理器系统都用于加速系统的计算过程。
什么是多核
众所周知,处理器/CPU是计算机的大脑,它负责计算机的所有功能;CPU的执行单元称为核心,核心的主要功能是读取和执行指令,这些指令可以有多种形式,包括计算、数据传输、分支等;
具有单核的处理器称为Unicore处理器,但具有两个或更多核心的处理器称为多核处理器;多核处理器的核心可以同时单独读取和执行程序指令,这提高了程序的执行速度并支持并行计算。例如:四核处理器、八核处理器等。
多核的优点
- 与单核处理器相比,多核处理器可以完成更多的工作;
- 多核处理器的核心位于单个集成芯片上,导致系统时钟速度增加;
- 与单核处理器相比,多核处理器可以更大程度地容忍故障;
- 这些程序被分配了不同的核心,但他们仍然能够相互交互;
- 多核处理器以更低的能耗提供更高的性能,因此它们是节能的;
- 多核处理器的流量较少;
多核的缺点
- 尽管多核处理器中存在多个核心,但与简单处理器相比,速度并没有显著提高;
- 增加核心数量会增加,由于资源共享而导致的软件干扰;
- 处理器在执行多任务时会产生大量热量;
- 多核处理器的功耗较高;
什么是多处理器
多处理器有两个或更多处理器,多处理器系统的处理器共享相同的内存、系统总线(连接计算机系统主要组件以传输数据和信息的路径)和 I/O 设备; 多处理器可以同时执行多条指令。一个处理器的故障不会影响其他处理器的功能;因此,多处理器更加可靠。
多处理器系统可以使用共享内存或分布式内存;在共享内存多处理器中,每个处理器共享主内存和I/O设备;处理器可以使用相同的系统总线访问主存储器,使用共享内存的多处理器也称为对称多处理器。
分布式内存多处理器中的每个处理器都有自己的私有内存,用于进行计算,系统总线允许处理器相互通信并访问主存储器。
具有多个通过系统总线连接到主存储器和I/O的处理器的多处理器
多处理器的优点
- 由于多个处理器同时工作,系统的吞吐量增加;
- 多处理器系统更加可靠,因为一个处理器的故障不会影响其他处理器;
- 由于多个进程在不同的处理器上并行执行,因此实现了并行处理;
多处理器的缺点
- 多处理器系统的处理器之间的协调是相当复杂的;
- 所有处理器都使用公共I/O设备;因此,如果一个进程正在使用I/O,那么其他进程必须等待轮到它,结果导致系统的吞吐量可能会降低;
- 由于所有处理器都使用相同的内存,因此需要大量主内存来进行高效计算;
- 与多核系统相比,多处理器系统昂贵;
多核和多处理器的关系
多核处理器和多处理器都用于通过多任务和并行计算来提高计算机的性能,现代计算机具有多个处理器,每个处理器中都有多个内核;这些内核可以一次读取和执行多条指令。
多核和多处理器的区别
1、可靠性不同
多核(multi-core):多核处理器不像多处理器那样可靠。
多处理机(multiprocessor):更可靠,因为一个CPU的故障不会影响其他CPU。
2、不同项目的处理速度不同
多核(multi-core):多核处理器执行单个程序的速度更快。
多处理机(multiprocessor):多处理器执行多个程序的速度更快。
3、CPU数量不同
多核(multi-core):一个CPU或处理器有两个或多个独立的处理单元,称为核心,能够读取和执行程序指令。
多处理机(multiprocessor):一个有两个或更多CPU的系统,可以同时处理程序。
4、流量不同
多核(multi-core):多核处理器的流量较少。
多处理机(multiprocessor):多处理器有更多的流量。
5、配置不同
多核(multi-core):多核处理器不需要配置。
多处理机(multiprocessor):多处理器需要很少的复杂配置。
6、价格不同
多核(multi-core):多核处理器非常便宜(单个CPU,不需要多CPU支持系统)。
多处理机(multiprocessor):与多核心相比,多处理器很昂贵(多个独立的CPU,需要支持多个处理器的系统)。
7、概念不同
多核(multi-core):多核处理器系统指系统中只有一个多核心的处理器,也就是说电脑只有一个处理器,但是这个处理器是多核的。
多处理机(multiprocessor):多处理器系统中包含多个单核处理器,就是说电脑和处理器有多个,但电脑的处理器是单核的。
8、资源利用率不同
对于多处理器系统而言,它们在执行命令的时候多个处理器之间的通信手段是电脑主板上的总线。而对于多核系统而言,多个核心处理器之间通信时通过CPU内部总线进行信息的交互的。对于执行效率而言,多核处理器要优于多个处理器。
9、线程控制不同
计算机在启动之后,一个进程最少包含一个主线程,如果这个主线程结束了,那么这个进程也就终止执行了,主线程是以函数的形式提供给操作系统的。对于并行计算是在多处理器的情况下,操作系统把多个线程分配给响应的处理器,然后各自执行任务。