当前位置:网站首页>什么是异构计算
什么是异构计算
2022-07-29 14:15:00 【思考实践】
通俗点说,异构就是让不同的架构处理器,协同作战,一起工作。例如,让CPU与其核显GPU两个不同架构,联合进行浮点运算,以提高整个处理器性能和工作效率。
基本概念
在异构计算系统上进行的并行计算通常称为异构计算。人们已从不同角度对异构计算进行定义,综合起来我们给出如下定义:异构计算是一种特殊形式的并行和分布式计算,它或是用能同时支持simd方式和mimd方式的单个独立计算机,或是用由高速网络互连的一组独立计算机来完成计算任务。它能协调地使用性能、结构各异的机器以满足不同的计算需求,并使代码(或代码段)能以获取最大总体性能方式来执行。
概括来说,理想的异构计算具有如下的一些要素:
(1)它所使用的计算资源具有多种类型的计算能力,如simd、mimd、向量、标量、专用等;(2)它需要识别计算任务中各子任务的并行性需求类型;(3)它需要使具有不同计算类型的计算资源能相互协调运行;(4)它既要开发应用问题中的并行性,更要开发应用问题中的异构性,即追求计算资源所具有的计算类型与它所执行的任务(或子任务)类型之间的匹配性;(5)它追求的最终目标是使计算任务的执行具有最短时间。
可见,异构计算技术是一种使计算任务的并行性类型(代码类型)与机器能有效支持的计算类型(即机器能力)最相匹配、最能充分利用各种计算资源的并行和分布计算技术。
基本原理
1、异构计算系统。
它主要由以下三部分组成:
①一组异构机器。
②将各异构机器连接起来的高速网络。它可以是商品化网络,也可以是用户专门设计的。
③相应的异构计算支撑软件。
2、异构计算的基本工作原理。
异构计算需求在析取计算任务并行性类型基础上,将具有相同类型的代码段划分到同一子任务中,然后根据不同并行性类型将各子任务分配到最适合执行它的计算资源上加以执行,达到使计算任务总的执行时间为最小。下面通过一个简单例子来说明异构计算的基本工作原理。
假设在某一基准串行计算机上执行某一给定计算任务的时间为ts,其中向量、mimd、simd以及sisd各类子任务所占执行时间的百分比分别为30%、36%、24%和10%。假设某向量机执行上述各类子任务相对于基准串行机的加速比分别为30、2、8和1.25,则在该向量机上执行此任务所需的总时间为
tv=30%ts/30+36%ts/2+24%ts/8+10%ts/1.25=0.30ts,
故相应的加速比为sv=ts/tv=ts/0.3ts=3.33
若上述向量机与其他的mimd机、simd机以及一台高性能工作站(sisd型)构成一个异构计算系统,并假设mimd机、simd机以及工作站执行相匹配子任务的加速比分别为36、24和10,则在该异构计算系统上执行同样任务所需时间就变为
thet=30%ts/30+36%ts/36+24%ts/24+10%ts/10+tc=0.01+0.01+0.01+0.01+0.02=0.06
其中tc为机器间交互开销时间,假设需2%ts时间,则thet=0.06ts,从而相应的加速比为shet=ts/0.06ts=16.67。
由上例可见,异构计算系统可比同构计算系统获取高得多的加速比。这主要是因为同构计算系统中的加速比只是靠并行性开发获取的,而异构计算系统中的加速比除了并行性之外,更主要的是靠开发异构性获得的(即不同类型子任务与相应类型的计算资源相匹配),尽管此时会有相应的交互开销。交互开销越小,异构计算的优越性就越加明显。
参考资料
边栏推荐
猜你喜欢
随机推荐
PHP代码审计得这样由浅入深地学
唯物辩证法-矛盾论(普遍性+特殊性+斗争性+同一性)
plsql连接oracle使用完毕之后关闭问题
84.(cesium之家)cesium模型在地形上运动
Programmers are a group with a high incidence of occupational diseases. Don’t be naive to think that it’s just as simple as being bald.
基于SSM实现在线聊天系统
How to Improve Embedded Programming with MISRA
The new technical director, who is in the form of a isXxx Boolean type definition, tomorrow need not come!
升级openssl1.1.1(mix2s哪个版本不断流)
你会看 MySQL 的执行计划(EXPLAIN)吗?
浅谈如何在渗透测试中快速搞定webshell
基于JSP&Servlet实现的众筹平台系统
使用云服务器从0开始搭建云端Jupyter Lab|Notebook
这 6 款在线 PDF 转换工具,得试
AI全流程开发难题破解之钥
FPGA刷题——跨时钟域传输(FIFO+打拍+握手)
TCP和UDP的基本认识
上线前配置
威纶通触摸屏制作自定义欢迎界面的几种方法介绍
rosbag数据画图MATLAB









