....:::.::..:.:::   parallel execution framework   :::.:..::.:::....
...::: ... :::...

This project aims to make a device to easily cluster networked systems.

...::: ... :::...

Download Status:
Downloads are available through the files interface provided by SourceForge.net.

...::: ... :::...

Thank You:
Thank you to Intrinsyc and IBM for their generous donations.

About this Project added on : 03.13.2002

The Parallel Execution Framework project has two main goals:

  1. To develop a device that facilitates (transparent) clustering of networked workstations.
  2. To develop software that allows easy parallelization of Java applications.

The first goal involves the development of a Linux system for Intrinsyc's CerfCube device. This Linux system will provide TFTP, DHCP, and NFS services to allow other networked systems to be booted remotely off of the network from the cube. They will download their kernel via TFTP, get their IP address via DHCP, and mount their root filesystem via NFS.

The second goal involves the development of Java software that will allow parallel execution of Java applications. This software is mostly complete, and is based on JavaSpaces technology from Sun Microsystems. JavaSpaces is a tuple-spaces system which allows Java objects to be easily passed over network connections. JavaSpaces is built on top of Jini technology.

Other Technolgies added on : 03.13.2002

I considered a number of clustering technologies when planning this project. These included the Sun Grid Engine, Parallel Virtual Machine, Message-Passing Interface, Linux Virtual Server, and Red Hat's Piranha Tools, among others.

The PVM and MPI technologies were perfectly suited to parallel computing, and are often considered key components of Beowulf-style clusters. The Grid Engine works on a similar concept. However, these all require that applications be written with them in mind.

The LVS and Piranha technologies are not as well suited for high-performance parallel computing, they are designed for high-availablity systems (load-balanced).

We ended up using OpenMosix because it provides transparent load-balancing across a linux cluster. Essentially, the cluster acts as one machine, so we could start 20 processes on one node and they would migrate to only one or two processes per clustered node, depending on the size of the cluster.

Copyright © 2002 Ian Cooper.

Powered by PHP Hosted by Sourceforge.net Valid XHTML 1.0 Valid CSS Site Design by OSWD