串行计算,分为“指令”和“数据”两个部分,在程序执行时“独立地申请和占有”内存空间,所有计算均局限于该内存空间。
并行计算,则将进程相对独立的分配在不同的节点上,由各自独立的操作系统调度,享有独立的CPU和内存资源(内存可共享),进程间通过消息传递实现信息的相互交换。
并行计算机分类:
Flynn分类法
•SISD(单指令流单数据流)系统
•SIMD(单指令流多数据流)系统
•MISD(多指令流单数据流)系统
•MIMD(多指令流多数据流)系统
五种物理机模型: 实际的机器体系结构
— PVP (Parallel Vector Processor, 并行向量机)
— SMP (Symmetric Multiprocessor, 对称多处理机)
— MPP (Massively Parallel Processor, 大规模并行处理机)
— COW (Cluster of Workstation, 工作站机群)
— DSM (Distributed Shared Memory, 分布共享存储多处理机)
https://computing.llnl.gov/tutorials/parallel_comp/
Introduction to Parallel Computing
Blaise Barney, Lawrence Livermore National Laboratory
Abstract
Table of Contents
-
Overview
- What is Parallel Computing?
- Why Use Parallel Computing?
-
Concepts and Terminology
- von Neumann Computer Architecture
- Flynn's Classical Taxonomy
- Some General Parallel Terminology
-
Parallel Computer Memory Architectures
- Shared Memory
- Distributed Memory
- Hybrid Distributed-Shared Memory
-
Parallel Programming Models
- Overview
- Shared Memory Model
- Threads Model
- Message Passing Model
- Data Parallel Model
- Other Models
-
Designing Parallel Programs
- Automatic vs. Manual Parallelization
- Understand the Problem and the Program
- Partitioning
- Communications
- Synchronization
- Data Dependencies
- Load Balancing
- Granularity
- I/O
- Limits and Costs of Parallel Programming
- Performance Analysis and Tuning
-
Parallel Examples
- Array Processing
- PI Calculation
- Simple Heat Equation
- 1-D Wave Equation
- References and More Information
https://computing.llnl.gov/tutorials/parallel_comp/
Flynn's Classical Taxonomy
- There are different ways to classify parallel computers. One of the more widely used classifications, in use since 1966, is called Flynn's Taxonomy.
- Flynn's taxonomy distinguishes multi-processor computer architectures according to how they can be classified along the two independent dimensions ofInstructionandData. Each of these dimensions can have only one of two possible states:SingleorMultiple.
- The matrix below defines the 4 possible classifications according to Flynn:
S I S D
Single Instruction, Single Data
|
S I M D
Single Instruction, Multiple Data
|
M I S D
Multiple Instruction, Single Data
|
M I M D
Multiple Instruction, Multiple Data
|
What is Parallel Computing?
-
Traditionally, software has been written forserialcomputation:
- To be run on a single computer having a single Central Processing Unit (CPU);
- A problem is broken into a discrete series of instructions.
- Instructions are executed one after another.
- Only one instruction may execute at any moment in time.
In the simplest sense,parallel computingis the simultaneous use of multiple compute resources to solve a computational problem:
- To be run using multiple CPUs
- A problem is broken into discrete parts that can be solved concurrently
- Each part is further broken down to a series of instructions
- Instructions from each part execute simultaneously on different CPUs
-
The compute resources can include:
- A single computer with multiple processors;
- An arbitrary number of computers connected by a network;
- A combination of both.
-
The computational problem usually demonstrates characteristics such as the ability to be:
- Broken apart into discrete pieces of work that can be solved simultaneously;
- Execute multiple program instructions at any moment in time;
- Solved in less time with multiple compute resources than with a single compute resource.
分享到:
相关推荐
Introduction to Parallel Computing 2nd PDF 英文版
Introduction to Parallel Computing 并行计算入门资料
Introduction to Parallel Computing, Second Edition By Ananth Grama, Anshul Gupta, George Karypis, Vipin Kumar
Introduction to Parallel Computing,2nd.与图书馆里的原版书校验过,完全一致。Parallel computing课程的必备教材。PDF格式,比CHM格式更方便做读书笔记和比较。
Addison Wesley - An Introduction to Parallel Computing 2nd EdAddison Wesley - An Introduction to Parallel Computing 2nd Ed
Introduction to Parallel Computing From Algorithms toProgramming
CUDA for Engineers An Introduction to High Performance Parallel Computing
CUDA for Engineers An Introduction to High-Performance Parallel Computing 英文azw3 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除
Introducation to Parallel Computing is a complete end-to-end source of information on almost all aspects of parallel computing from introduction to architectures to programming paradigms to algorithms...
并行计算导论 第2版An Introduction to Parallel Programming英文第1、2版,中文第2版。
CUDA for Engineers An Introduction to High-Performance Parallel Computing 英文epub 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除
Introduction to Parallel Programming Introduction to Parallel Programming
电子书《CUDA for Engineers An Introduction to High-Performance Parallel Computing》 学习CUDA编程的好书!
并行计算领域经典的通俗易懂的教程IPP,网络上很难找到官方课后习题答案的,全部答案文件包含文本答案和代码。该答案是第一章的答案。PDF是最终定稿的出版社版本的PDF(非扫描),可复制文字。
CUDA Programming A Developer's Guide to Parallel Computing with GPUs,英文版