Development and Implementation of a Distributed‐Object Job‐Execution Environment
Rod A. Fatoohi, Lance Smith · Scientific Programming · 2001
This paper describes the development and implementation of a distributed job execution environment for highly iterative jobs. An iterative job is defined here as a binary code that is run multiple times with incremental changes in the input values for each run. An execution environment is a set of resources on a computing platform that can be made available to run the job and hold the output until it is collected. The goal is to design a complete, object‐oriented execution system that runs a variety of jobs with minimal changes. Areas of code that are unique to a specific type of job are decoupled from the rest. The system allows for fine‐grained job control, timely status notification and dynamic registration and deregistration of execution platforms depending on resources available. Several objected‐oriented technologies are employed: Java, CORBA, UML, and software design patterns. The environment has been tested using a simulation code, INS2D.