并行处理是什么?

Jun 13, 2016 am 11:50 AM
並列処理

并行处理是计算机系统中能同时执行两个或多个处理的一种计算方法;并行处理可同时工作于同一程序的不同方面;并行处理的主要目的是节省大型和复杂问题的解决时间。

并行处理是什么?

并行处理(Parallel Processing)是计算机系统中能同时执行两个或多个处理的一种计算方法。并行处理可同时工作于同一程序的不同方面。

并行处理的主要目的是节省大型和复杂问题的解决时间。

为使用并行处理,首先需要对程序进行并行化处理,也就是说将工作各部分分配到不同处理进程(线程)中。

并行处理由于存在相互关联的问题,因此不能自动实现。另外,并行也不能保证加速。从理论上讲,在 n 个并行处理的执行速度可能会是在单一处理机上执行的速度的 n 倍。

特点

只有部分应用程序在满足以下条件的情况下可利用并行处理:具有充足的能充分利用多处理机的应用程序; 并行化目标应用程序或用户需进行新的编码来利用并行程序。

传统上,多处理机专为“并行计算机”所设计,沿着这样的思路,当前 Linux 支持 SMP 奔腾系统,在该系统中多处理机共享单个计算机中的单个存储器和总线接口。每个运行 Linux 的机器组都有可能通过网络互相连接形成并行处理群。第三种选择是使用 Linux 系统作为“主机”,提供专门的相关并行处理机(attached parallel processor)。第四种新选择是寄存器内 SIMD 并行,应用于多媒体扩展(MMX)。

并行处理所需要提供的典型硬件环境有:

单处理机上的单个区;

多处理机(SMP)中的单个区;

多区配置

一个处理机(MPP)中的各区 ;

多处理机(SMP 群)中的各区;

逻辑数据库区(在 AIX 第1版的 DB2 并行版 - DB2 PE 中也称之为多逻辑代码或 MLN)

并行计算机具有代表性的应用领域有:天气预报建摸、VLSI电路的计算机辅助设计、大型数据库管理、人工智能、犯罪控制和国防战略研究等,而且它的应用范围还在不断地扩大。并行处理技术主要是以算法为核心,并行语言为描述,软硬件作为实现工具的相互联系而又相互制约的一种结构技术。

算法基本策略

在并行处理技术中所使用的算法主要遵循三种策略:

1、分而治之法:也就是把多个任务分解到多个处理器或多个计算机中,然后再按照一定的拓扑结构来进行求解。

2、重新排序法:分别采用静态或动态的指令词度方式。

3、显式/隐式并行性结合:显式指的是并行语言通过编译形成并行程序,隐式指的是串行语言通过编译形成并行程序,显式/隐式并行性结合的关键就在于并行编译,而并行编译涉及到语句、程序段、进程以及各级程序的并行性。

更多相关知识,请访问 PHP中文网!!

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

FastAPI でリクエストの並列処理と非同期呼び出しを実装する方法 FastAPI でリクエストの並列処理と非同期呼び出しを実装する方法 Jul 29, 2023 am 10:09 AM

FastAPI でリクエストの並列処理と非同期呼び出しを実装する方法 FastAPI は、リクエストをより効率的に処理するのに役立つ並列処理と非同期呼び出しをサポートする高性能 Python Web フレームワークです。この記事では、FastAPI でリクエストの並列処理と非同期呼び出しを実装する方法を紹介し、関連するコード例を示します。リクエストの並列処理 FastAPI でリクエストの並列処理を実装するには、Python の concurrent.futures モジュールを使用して、

PHP開発におけるタスクの並列処理とポーリング処理の扱い方 PHP開発におけるタスクの並列処理とポーリング処理の扱い方 Oct 10, 2023 pm 12:12 PM

タイトル: PHP 開発におけるタスクの並列処理とポーリングの実装 実際の PHP 開発では、タスクの並列処理とポーリングは非常に一般的で重要な操作です。この記事では、PHPでタスクの並列実行やポーリング処理を行う方法を、具体的なコード例を交えながら紹介します。 1. タスクの並列処理 タスクの並列処理とは、複数のタスクを互いにブロックすることなく同時に実行することをいいます。 PHP では、並列処理を実装する一般的な方法がいくつかあります。マルチスレッド並列処理は、マルチスレッドによるタスクの並列処理を実現します。

Pythonでの並列処理 Pythonでの並列処理 Sep 11, 2023 pm 11:49 PM

はじめに 今日のペースの速いデジタル環境では、開発者とデータ サイエンティストにとって、計算が難しいタスクを効率的に完了することが重要です。幸いなことに、Python はその適応性と広範なエコシステムにより、強力な並列処理機能を提供します。困難な問題をより小さく、より管理しやすいアクティビティに分割し、同時に取り組むことで、大幅なパフォーマンスの向上を達成できます。 Python の並列処理機能により、利用可能なコンピューター リソースを利用して、Web スクレイピング、科学シミュレーション、データ分析などのアクティビティをより迅速かつ効率的に実行できるようになります。この記事では、Python での並列処理について説明します。マルチプロセッシング、非同期プログラミング、マルチスレッドなどのさまざまな手法を検討し、それらを効果的に使用する方法を学びます。

Go コルーチンを使用して並列処理を実装するにはどうすればよいですか? Go コルーチンを使用して並列処理を実装するにはどうすればよいですか? Jun 05, 2024 pm 06:07 PM

Go コルーチンを使用して並列処理を実装するにはどうすればよいですか?フィボナッチ数列を並列計算するコルーチンを作成します。コルーチンはチャネルを通じてデータを転送し、並列コンピューティングを実現します。メイン コルーチンは、並列計算の結果を受け取って処理します。

PHP関数の並列処理最適化 PHP関数の並列処理最適化 May 05, 2024 am 10:30 AM

PHP の並列処理機能は Process クラスを通じて実装され、画像処理、データ分析、ファイル変換などの時間のかかるタスクを最適化します。タスクを複数のプロセッサに分散して、完了時間を短縮し、アプリケーションのパフォーマンスを向上させます。

Java エラー: Java 並列処理エラー、処理方法と回避方法 Java エラー: Java 並列処理エラー、処理方法と回避方法 Jun 25, 2023 am 11:44 AM

コンピュータ技術の急速な発展に伴い、大規模なデータ処理のニーズを満たすために、Java 並列処理はますます人気のあるプログラミング方法になっています。ただし、これには、プログラムのパフォーマンスと信頼性に致命的な影響を与える可能性のある Java 並列処理エラーのリスクが伴います。この記事では、Java 並列処理エラーの種類と、それらのエラーの処理方法と回避方法について説明します。 Java 並列処理エラーは、通常、データ競合とデッドロックの 2 つのカテゴリに分類されます。データ競合とは、2 つ以上のスレッドが同時に同じメモリ領域にアクセスして変更することを指します。

Java での非同期プログラミング Java での非同期プログラミング Jun 09, 2023 am 11:33 AM

インターネット技術の継続的な発展に伴い、Web アプリケーションの規模と複雑さはますます高くなり、プログラムのパフォーマンス、拡張性、堅牢性に対する要件もますます高くなっています。非同期プログラミングは、これらの要件を満たすために登場したプログラミング モードの 1 つです。非常に人気のあるプログラミング言語である Java は、非同期プログラミングの豊富なサポートも備えています。この記事では、Java の非同期プログラミングについて簡単に紹介します。非同期プログラミングの概要 非同期プログラミングとは、簡単に言えば、イベントの発生後に対応する操作を実行することです。同期編集と比較して

C# 開発におけるマルチタスクのスケジューリングと並列処理の問題とその解決策に対処する方法 C# 開発におけるマルチタスクのスケジューリングと並列処理の問題とその解決策に対処する方法 Oct 10, 2023 am 08:49 AM

C# 開発におけるマルチタスクのスケジューリングと並列処理の問題と解決策に対処する方法 C# 開発では、マルチタスクのスケジューリングと並列処理に対処することは非常に一般的な要件です。マルチタスクと並列タスクを効率的に処理する方法により、プログラムのパフォーマンスと応答速度が向上します。この記事では、C# のマルチスレッド ライブラリとタスク並列ライブラリを使用してマルチタスクのスケジューリングと並列処理を実装する方法を紹介し、具体的なコード例を示します。 1. マルチスレッド マルチスレッドはマルチタスクを処理する方法であり、C# では Thread クラスを使用してスレッドを作成および開始できます。以下は、

See all articles