OpenMP是由The Board of the OpenMP Architecture Review Board(ARB)提出的一套用于共享内存并行系统的多线程程序设计标准。目前,OpenMP仅支持C、C++和Fortran语言。由于OpenMP是一种共享存储的标准,所以在非共享存储系统上不能使用,如集群(Cluster)(目前在非共享存储系统上并行主要采用MPI)。简而言之,OpenMP就是一种多线程程序设计的标准,适合在个人计算机上进行并行计算。它提供了对并行算法的抽象描述,程序员只需在
超长指令字(VLIW Very Long Instruction Word)是利用一条指令来实现多个操作的并行执行,之所以放在一条指令是为了减少内存访问。通常一条指令多达上百位,有若干操作数,每条指令可以做不同的几种运算。那些指令可以并行是由编译器来选择。通常VLIW机只有一个控制器,每个周期启动一条长指令。长指令被分为几个字段,美俄字段控制相应的部件。由于编译器需要考虑数据相关性,避免冲突,并尽可能利用并行,完成指令调度,所以硬件结构较简单。