Supercomputing and Parallel Computing Research Groups
Note: I've moved on to
another job, and I can no
longer afford the time to keep this site updated. I recommend IEEE's
ParaScope as a good alternative.
Academic research groups working in the field of
supercomputing and parallel computing.
ABCPL
- An object-Based Concurrent Language. Model of concurrency based on parallel active objects.
Adl
- Data parallel functional programming languages for distributed memory architectures.
Adsmith
- Object-Based DSM Environment on PVM.
Alewife
- Large-scale multiprocessor with shared memory and message passing.
AMDC
- Active-Message Driven Computing. Computational model and system based on computation at abstract locations, and built on active messages.
AM
- Active Messages. Simple primitives exposing full hardware performance to higher communication layers.
APAR
- Parallel Architectures group. Portable parallel programming environment, parallel 3D terrain analysis and visualization.
APE/Quadrics
- High performance simulations of
lattice gauge theories and QCD.
AppLeS
- Application Level Scheduling. Scheduling agents for resource control on production heterogeneous systems.
Automap
- Task parallel coordination language for dynamic applications.
Avalanche
- Multiprocessor with distributed shared memory and message passing.
Aztec
- Iterative sparse linear solver for unstructured sparse matrics.
BSP
- Bulk Synchronous Parallel model research group.
C4
- Canonical Classes for Concurrency Control. C++ classes for parallel programming.
CAMAS
- Computer Aided Migration of Applications System. Tools to parallelize existing dusty deck programs.
CAPP
- Center for Applied Parallel Processing. Scalable algorithms for solving Grand Challenge problems.
CAP
- Parallel object stores, I/O, languages and compiler techniques, visualisation, text retrieval, linear algebra, MPI.
CarlOS
- A software multiprocessor with distributed shared memory.
Cashmere
- Coherence algorithms for shared memory architectures.
CC++
- Parallel programming language based on C++.
Chant
- A talking threads package -- lightweight threads communicating between processors.
CHAOS
- Efficient multiprocessor libraries for irregular scientific problems (CHAOS++) and parallel I/O (Jovian).
Chaos
- Multicomputer interconnection network routing hardware, simulator, and analysis.
Cid
- Parallel extension of C that provides a programming model of MIMD threads plus shared objects.
Cilk
- Efficient execution of multithreaded computations.
Code
- Visual parallel programming system.
Converse / PPL
- Converse is a portable runtime system supporting interoperable parallel languges, including the Charm++ object-oriented language.
CRL
- C Region Library. All-software distributed shared memory system.
CSAG
- Concurrent Systems Architecture Group. Fine-grained massively-parallel computer systems (
Concert System).
CVA
- Concurrent VLSI Architecture. Fine-grained concurrent computing mechanisms.
CVM
- Coherent Virtual Machine. Multi-protocol, multi-threaded, fault-tolerant, software distributed memory system.
D System
- Tools for machine-independent parallel programming (Fortran D).
DDD
- Dynamic Distributed Data. Parallel programming model based on dynamic graph-like datastructures.
DDM
- Data Diffusion Machine. Scalable cache-only virtual shared memory architecture.
DICE
- Direct Interconnection of Computing Elements. COMA for commercial servers.
DIPC
- Distributed InterProcess Communication. Parallel processing primitives for Linux, including distributed shared memory.
Dome
- Distributed Object Migration Environment. Programming using distributed objects on a heterogeneous network.
ECO
- Efficient collective communication for message passing applications.
Excalibur
- Compiling array-oriented languages onto parallel machines.
FALCON
- Threads-based tools for monitoring and steering of parallel applications.
Filaments
- Fine-grain parallelism on shared- and distributed-memory machines.
FLASH
- Multiprocessor with shared-memory and message-passing protocols.
FM
- Fortran M. Task-parallel extensions to Fortran; integration of task and data parallelism.
Fork95
- C-based parallel programming language, targetted at SB-PRAM.
Fx
- Parallelizing Fortran compilers and applications.
GA
- Global Arrays. Shared-memory programming interface for distributed-memory computers.
GLU
- Granular Lucid. Programming system for constructing parallel and distributed applications.
GUARD
- Relative debugging for parallel and supercomputing applications.
HPC++
- A standard model for parallel programming using C++.
HPFF
- High Performance Fortran Forum. Data-parallel and data distribution extensions to Fortran.
I-ACOMA
- Illinois Aggressive COMA. Tightly-coupled multiprocessor with flat cache-only memory architecture.
iCC
- Interprocessor Collective Communication Library. Fast collective communication library for the Intel Paragon.
ICL
- Innovative Computing Labs. Netlib, BLAS, HeNCE, LAPACK, MPI, PVM, etc.
IMPACT
- Illinios Microarchitecture Project utilizing Advanced Compiler Technology. Superscalar optimizing compiler.
Impala
- (IMplicitly PArallel LAnguage Application Suite). Collection of applications in Id and pH.
iWarp
- Distributed memory parallel machine and applications.
KOAN/Fortran-S
- Shared virtual memory system and Fortran interface.
LAM
- Local Area Multicomputer. Message-passing programming environment for heterogeneous networks.
Linda
- Coordination languages and tools for parallel and distributed computation, adaptive parallelism (
Piranha).
Locust
- Distributed shared virtual memory system on network of workstations.
Makbilan
- Custom parallel computer (Makbilan), shared memory parallel C (Parc), and runtime system (Maxi).
Mentat
- Object-oriented architecture-independent parallel processing system.
Mermaid
- Performance evaluation of MIMD platforms.
Mirage
- Distributed shared memory system on network of workstations.
Modula-2*
- High-level explicitly parallel imperative programming language.
MOSIX
- A set of BSD/OS enhancements that transform a PC cluster into a scalable super-multicomputer.
MPC++
- Massively Parallel, Message Passing, Meta-level Processing C++ designed to exploit multithreading and message-driven execution on RWC-1 MPP .
mpC
- A parallel superset of C for programming distributed memory machines.
Multipol
- Library of distributed data structures for solving irregular problems.
Nexus
- Multithreaded runtime system providing communication and resource support for higher-level applications.
Nimrod
- A workstation hunter for large parametric modelling experiments.
NOW
- Network Of Workstations. Using a network of workstations to act as a distributed supercomputer.
NUMAchine
- Modular, cost-effective and scalable shared-memory multiprocessor.
NuMesh
- Massively parallel interconnect with highly modular packaging.
Omega
- Frameworks, algorithms and software for analyzing and transforming scientific programs.
Orca
- Parallel programming language for distributed systems, based on shared data-object model.
OOF90
- High performance object-oriented programming in Fortran 90.
P3L
- Skeleton-based parallel programming language with template-based implementation.
Pablo
- The interaction of architecture, system software, and applications on massively parallel computer systems.
PADE
- Parallel Applications Development Environment. Graphical application development environment for heterogeneous networked computers.
PAPERS
- Custom hardware for fast collective communication in PC cluster.
Para++
- Portable C++ bindings for message passing libraries.
Paradigm
- PARAllelizing compiler for DIstributed-memory General-purpose Multicomputers.
PARADIGM
- (PARAllel Digital ImaGe Modelling). Parallel spatial modelling and applied parallel computing.
Paradyn
- Performance measurement tools for large-scale parallel/distributed programs.
PARASOL
- ESPRIT project to develop parallel solvers for sparse systems of linear equations.
Parastation
- Fast interconnection network and software for off-the-shelf workstation clusters.
PARL
- Parallel Architecture Research Laboratory. Performance analysis of parallel and distributed architectures.
NMSU TraceBase trace archive.
PASSION
- Parallel And Scalable Software for I/O. Support for I/O intensive out-of-core loosely synchronous problems.
pC++/Sage++
- Portable parallel C++ for high performance computers.
PCIPA
- Parallel Computing, Image Processing and Applications. Biologically-motivated approaches to pattern recognition.
PCU
- Software tools, computational science applications, visualization, algorithms, languages, theory.
PCV
- Parallel Computer Vision. Real-time stereo computer vision (ALVINN), parallel object recognition.
PDL
- Parallel Data Laboratory. Parallel file systems, aggressive prefetching in file systems, and RAID.
PEACE
- Parallel Execution And Communication Environment. Object-oriented OS and runtime library for massively parallel architectures.
Penny
- Parallel implementation of
AKL.
PETSc
- Portable, Extensible, Toolkit for Scientific Computation. Parallel software for the numerical solution of PDEs.
PET
- Programming Environments and Tools. Message passing, parallel I/O, checkpointing, and run-time tools and monitoring.
pH
- A parallel, eagerly-evaluated version of Haskell.
PPP
- Parallel Performance Project. Application and performance modelling for high-performance computers.
ProperCAD
- Parallel VLSI CAD applications based on an object-oriented parallel library.
Prospero
- Prospero Resource Manager: parallel application manager for workstation clusters.
Proteus
- Prototyping language and environment for high-level parallel programs.
PSI
- Parallel algebraic reductions on array expressions based on psi calculus.
Ptools
- Parallel Tools Consortium at
Oregon State University. Working groups on
Message Queue Manager,
Lightweight Corefile Browser, and
Portable Timing Routines.
PTT
- Parallel Tools Team at
NAS. Investigating and developing useful parallel tools.
PVM
- Parallel Virtual Machine. Programming a heterogeneous network of machines as a single distributed memory parallel machine.
Quake
- Supercomputer simulation of large basin motion during strong earthquakes.
Quarks
- Portable distributed shared memory system.
RPM
- A hardware emulator for the rapid prototyping of multiprocessor systems.
RTCL
- The
HARTS architecture and other research on
interconnection networks.
SAM
- Distributed shared memory system and associated parallel language (Jade).
SB-PRAM
- Building a massively parallel uniform-memory-access shared-memory multiprocessor.
SCANDAL
- Super Compilers and Advanced Languages. Nested data parallel languages (NESL), efficient parallel algorithms.
SCG
- Scientific Computation Group. LPARX coarse grain data parallel programming abstractions, load balancing, adaptive numerical methods.
SCPL
- Scalable Concurrent Programming Laboratory. Multi-level compilers, programming irregular problems.
SHRIMP
- Scalable, High-Performance, Really Inexpensive Multi-Processor.
Simple COMA
- Hybrid hardware/software Cache-Only Memory Architecture implementation.
SISAL
- Portable high-performance functional language.
Split-C
- Parallel extension to C with global address space for distributed-memory multiprocessors.
SR
- Synchronizing Resources. Concurrent programming language.
SUIF
- Research into compiler techniques for parallel languages.
Synergy
- Parallel programming using passive object flow.
Telegraphos
- High-speed communication for workstation clusters.
TreadMarks
- Global shared address space on networks of workstations.
uC++
- Light-weight concurrency in C++.
UC
- A set-based data-parallel programming language.
Ultracomputer
- Parallel computer architecture and software design.
ViC
- Virtual Memory C*.
V
- Nested data-parallel extension of C.
WWT
- Wisconsin Wind Tunnel. The interface between parallel hardware and parallel languages.
Xputer
- Reconfigurable hardware accelerators and their compilers.
ZPL
- Portable data-parallel array language for scientific and engineering computation.
Other places to look
If you're trying to track down a group and can't find it using any of these
lists, try
HotBot or
Alta Vista
.

Jonathan Hardwick.
Generated on 24 July 97.