See The PARL Techreports Page.

Recent Publications:

  • IEEE HPDC 2002 Presentation
  • IEEE HPDC 2002 Paper
  • IEEE Aerospace 2002 Paper
  • SDPW 2002 Presentation
  • SDPW 2002 Paper
  • Download      
    FTP Server

  • [ Coven Driver Source ] The back-end parallel driver.
  • [ Coven GUI Source ] The front-end Java GUI.
  • [ Coven Utilities ] The program compiler and module parser.
  • [ N-Body Modules ] A collection of modules for N-Body simulations.
  • [ CFD Heat XFer Modules ] A collection of modules for a simulation of a CFD heat transfer over a steel plate.
  • [ glpv ] The OpenGL particle visualization package needed for visualizing the N-Body simulation.
  • [ glcfd ] The OpenGL visualization package needed for visualizing the CFD Heat Transfer simulation.
  • Documentation      
    FTP Server - DOCS

  • [ Installation Guide ] A guide for installing Coven.
  • [ Tutorial ] A simple tutorial to get the N-Body application working.
  • [ Module Writer's Guide ] A guide for Coven module writers.
  • [ Program Writer's Guide ] A guide for Coven program writers.
  • [ Developer's Guide ] Guidelines for Coven developers.
  • Screenshots      

    The name Coven comes from the preceding project, CERSe - The Component-based Environment for Remote Sensing. CERSe was supposed to sound like Circe, the witch from Greek mythology. CERSe specifically targeted satellite remote sensing applications. Coven, however, is a much larger, more generic project in which we can (and have) implemented CERSe as a child environment.

    Webster defines Coven as a collection of individuals with similar interests or activities and an assembly or band of usually 13 witches. We believe this definition fits the Coven project. Additionally, the connection to CERSe (and Circe) connects the project to the witch connotation of the word coven. It is in this spirit that we have named some of Coven's other child environments Medea and Hecate.

    PARL Links      
  • The Parallel Architecture Research Laboratory
  • The Beowulf Underground
  • PARL FTP Server
  • PARL Technical Reports

  • PARL Clusters (with web pages)

    What IS Coven?

    Coven is a framework for creating problem solving environments for parallel computers. This framework encourages collaborative software development through component-based software design.

    What does Coven consist of?

    Coven is comprised of a Java GUI front-end which hooks to a parallel back-end written in C using MPI. The hooks are accomplished through a Coven programming language which is compiled. A custom module parser to ease module programming is available as well. At Coven's core is a custom data structure (TPH) for keeping related data together as well as easing data flow between modules. It is through this data structure that many of our research interests have developed.

    Perhaps the best way to understand Coven is through reading some of the publications and documentation.

    Coven is developed at The Parallel Architecture Research Laboratory of Clemson University.

    Status Update
         Sat Jul 31 15:26:41 EDT 2004
    The web page has been very inactive, but not Coven development and research. I (Nathan) have been finishing my Ph.D. dissertation and graduating from Clemson. I officially defended my dissertation on July 27th, 2004. The document is available on the PARL techreports page. Dr. Walt Ligon intends to continue Coven development while I move on to Los Alamos National Laboratory in a full time research position.

    In my dissertation I showed how through a unifying model of computation in Coven we were able to provide several parallel optimizations easily to applications built using Coven. These optimizations included multi-threading, dynamic load balancing, and checkpoint / recovery. Performance analysis, design, development, and a sampling of applications which were used to test these optimizations are covered in the dissertation. Additionally, I show the use of the Coven profiler for helping to recognize the need for these optimizations.

    Progress Update
         Thu May 29 11:34:23 EDT 2003
    Coven has gone through lots of changes to facilitate some new ideas. Of particular interest is a recent change to allow for modules to communicate with other segments of data (contained in TPHs) through referencing them by segment number, rather than MPI rank number. This is interesting in that it allows programmers to virtualize data. Coven now allows users to, for instance, break a dataset into N pieces and place those N pieces onto N/4 processors. Any module can exchange data with another piece, even if that piece has been scheduled to run on itself. Coven accomplishes this through transparently making user's communication calls asynchronous and keeping track of when they have completed.

    Additionally, we have implemented sophisticated input and output queues for each program sequencer. The user can control the depths of these queues and Coven will keep track of throttling additional input data when the output queue is too full. In this way, the user can control how balanced the operations can be.

    Profiling is progressing amazingly well. We have a robust profiling architecture constructed and are beginning to produce interesting visualizations that use them.

    Sourabh Pandit has left the group to persue other interests. He intends to contribute in his spare time and hopes to rejoin our team in the future.

    Coven Release Update
         Wed Jan 22 09:28:40 EST 2003
    The web page has been overhauled completely. You can now find a brief history of Coven as well as where the name Coven comes from in the first place.
    First drafts of the documentation are online. All are complete execept for the tutorial which needs additional screenshots and a little more text at the end. Look for updates to this document to come in the next few weeks.
    We are finally getting around to GPLing all of our work and placing it online. Right now we've only gotten the OpenGL visualizations glpv and glcfd up but the rest will follow very soon.
    A few screenshots are now online which help give an idea of what the GUI interface looks like.
    Check out the very large MPEG movies on the right to get an idea of what the OpenGL visualizations can do. These movies were made from Coven modules which will be online and available for download very soon. The tutorial will help interested parties to recreate the N-Body simulation on the right. The quality of the movies is really low, this was done to try and reduce the file sizes.

    Coven Nears First Official Release
         Tue Jan 21 16:44:32 EST 2003
    We are nearing our first official release of Coven. This includes lots of documentation on installation, tutorials, writing modules, and writing programs.
    Coven Demoed at Supercomputing 2002
         Tue Jan 7 13:09:04 EST 2003
    Coven was demoed at the Supercomputing 2002 conference as part of the NASA-GSFC booth. Nathan DeBardeleben was the only Coven team member (besides advisor Dr. Walt Ligon) at the conference. The following images are from the booth and include other PARL members.
    • IMAGE The booth with Nathan DeBardeleben, Will Jones, Dr. Walt Ligon, and a visitor. The Coven GUI is being demonstrated on the monitor.
    • IMAGE The PARL NASA-GSFC booth with, from left to right: Dr. Dan Stanzione, Dale Whitchurch, Nathan DeBardeleben, and Dr. Walt Ligon. Aetherwulf and a cluster loaned from Atipa are visible on the left. Coven heat transfer and n-body demos are running on the monitor.
    • IMAGE The booth with Tim Shelling and Nathan DeBardeleben. A PVFS fault tolerance demo with web cam is running on the left. Aetherwulf and the loaned Atipa cluster are visible as well.
    • IMAGE The NASA booth workers. Second row from front, second person from right is Dr. Walt Ligon. To his left is Dr. Ron Sass, followed by Nathan DeBardeleben, Phil Carns, and Tim Shelling. Standing behind Walt is Dr. Dan Stanzione. In the back right is Will Jones and standing behind him is Dale Whitchurch.

    Coven Team      
  • Nathan DeBardeleben - Project leader, head researcher, and chief programmer
  • Vishal Patil - Systems Programmer, chiefly profiling and tuning
  • Dr. Walter B. Ligon III - Advisor

  • Graduated / Left Team
  • Sourabh Pandit - Systems Programmer, chiefly checkpointing
  • Ponnoreay Pich - Applications Programmer
  • Bryce Howard - Applications Programmer
  • Matthew Brunson - Applications Programmer
  • Environments      
  • CERSe
    • CERSe was the parent project of Coven and it is from it that many of our ideas developed.
  • Medea
    • Medea is the N-Body simulation environment which includes an OpenGL visualization.

      For these movies 10,000 bodies were set in a plane like a grid with random Gaussian offsets above and below the plane. The bodies converge to the center (notice the interactions between small sets of bodies towards the center orbiting around each other before the "big bang").

    • FTP Server - MOVIES
    • 720x486 (5.9MB)
    • 640x480 (6.7MB)
    • 640x480 - moving camera (15MB)
  • Hecate
    • Hecate is the CFD Heat Transfer simulation environments which includes an OpenGL visualization.

      For these movies a steel plate initially at 300 degrees Kelvin had heat sources applied to it and we can see the temperature vary as the system stabilizes. The Z-axis is used to represent the temperature in the 3D visualizations.

    • FTP Server - MOVIES
    • 640x480 (6.8MB) - A constant temperature of 600 degrees Kelvin was applied to one wall of the plate and we rotate the view around to give different perspectives.
    • 640x480 (7.5MB) - A constant temperature of 600 degrees Kelvin was applied to all four walls of the plate. Notice that the plate heats up rapidly.
    • 640x480 (6.6MB) - A 2D versoin of the above simulation.
    Related PARL Projects      
  • CERSe
    • The Component-based Environment for Remote Sensing. Coven evolved from this earlier PSE project aimed specifically at satellite remote sensing applications.
    • The Clemson Environment for Computer Aided Application Design. Coven uses some concepts (in particular the attributed graph format) from this earlier project.
    • The Reconfigurable Computing Application Development Environment. This project uses an extension of Coven's graphical front-end.
  • Clemson University
  • Electrical and Computer Engineering
  • College of Engineering and Science
  • NASA Goddard Space Flight Center
  • GSFC Code 935
  • Comments or suggestions: ndebard at