当前位置: 首页 > 工具软件 > flynn Python > 使用案例 >

python课程典范选优_Python Parallel Programming Solutions

上官兴昌
2023-12-01

嗨, 欢迎来到课程的第一部分。

并行计算和Python入门。

在本节中, 我们将讨论并行计算和内存架构。

我们还将关注内存组织和并行编程模型。

接下来, 我们将看到如何设计并行程序, 并评估并行程序的性能。

此外, 我们将介绍Python。

并且我们将与流程一起工作, 并与他们一起调节。

所以我们来看看这部分的第一部影片。

并行计算内存架构。

在这个视频中, 我们将了解Flynn的分类法, 其中包括SISD, MISD, SIMD和MIMD。

我们现在来看看并行计算内存架构。

基于可以同时处理的指令和数据的数量, 计算机系统被分为四类。

一, 单指令单数据, SISD。

二, 单指令多数据, SIMD。

三, 多指令单数据, MISD。

四, 多指令多数据, MIMD。

这种分类被称为Flynn的分类法。

让我们明白SISD是什么。

SISD计算系统是一个单处理器。

它执行在单个数据流上操作的单个指令。

在SISD中, 依次处理机器指令。

在一个时钟周期中, CPU执行一次, 取出的操作。 CPU从被称为寄存器的存储器区域读取数据和指令。

二, 解码。 CPU解码指令。

三, 执行。该指令是对数据进行的。操作结果存储在另一个寄存器中。

一旦执行阶段完成, CPU将自己设置为开始另一个CPU周期。

这就是SISD架构架构的工作原理。

在这些类型的计算机上运行的算法是连续的或串行的。

因为它们不包含任何并行性。

SISD计算机的示例是具有单个CPU的硬件系统。

这些架构的主要元素, 也称为冯·诺依曼(Von Neumann)架构, 如图所示。

一, 中央存储单元。这用于存储指令和程序数据。

二, CPU。这用于从存储器单元获取指令和/或数据, 该指令和/或数据对指令进行解码并依次执行它们。

三, I / O系统。这是指程序的输入数据和输出数据。

传统的单处理器计算机被分类为SISD系统。

该图具体显示了在获取, 解码和执行阶段使用CPU的哪个区域。

现在我们来看看MISD是什么。

在这个模型中, 在处理器中, 每个都有自己的控制单元, 共享一个内存单元。

并且每个时钟周期, 从存储器接收的数据被所有处理器同时处理。

每个都与从其控制单元收到的指令相矛盾。

在这种情况下, 通过在同一条数据上执行多个操作来获得并行性, 指令级并行性。

在这些架构中可以有效解决的问题类型相当特别。

如关于数据加密的那些。

为此, 电脑MISD在商业领域没有找到空间。

MISD电脑比实际配置更多是一种智力锻炼。

这就是MISD架构方案的外观。

接下来我们来看一下SIMD。

SIMD计算机由n个相同的处理器组成, 每个处理器都有自己的本地存储器, 可以存储数据。

所有处理器都可以在单个指令流的控制下工作。

除此之外, 还有n个数据流。

一个为每个处理器。

处理器在每个步骤上同时工作并执行相同的指令, 但是在不同的数据元素上。

这是数据级并行性的一个例子。

SIMD架构比MISD架构更加通用。

涵盖广泛应用的许多问题可以通过SIMD计算机上的并行算法来解决。

另一个有趣的特征是这些计算机的算法相对容易设计, 分析和实现。

限制是, 只有可以分为多个子问题的问题, 这些问题都是相同的, 每个问题将通过同一组指令同时解决。

可以使用SIMD电脑进行寻址。

用超级计算机开发, 根据这个标准, 我们必须提到连接机, 1985思想机。

一个NPP, 从1983年是NASA。

正如我们将在第六部分中看到的那样, GPU编程与python, 现代图形处理器单元的Athene或GPU, 搭配许多SIMD嵌入式单元, 已经导致了更广泛地使用这种计算机的典范。

我们现在开始了解MIMD是什么。

根据Flynn的分类, 这类并行计算机是最通用, 更强大的类。

这里有终端处理器和指令流, 以及n个数据流。

每个处理器都有自己的控制单元和本地存储器。这使得MIMD架构比SIMD中使用的架构更具计算能力。

每个处理器在其自己的控制单元发出的指令流的控制下操作。

因此, 处理器可以在不同的数据上运行在不同的程序中。

解决不同的子问题, 可以成为一个更大问题的一部分。

在MIMD中, 通过线程和/或进程的并行级别来实现架构。

这也意味着处理器通常异步运行。该类中的计算机用于解决SIMD模型不需要常规结构的问题。

如今, 这种架构应用于许多PC, 超级计算机和计算机网络。

但是, 有一个你需要考虑的柜台。异步算法难以设计, 分析和实现。大。

所以现在我们知道并行计算内存架构如何工作。

在下一个视频中, 我们将看看内存组织。

 类似资料: