With the availability of cheap networking hardware and fast
  commodity computer systems, 
clusters have become an
  extremely cost-effective way of gaining massive processing power.
  The alternative, to buy single specialized high-performance
  computers is becoming less interesting all the time, because of
  their much higher prices for equivalent performance.
However, there are still reasons for not using clusters. The
  good reason is, that some problems cannot be parallelized
  well. The other reason is, that it takes time and effort to
  successfully parallelize old sequential programs into parallel
  programs that will run efficiently on the cluster.
This work addresses the latter reason. This is a description of an
  attempt made, to fully automate the process of not only
  
parallelizing, but also distributing or 
scheduling
  an otherwise serial program.
The work described herein was conducted for the Department of
Mathematical Modelling, at the Technical University of Denmark.
Supervisors on the project were Per Christian Hansen and
Jens Clausen.
The original idea for the TONS computing environment that some of the
ideas in this work builds upon, came from Kenneth Geisshirt.