查找所有Flynn的分类示例代码,用于C/C++或Python代码来理解
任何密码都可以,我只是想学点东西。我试着找出其中的一些,但没有结果。
SIMD
SISD
MISD
MIMD发布于 2021-01-29 11:08:59
查找所有Flynn的分类示例代码,用于C/C++或Python代码来理解
分类学更多的是关于计算机架构本身。
让我们启动SIMD,从维基百科可以读到:
单指令多数据(SIMD)是Flynn的taxonomy.It中的一类并行计算机,它描述了具有多个处理元素同时在多个数据点上执行相同操作的计算机。这种机器利用数据级的并行性,但不使用并发性:在给定的时刻可以同时(并行)计算,但只有一个进程(指令)。
在OpenMP中,您可以使用SIMD指令,即:
#pragma omp simd
for ( i = 0; i < n; i++ )
a[i] = b[i] * c[i];关于SISD,从维基百科可以读到:
在计算中,SISD (单指令流,单数据流)是一种计算机体系结构,其中单核处理器执行单个指令流,对存储在单个存储器中的数据进行操作。
这与代码无关,而在于它将如何在底层体系结构中执行。反映这一概念的一项守则是:
for(int i = 0; i < N; i++)
a[i]++;关于MISD,从维基百科可以读到:
在计算中,多指令单数据( MISD )是一种并行计算体系结构,许多功能单元对同一数据执行不同的操作。管道体系结构属于这种类型,尽管纯粹主义者可能会说,经过管道中每个阶段的处理后,数据是不同的。
for(int i = 0; i < N; i++)
a[i] = 10 * a[i] + a[i] / 2;关于MIMD,从维基百科可以读到:
在计算中,多指令多数据( MIMD )是实现并行性的一种技术。使用MIMD的机器有许多异步和独立工作的处理器。
为此,可以使用包含两个进程的MPI应用程序,其中每个进程执行两个不同的应用程序。
https://stackoverflow.com/questions/65952780
复制相似问题