商城网站建设方案流程,海口澄迈县建设局网站,建网站卖产品怎么样,企业网站建设定位注意的问题并行计算粒度 分布式并行(多主机#xff0c;多进程) #xff1a; MPI 共享存储式并行 (多线程) #xff1a;OpenMP OpenCL OpenACC 指令级并行 CPU流水线
CPU流水线
指将一条指令的执行过程划分为多个阶段#xff0c;使得在每个时钟周期内能够并行执行多条指令#…并行计算粒度 分布式并行(多主机多进程) MPI 共享存储式并行 (多线程) OpenMP OpenCL OpenACC 指令级并行 CPU流水线
CPU流水线
指将一条指令的执行过程划分为多个阶段使得在每个时钟周期内能够并行执行多条指令从而提高 CPU 的执行效率。 即将一个完整的指令执行过程分成若干个小的执行步骤在下一个时钟周期中另一个指令的前一步骤正好可以开始执行并在依次进行每一步后输出执行结果与此同时前一条指令的下一步骤也开始执行并在下下个时钟周期中输出结果。这样就可以实现 CPU 在同一时刻执行多条指令并且不需要等待一条指令的完全执行才能执行下一条指令。这种处理方式类似于工厂的装配线因此也被称为指令流水线。
一条指令的执行步骤
取指令 Instruction Fetch 从内存中读取指令到指令寄存器指令译码 Instruction Decode 解码指令确定指令操作的数据以及地址指令执行 Execute 根据指令操作的数据和地址进行运算逻辑等操作访问存储 Memory Access 如果指令需要访问内存将操作结果或需要的数据从内存中读出或写入内存中写回 Write Back 将执行结果写回到寄存器中。
一般来讲CPU要执行一条指令只要顺序的按照上述步骤即可。但是现代CPU为了提升效率都会对指令进行优化如乱序执行预测分支等使得CPU对指令的执行更加复杂。
补充上述流水线模型为五段式模型还有六段式八段式十三段式等模型。
超算平台体系结构
CPU核 核内是指令级别的并行方式一般采用流水线并行。
多核CPU
核私有L1L2 cache 公有L3… cache 核间采用共享存储式的并行即多线程并行
多个CPU组成一个计算节点 NUMA架构
Non-Uniform Memory Access非一致性内存访问 CPU之间内存独立通信使用如MPI等机制
计算分区
如将多个芯片级别的计算单元通过高性能通信机制组织起来形成的计算系统如包括SMP和NUMA架构的服务器分布式计算集群。
异构并行
异构是指在同一个系统或设备中拥有不同种类或品牌的 CPU 或处理器可以是不同的架构、核心、频率、功耗等参数的处理器进行混合使用。
所谓异构并行即不同处理器之间通过通信进行协调来共同完成一件事。 最常见的是CPU GPU的组合方式进行GPU加速计算
异构处理器都采用了不同的架构、计算模型和硬件实现以满足不同领域和应用的需求可以提升计算性能、降低能耗和实现更好的能效比。
异构处理器通信方式
PCIERDMADMAMPI网络
总结
我们可以将一个计算量超大超复杂的任务有一个大型的计算平台
我们就可以将任务进行拆解到计算平台上的各个NUMA架构的CPU节点中那么CPU与CPU之间进行MPI通信而对于任意一个CPU节点又可以拆解到多个核上进行多线程任务拆解与执行
这样根据计算平台的体系自上而下的进行任务拆解直到整个任务的完成。