并行算法研究现状及去相关问题综述
- 格式:docx
- 大小:35.55 KB
- 文档页数:9
磁共振新技术DKI和IVIM在研究现状一、内容简述随着磁共振成像技术的不断发展,数字图像处理技术在磁共振成像中的应用越来越广泛。
其中双维弥散加权成像(DKI)和内插反转恢复变换(IVIM)是两种常见的数字图像处理技术,它们在磁共振成像研究中具有重要的应用价值。
本文将对这两种新技术的研究现状进行简要介绍,以期为相关领域的研究者提供参考。
DKI是一种基于梯度方向的像素分布分析方法,通过计算像素点的梯度方向来描述组织结构的分布信息。
DKI在脑功能连接、脑灰质异型和白质纤维束追踪等方面具有广泛的应用。
近年来随着算法的优化和硬件设备的升级,DKI在磁共振成像研究中的应用逐渐受到关注。
IVIM是一种基于傅里叶变换的图像重建方法,通过对原始图像进行傅里叶变换和逆变换,实现对图像的重建。
IVIM在脑部疾病的诊断和研究中具有较高的准确性和可靠性。
然而由于IVIM重建过程复杂且计算量大,限制了其在实际临床应用中的推广。
近年来研究人员针对IVIM的一些问题进行了改进,如采用并行计算、引入先验信息等方法,以提高IVIM的重建效率和质量。
DKI和IVIM作为磁共振成像领域的重要数字图像处理技术,在脑功能连接、脑结构分析和疾病诊断等方面具有广泛的研究前景。
随着技术的不断进步和应用场景的拓展,这两种技术在未来的研究中将发挥更加重要的作用。
1. 背景介绍随着磁共振成像技术的不断发展,越来越多的研究者开始关注到一种新型的磁共振成像技术——弥散加权成像(DWI)和梯度回波成像(bMRI)。
这两种技术在过去的几年里取得了显著的进展,不仅在临床诊断中得到了广泛应用,而且在基础研究领域也取得了重要突破。
本文将对DKI和IVIM这两种磁共振新技术的研究现状进行综述,以期为相关领域的研究者提供参考。
磁共振成像(MRI)是一种利用磁场和射频脉冲来获取人体内部结构信息的无创性检测技术。
自20世纪70年代问世以来,MRI已经在临床诊断、生物医学工程、神经科学等领域取得了显著的成果。
摘要图像分割是把图像划分为有意义的若干区域的图像处理技术,分割技术在辅助医学诊断及运动分析、结构分析等领域都有着重要的研究价值和广泛的应用发展前景。
在阅读大量文献的基础上,本文对图像分割技术的理论基础、发展历程及图像分割方法的热点、难点问题进行了分类综述,对不同分割算法优缺点进行了总结和归纳,并对图像分割的发展趋势进行了初步的展望和预测。
在此基础上,为了对图像分割理论有更直观的认识,本文选取并行边界算法和分水岭算法这两种方法,用MATLAB软件进行了基础的仿真,并对结果进行了分析和总结,本文重点对一些近年来新兴的算法,比如水平集(Level-set)算法、马尔科夫随机场算法(Markov)、模糊算法、遗传算法、数学形态学算法等进行了概略性的探讨,对这些新兴算法的特点、原理、研究动态进行了分析和总结。
关键词:图像分割;边界;区域;水平集;马尔科夫AbstractImage segmentation is an image processing technology that divides the image into a number of regions. Image segmentation has very important significance in supporting medical diagnosis, motion analysis, structural analysis and other fields.Based on recent research, a survey on the theory and development of image segmentation, hot and difficult issues in image segmentation is given in this article. And describes the characteristics of each method as well as their respective advantages and disadvantages in image segmentation .This article introduces and analyzes some basic imaging and image segmentation methods in theory and describes the development trends of medical image segmentation. To have a better understanding of image segmentation, I use MATLAB software to stimulate on images about the parallel edge algorithms and watershed algorithm. And the analysis of the segmentation results is given in the article.This article introduces and analyzes the new algorithms in recent years such as Level-set algorithm, Markov algorithm, Fuzzy algorithm, Genetic algorithm and Morphological algorithm. In this paper, the features, theory and research trends of these algorithms are analyzed and summarized.Keywords: Image segmentation; Border; Area;Level-set;Markov第1章引言1.1 图像分割的背景和重要作用图像是传达信息的一种方式,图像中含有大量的有用信息,理解图像并从图像中抽取信息以用来完成其他工作是数字图像技术中一个重要的应用领域,而理解图像的第一步就是图像的分割。
分布式协同优化的研究现状与展望分布式协同优化是当前信息技术与智能化发展背景下的重要研究方向,旨在通过将分布式计算与协同优化相结合,提高解决复杂问题的效率和准确性。
本文将对分布式协同优化的研究现状进行综述,并展望未来可能的发展方向。
一、研究现状1.1 分布式协同优化的概念与背景分布式协同优化是指将多个分布式计算节点协同工作,共同解决复杂的优化问题。
它基于分布式计算和协同优化两个领域的理论和技术,旨在提高优化问题的求解效率和解决质量。
随着信息技术与智能化的快速发展,分布式计算和协同优化技术在各个领域得到广泛应用。
分布式计算能够通过将计算任务分解为多个子任务,分布在不同的计算节点上进行并行计算,大大提高计算效率。
而协同优化则通过多个个体之间的信息交流与合作,利用集体智慧来解决优化问题。
1.2 分布式协同优化的研究方法在分布式协同优化的研究中,主要存在以下几种常见的方法:(1)基于解的分解与合成:将优化问题的解空间分解为多个子空间,分布在不同的计算节点上进行优化,然后将各个子问题的优化结果进行合成,得到最终解。
(2)基于种群智能的协同优化:利用种群智能算法,如遗传算法、粒子群算法等,将任务分配给多个分布式计算节点上的个体,通过交流信息和合作搜索,最终获得全局最优解。
(3)基于机器学习的协同优化:利用机器学习算法,通过对历史数据和经验的学习,优化问题的解决过程和策略,提高优化算法的性能和效果。
(4)基于合作博弈的协同优化:将分布式计算节点看作是博弈参与者,在协同优化的过程中,通过博弈论中的合作博弈模型来分析节点之间的合作关系和策略选择。
二、展望分布式协同优化的研究具有重要的理论和应用价值,未来的研究方向和发展趋势主要体现在以下几个方面:2.1 面向大规模系统的分布式协同优化随着云计算和大数据技术的快速发展,未来优化问题将变得更加复杂和庞大。
传统的优化算法往往无法应对大规模系统的求解,因此需要研究基于分布式协同优化的大规模系统优化技术,以提高求解效率和解决质量。
深度学习在天气预报领域的应用分析及研究进展综述深度学习在天气预报领域的应用分析及研究进展综述1. 引言天气对人们的生活和经济活动有着重要影响,准确的天气预报对于预防自然灾害、农业生产、交通运输等方面至关重要。
然而,天气预报是一个复杂的问题,涉及到大量的数据和气象知识。
近年来,随着深度学习技术的崛起,人们开始通过应用深度学习算法来提高天气预报准确性和效率。
本文将对深度学习在天气预报领域的应用进行分析,并综述相关研究的最新进展。
2. 深度学习在天气预报中的应用深度学习是一种机器学习的方法,通过多层神经网络模拟人脑的工作原理,可以从大量的数据中自动学习并提取特征。
在天气预报中,深度学习可以应用于气象数据的分析预测、模式识别和天气预报模型的改进等方面。
2.1 气象数据的分析预测深度学习可以通过对大量历史气象数据的分析学习,提取出不同地区的气象特征,并预测未来的天气趋势。
通过建立深度学习模型,可以自动地学习并感知气象数据间的复杂关系,从而提高天气预报的准确性。
例如,可以利用深度学习算法对气象数据进行回归分析,预测未来一段时间内的温度、降水量等指标。
2.2 模式识别深度学习可以应用于气象数据的模式识别,通过学习气象数据的时空分布和变化规律,识别不同气象模式之间的联系。
例如,可以利用深度学习算法对多个地区的气象数据进行聚类分析,发现并描述不同的气象模式。
这对于理解和预测气象变化过程有着重要的意义。
2.3 天气预报模型的改进深度学习可以应用于天气预报模型的改进,通过学习气象数据的非线性关系和高维特征,提高模型的预测能力。
传统的天气预报模型往往依赖于经验和气象知识,而深度学习可以自动地学习并发现数据中的隐藏规律。
例如,可以利用深度学习算法对传统的数值预报模型进行改进,提高天气预报的精确度和时效性。
3. 研究进展综述近年来,深度学习在天气预报领域的研究取得了一些重要的进展。
许多学者利用深度学习算法对气象数据进行建模和预测,取得了较好的效果。
粒子群优化算法研究现状综述whitewatercoffee@Kennedy与Eberhart通过对鸟群觅食过程的分析并模拟,于1995年最先提出了原始的PSO算法[15][16]。
随后,Shi.Y和Eberhart分析了PSO算法的参数选择,并将一个重要的参数――惯性权重引入PSO[17][18],并相继提出了线性递减惯性权重LDIW[18]、模糊惯性权重FIW[21]和随机惯性权重RIW[25],文献[26]讨论了一类非线性惯性权重策略。
其他的研究者也提出了一些不同的惯性权重策略,这些改进的主要特点是:将可以表征算法优化进程的某些变量(如平均粒距、分布商等),通过对惯性权重的自适应调节,以平衡算法的全局探测与局部开发能力[27][28][29]。
除了对惯性权重的关注外,文献[22][30]对加速度系数、边界条件等参数的设置,也进行了相关的研究。
在算法的数学分析上,与GA算法相比,PSO算法尚缺乏严格的数学基础。
粒子群系统本身是非线性离散时间系统,目前主要是将其简化为确定型线性离散时间系统,通过对单个粒子在一维或多维上的运动规律的分析,研究粒子运动的内在特性。
如Clerc对算法的参数选择和收敛性进行了初步的数学分析,引入收敛因子以保证算法的收敛[19];Trelea在文献[31]中也对参数选择和收敛性做了一定的分析;Ozcan和Mohan对原始PSO算法进行了数学分析,指出停留在离散时间状态的粒子轨迹是连续的正弦波形,粒子不断从一个幅度与频率的正弦波跳跃到另外一个幅度与频率的正弦波上,如此在解空间中寻找更优值[32][33]。
与其它优化算法一样,PSO算法同样存在着收敛速度和收敛质量之间的矛盾。
为了获得更好的优化性能,研究者们通过借鉴其它优化技术的思想,提出了各种改进的PSO算法。
Angeline通过引入GA中的选择机制得到混合PSO(HPSO)[34],该算法提高了收敛速度,但也增加了陷入局部极值的可能,尤其在优化Griewank函数时效果较差;Lovbjerg和Rasmussen等提出了具有繁殖和子群的杂交PSO算法[35],将GA中的交叉机制引入PSO,由于后代选择并不是基于适应度值,防止了基于适应度值选择对那些多局部极值的函数优化时带来的潜在的问题,从理论上讲繁殖法可以更好地搜索粒子间的空间,这对于优化多模态函数很有利,但是对于单模态函数优化效果较差;文献[36]将变异机制引入PSO,随着迭代的进行对粒子位置施加线性递减的高斯扰动,有效的避免了粒子陷入局部极值的可能,同时扩大了粒子的搜索空间,提高了算法发现最优值的概率。
基于关联规则的Apriori改进算法的研究综述关联规则挖掘是数据挖掘领域中的重要研究方向,在商品推荐、市场营销等领域具有广泛应用。
Apriori算法是关联规则挖掘中最为经典的算法之一,具有易于实现和广泛适用的特点。
但是,Apriori算法在处理大规模数据时面临着计算复杂度高和存储空间大的问题。
近年来,对Apriori算法的改进成为了研究热点,主要包括以下几个方面的改进:1. 改进剪枝策略剪枝策略是Apriori算法中的重要环节,可以大幅度减少不必要的计算。
改进Apriori算法的研究中,常常着眼于改进剪枝策略。
例如,Fast Apriori算法提出了一种新的剪枝策略,它针对频繁项集中的非频繁子集,通过计算非频繁子集的支持度来剪枝。
该算法相比于传统的Apriori算法,能够减少剪枝次数,提高计算速度。
2. 优化候选项集生成Apriori算法中,每次必须生成所有的候选项集,这会导致计算复杂度高和存储空间大。
为了解决这个问题,一些研究者提出了优化候选项集生成的方法。
例如,Eclat算法通过利用垂直数据格式,能够避免反复地生成候选项集,从而减少计算量。
3. 基于分区的并行处理Apriori算法中的计算量非常大,尤其是在大规模数据处理时。
为了提高Apriori算法的计算效率,一些研究者提出了基于分区的并行处理方法。
该方法将数据进行分区处理,并利用多个处理节点并行地处理每个分区,从而大大提高了算法的计算效率。
4. 基于关键字压缩的存储优化Apriori算法在处理大规模数据时,需要占用大量存储空间。
为了优化存储,一些研究者提出了基于关键字压缩的存储优化方法。
该方法利用关键字编码压缩数据,从而大幅度减少算法的存储空间。
综上所述,Apriori算法的改进研究主要集中在剪枝策略、候选项集生成、并行处理和存储优化等方面。
这些改进方法在不同的数据挖掘场景下具有不同的适用性,可以根据具体情况选择最适合的算法。
求解TSP问题算法综述一、本文概述本文旨在全面综述求解旅行商问题(Traveling Salesman Problem, TSP)的各种算法。
TSP问题是一个经典的组合优化问题,自提出以来就引起了广泛的关注和研究。
该问题可以描述为:给定一系列城市和每对城市之间的距离,求解一条最短的可能路线,使得一个旅行商从某个城市出发,经过每个城市恰好一次,最后返回出发城市。
本文将首先介绍TSP问题的基本定义、性质及其在实际应用中的重要性。
接着,我们将综述传统的精确算法,如动态规划、分支定界法等,以及它们在求解TSP问题中的优缺点。
然后,我们将重点介绍启发式算法和元启发式算法,包括模拟退火、遗传算法、蚁群算法等,这些算法在求解大规模TSP问题时表现出良好的性能和效率。
本文还将探讨近年来新兴的机器学习算法在TSP问题求解中的应用,如深度学习、强化学习等。
我们将对各类算法进行总结和评价,分析它们在不同场景下的适用性和性能表现。
我们也将展望TSP问题求解算法的未来发展方向,以期为相关领域的研究和实践提供有益的参考和指导。
二、经典算法求解旅行商问题(TSP)的经典算法多种多样,每种算法都有其独特的优缺点和适用场景。
本节将对一些代表性的经典算法进行综述。
暴力穷举法(Brute-Force):暴力穷举法是最简单直观的TSP求解算法。
其基本思想是生成所有可能的旅行路径,计算每条路径的总距离,然后选择最短的那条。
虽然这种方法在理论上可以找到最优解,但由于其时间复杂度为O(n!),对于大规模问题来说计算量极大,因此并不实用。
动态规划(Dynamic Programming, DP):动态规划是一种通过将问题分解为更小的子问题来求解的优化方法。
对于TSP问题,DP算法可以将一个大循环中的多个子问题合并成一个子问题,从而减少重复计算。
然而,TSP的DP算法仍面临“维度灾难”的问题,即当城市数量增多时,所需存储空间和计算时间呈指数级增长。
多目标优化问题的研究概述摘要:本文在查阅相关资料的基础上对多目标优化问题进行了一般性描述,详细介绍了实际生活中存在的多目标优化问题以及解决多目标优化题的几种典型算法, 讨论了各个算法存在的优缺点。
关键词:多目标优化; 进化算法; 粒子群算法; 蚁群算法; 模拟退火生活中, 许多问题都是由相互冲突和影响的多个目标组成。
人们会经常遇到使多个目标在给定区域同时尽可能最佳的优化问题, 也就是多目标优化问题。
优化问题存在的优化目标超过一个并需要同时处理, 就成为多目标优化问题(multi-objective optimization-problem, MOP)。
多目标优化问题在工程应用等现实生活中非常普遍并且处于非常重要的地位,这些实际问题通常非常复杂、困难,是主要研究领域之一。
自20世纪60年代早期以来,多目标优化问题吸引了越来越多不同背景研究人员的注意力。
因此,解决多目标优化问题具有非常重要的科研价值和实际意义。
实际中优化问题大多数是多目标优化问题,一般情况下,多目标优化问题的各个子目标之间是矛盾的,一个子目标的改善有可能会引起另一个或者另几个子目标的性能降低, 也就是要同时使多个子目标一起达到最优值是不可能的, 而只能在它们中间进行协调和折中处理, 使各个子目标都尽可能地达到最优化。
其与单目标优化问题的本质区别在于,它的解并非唯一, 而是存在一组由众多Pareto最优解组成的最优解集合, 集合中的各个元素称为Pareto最优解或非劣最优解。
1 多目标优化问题的描述多目标优化问题用文字描述为D个决策变量参数、N个目标函数、m+n个约束条件组成一个优化问题,决策变量与目标函数、约束条件是函数关系。
在非劣解集中决策者只能根据具体问题要求选择令其满意的一个非劣解作为最终解。
多目标优化问题的数学形式可以如下描述:min y=f(x)=[f1(x),f2(x),…,fn(x)]n=1,2,…,Nst g i (x )≤0 i =1,2,…,mℎj (x )=0 j =1,2,…,k x =[x 1,x 2,x d ,…,x D ]x d_min ≤x d ≤x d_max d =1,2,…,D其中: x 为D 维决策向量, y 为目标向量,N 为优化目标总数;g i (x)≤0为第i 个不等式约束,ℎj (x)=0为第j 个等式约束, fn(x)为第n 个目标函数;X 是决策向量形成的决定空间,Y 是目标向量形成的目标空间。
并行算法研究现状及其相关问题综述 并行程序的编程模型、运行环境、调试环境等都要比串行程序复杂得多。提供良好的高性能计算开发环境,一直是学术界和工业界所追求的目标。这里的开发环境既包括并行计算机体系结构,计算机网络拓扑结构等硬件环境;也包括并行程序的开发模式,网络通信协议和通信方式等软件环境。并行算法研究要以硬件,即并行计算机为依托,并行计算机性能的发挥要依靠优秀并行算法的设计的实现。 所以本文,并行算法研究现状及其相关问题的综述,将对与并行紧密相关的并行计算机体系结构,并行程序开发环境,通信技术三个问题依次进行讨论。
一、 并行计算机体系结构 “ 并行计算机是由一组处理单元组成的;这组处理单元通过相互之间的通 信与协作,以更快的速度共同完成一项大规模的计算任务。”这就是并行计算机 的经典定义。这个定义并没有包含更多的细节,但是从中我们也不难看出并行计算机的两个最主要的组成部分:计算节点和节点间的通信与协作机制。 并行计算机体系结构的发展变化非常快,而这种变化主要体现在计算节点 性能的提高以及节点间通信技术的改进两方面。长期以来,超大规模集成电路技 术一直在按照摩尔定律高速发展,芯片的元件密度以及时钟频率在不断提高,从 而大大提高了作为并行计算机基本处理单元的微处理器的性能。而在通信技术 方面, 传统的交叉开关的切换速度不断提高,而新的高速网络技术也不断应用 到并行计算机中,从而大大提高了节点间通信的速率。
(一)体系结构的分类 1972年,Micheal Flynn根据指令和数据流的概念对计算机的体系结构进行了分类,这就是所谓的Flynn分类法。 Flynn将计算机划分为四种基本类型,即SISD、MIMD、SIMD、MISD。 传统的顺序执行的计算机在同一时刻只能执行一条指令(即只有一个控制 流)、处理一个数据(即只有一个数据流),因此被称为单指令流单数据流计算 机(Single Instruction Single Data即SISD计算机)。而对于大多数并行计算机而言,多个处理单元都是根据不同的控制流程执行不同的操作,处理不同的 数据,因此,它们被称作是多指令流多数据流计算机,即MIMD(Multiple Instruction Multiple Data)计算机。 曾经在很长一段时间内成为超级并行计算机主流的向量计算机除了标量处 理单元之外,最重要的是具有能进行向量计算的硬件单元。在执行向量操作时, 一条指令可以同时对多个数据(组成一个向量)进行运算,这就是单指令流多数 据流(Single Instruction Multiple Data,SIMD)的概念。因此,我们将向量 计算机称SIMD计算机。 第四种类型即所谓的多指令流单数据流(Multiple Instruction Single Data)计算机。在这种计算机中,各个处理单元组成一个线性阵列,分别执行不 同的指令流,而同一个数据流则顺次通过这个阵列中的各个处理单元。这种系统 结构只适用于某些特定的算法。 相对而言,SIMD和MISD模型更适合于专用计算。 在并行计算机中,MIMD模型最为通用,SIMD次之,而MISD最少用。
(二)体系结构的发展过程 并行计算机40年的发展过程中出现过许多著名的机器。 60年代初期,由于晶体管以及磁芯存储器的出现,处理单元变得越来越小, 存储器也更加小巧和廉价。这些技术发展的结果导致了并行计算机的出现,并迎 来了它的第一个黄金时代。 这一时期的并行计算机多是规模不大的共享存储多处理器系统,不过,当时 它们可是被当作大型主机(Mainframe)来看待的。Burroughs B5000, D825以及IBM System 360是这一时期的典型代表。其中,IBM System 360在过渡到370系列时引入了多处理机的概念,而CDC 6600则在中央处理器与多个I/O处理器 之间采用了异步共享存储器的机制。与这些机器有所不同的是,RW400则是最早 采用消息传递机制的大型主机。 到了60年代末期,同一个处理器开始设置多个功能相同的功能单元,流水 线技术也出现了。与单纯提高时钟频率相比,这些并行特性在处理器内部的应用 大大提高了并行计算机系统的性能。 伊利诺依大学和Burroughs公司此时开始了一项庞大的工程,即Illiac IV 计划。他们认为,当时已有的技术已经走到尽头了,因此决定另辟蹊径。根据这 一规划,Illiac IV 应该是一台64个CPU的SIMD主机系统,它涉及到从最底层 的硬件技术、体系结构、I/O设备、操作系统、程序设计语言直至应用程序在内 的众多研究课题。不过,当一台规模大大缩小了的16 CPU系统终于在1975年露 出了它的庐山真面目的时候,整个计算机界已经发生了巨大的变化。 首先是存储系统概念的彻底革新。虚拟存储和缓存这两个概念现在已经应 用在了几乎所有的计算机系统里,但在70年代初期,它们却带来一场真正的革 命。 IBM 360/85系统与360/91是属于同一系列的两个机型,360/91的主频高于360/85,所选用的内存速度也较快,并且采用了动态调度的指令流水线;但是,360/85的整体性能却高于360/91,唯一的原因就是前者采用了缓存技术,而后者则没有。 其次是半导体存储器开始代替磁芯存储器。最初,半导体存储器只是在某些 机器中被用作缓存,而CDC 7600则率先全面采用这种体积更小、速度更快、可以直接寻址的半导体存储器,磁芯存储器从此退出了历史舞台。与此同时,集成 电路也出现了,并迅速应用到了计算机中。元器件技术的这两大革命性突破,使 得Illiac IV的设计者们在底层硬件以及并行体系结构方面提出的种种改进都 大为逊色。 Illiac IV原本是想解决数值计算中向量运算密集的问题的,不过,这个任 务却是由这一时期诞生的最早的向量流水线计算机CDC STAR 100完成的。而到 了1976年CRAY 1问世以后,一个长达15年的新时代开始了,向量计算机从此牢牢地控制着整个高性能计算机市场。CRAY 1对所使用的逻辑电路进行了精心 的设计,采用了我们如今称为RISC的精简指令集,还引入了向量寄存器,以完成向量运算。这一系列全新技术手段的使用,使CRAY 1的主频达到了令时人不可思议的80 MHz。 微处理器的出现则使并行计算机的体系结构迈出了另一大步。最早的微处 理器性能并不是很理想,但是随着机器的字长从4位、8位、16位一直增加到32位,其性能也随之显著提高。正是因为看到了微处理器的这种潜力,卡内基梅隆大学开始在当时流行的DEC PDP 11小型计算机的基础上进行共享存储多处 理器系统的研究。C.mmp就是这一研究项目的具体成果。它是一台由16个PDP 11/40处理机通过交叉开关与16个共享存储器模块相连接而成的。 从80年代开始,微处理器技术一直在高速前进。稍后又出现了非常适合于SMP方式的总线协议,而伯克利加州大学则对总线协议进行了扩展,提出了Cache 一致性问题的处理方案。从此,C.mmp开创出的共享存储多处理器之路越走越 宽;到了10年之后的今天,这种体系结构已经基本上统治了服务器和桌面工作 站市场。 同一时期,基于消息传递机制的并行计算机也开始不断涌现。80年代中期, 加州理工成功地将64个i8086/i087处理器通过超立方体互连结构连结起来。此 后,便先后出现了Intel iPSC系列、INMOS Transputer系列,Intel Paragon以及IBM SP的前身Vulcan等基于消息传递机制的并行计算机。 向量计算机渐渐衰落下去。数据并行方式的计算机在相对沉寂了一段时间 之后,到了80年代中期又开始逐渐复兴。这一时期数据并行方式的计算机主要 有Goodyear MPP,Thinking Machines的CM 1、CM 2以及MasPar等。在互连机 制方面,这一代机器不仅仅限制在相邻的节点之间,而是可以根据需要在任意节 点之间进行通信。CM 2则更是具备了大量的浮点单位并行(Bit parallel)运算单元。 80年代末到90年代初,共享存储器方式的大规模并行计算机又获得了新的 发展。IBM公司在RP 3计划中希望能将大量早期RISC微处理器通过蝶形互连网 络连结起来。而BBN公司则先后推出了两个型号的这类机器,即采用Motorola 68000芯片的BBN Butterfly以及采用88100芯片的TC2000。通过这些尝试,人 们开始考虑如何才能在实现共享存储器缓存一致的同时,使系统具有一定的可 扩展性(Scalability)。90年代初期,斯坦福大学提出了DASH计划,它通过维护一个保存有每一缓存块位置信息的目录结构来实现分布式共享存储器的缓存一致性。后来,IEEE在此基础上提出了缓存一致性协议的标准。MIT的Alewife 计划则试图简化为保持缓存一致性而带来的硬件开销。 90年代以来,主要的几种体系结构开始走向融合,这种趋势有其内在的必 然性。为了获得更好的性能,在Alewife以及FLASH等共享存储类型的项目中也 引入了消息传递机制;而属于数据并行类型的CM 5除大量采用商品化的微处理 器以外,也允许用户层的程序传递一些简单的消息;CRAY T3D是一台NUMA结构 的共享存储型并行计算机,但是它也提供了全局同步机制、消息队列机制,并采 取了一些减少消息传递延迟的技术;Meiko CS 2采用的是消息传递机制,但是, 一个节点上用户程序虚地址空间内的数据却可以直接复制到另一个节点上另一 个程序的虚地址空间里去,实际上这正是共享地址空间机制的特点。 不过IBM近年来大获成功的SP 1、 SP 2系列机群系统走的则是另外一条路 线。在这些系统中,各个节点采用的都是标准的商品化Unix工作站(RS 6000), 它们之间通过高速网络连接起来。各节点内存系统之间没有多少联系,网络连接 的可靠性也不高,面向的是通用的应用领域。因此,从总体上说,SP 1、SP 2基本上属于消息传递型系统。 目前的并行计算机系统主要有四类:第一类是多向量处理系统, 如Cray YMP 90、NEC SX 3 和Fujitsu VP 2000 等;第二类是基于共享存储的多处理机(SMP) 系统,如SGI Power Challenge、曙光1号等;第三类是基于分布存储的大模并行处理(MPP)系统,如Intel Paragon、IBM SP2、曙光1000等;第四类是基于RISC 工作站或高档微机通过高速互连网络连接而构成的机群计算机系统,如清华同 方探索集群计算机等。 展望 实现上述第一和第三类系统由于受研制费用高、售价高等因素的影响,其市 场受到一定的限制。第二类系统由于共享结构的限制,系统的规模不可能很大。 由于机群系统计算机具有投资风险小、可扩展性好、可继承现有软硬件资源和开 发周期短、可编程性好等特点,目前已成为并行处理的热点和主流。据专家预测:“未来的高性能计算机和超级服务器都将基于机群系统结构”。 二、 并行程序开发环境 目前比较流行的高性能计算系统,大体可以分为两类:一类是共享内存系统(SMP),如IBM的P690,HP的SuperDome等,其特点是多个处理器拥有物理上共享的内存;一类是分布存储系统(DMP),如MPP和集群系统,其特点是系统由多个物理上分布的结点组成,每个结点拥有自己的内存,结点通过高速以太网或专用高速网络连接。下面将介绍这两类系统上的开发工具。