Runtime Systems


Distributed and parallel computing becomes ubiquitous in solving real-world problems of high complexity and computational demand. Our goal is to facilitate the use of parallel and distributed computing, and apply the enormous computational power readily available to life-ritical time-constrained applications.

We strive to this goal by designing new parallel algorithms, developing efficient implementations, testing them on variety of modern platforms, applying these implementations in real applications, and using application feedback to improve our design and code.


  • software environment, PREMA (Parallel Runtime Environment for Multicomputer Applications), for easy development of distributed applications have been designed and implemented by Dr. Kevin Barker. PREMA makes the development of certain class of distributed applications easy. Parallel programming is intuitive with PREMA's approach to distributing the work among computing nodes. While greatly reducing the programming effort, PREMA introduces small computational and communication overheads, but transparently solves the problem of balancing the computational load!
  • an extremely challenging problem of parallelizing Delaunay mesh refinement has been solved by Dr. Andrey Chernikov. By exploring the properties of point insertion during the refinement process, and carefully scheduling insertion of new points, it is now possible to allow for data distribution and simultaneous refinement of mesh sub-areas. This result makes possible to generate guaranteed quality Delaunay meshes in two and three dimensions with exceptional parallel speed, and employ distributed memory of computational clusters to create meshes with billions of elements in-core!
  • yet another unique approach to parallelizing Delaunay meshing with zero communication between computing nodes has been recently introduced by Dr. Leonidas Linardakis. By approaching the problem from a different point, Dr. Linardakis identified necessary conditions and designed a robust software package, which partitions two dimensional geometric domain of arbitrary complexity into disjoint subdomains, which can be meshed independently. This approach shows superlinear speedups and takes advantage of existing code by reusing state of the art sequential mesh generators!
  • applications like intraoperative non-rigid registration during neurosurgery demand near to real-time delivery of results to the surgeon. Recently, our group designed and implemented software framework for easy and efficient use of distributed computing resources for the timely computation of non-rigid registration. located remotely from the surgery room in different administrative domains.

Distr comp approach

PREMA approach to parallelizing mesh generation


The following software is used in this project.

  • Clam
  • PDR
  • meDDec