(1)并行计算机的设计
  包括本并行计算机的结构设计、互联拓扑、网络通信等。设计并行计算机重要的一点要考虑处理机数目的按比例增长(即可扩展性)及支持快速通信及处理机间的数据共享等。

  (2)有效算法的设计
  如果没有有效的并行算法,并行计算机无法使用,而并行算法的设计完全不同于串行算法的设计,不同的并行计算机的算法设计不同,只有将不同的并行计算机与不同的实际问题相结合,才能设计出有效的并行算法。主要研究内容包括并行计算模型、并行算法的一般设计方法、基本设计技术和一般设计过程,并讨论一些数值并行算法与非数值并行算法的设计。

  (3)评价并行算法的方法
  对于给定的并行计算机及运行在上面的并行算法,需要评价运行性能。性能分析需解决的问题:如何利用基于并行计算机及其相适应的并行算法去快速地解决问题,及如何有效地利用各个处理器。研究内容包括结合机器与算法,提出相应的性能评测指标,为设计高效的并行算法提供依据。

  (4)并行计算机语言
  与传统的机器语言不同,并行计算机语言依赖于并行计算机,并行计算机语言必须简洁,编程容易,可以有效地实现,目前的语言有:PVM、MPI、HPF等,而且新的编程语言于编程模式正在不断地出现。

  (5)并行编程环境与工具
  为了使编程容易,必须开发综合的编程环境与工具,且能达到两个目的:并行计算机的底层机构对用户透明;为用户提供设计与开发程序所需要的调试器与模拟器等工具,

  (6)并行程序的可移植性
  可移植性为并行程序设计的主要问题,要求在一台并行机上开发的程序不加修改或进行少量修改即可在另一台计算机上运行。这一点为目前受到了广泛关注的重要课题。

  (7) 并行计算机的自动编程
  可否设计一个并行化编译器,使用户的串行程序通过并行化编译器编译,直接可在并行机上运行。到目前为此,这种编译器还不存在,而仅有一些半自动并行化编译器。