Component-Based Runtime
The runtime of COMP Superscalar presents a componentised structure that is based on the Grid Component Model (GCM). Each of the runtime subcomponents encapsulates a given functionality that contributes to the overall execution of the application.
An important feature of the GCM-based runtime is that the subcomponents can easily be deployed and distributed among different hosts, so that the processing of the application tasks is parallelised and the throughput of the runtime increases.
-
Runtime Subcomponents

-
Task Analyser
It receives incoming tasks from the application and detects their precedence, building a task dependency graph. Like in GRID superscalar, a COMP Superscalar task is a method invocation, made from the application code, that will be executed on the Grid. When requested to process a task, this component looks for data dependencies between the new task and all previous ones. Once a task has all its dependencies solved, the Task Analyser sends it to the Task Scheduler. -
Task Scheduler
It decides where to execute the dependency-free tasks received from the Task Analyser. This decision is made according to a certain scheduling algorithm and taking into account three information sources: first, the available Grid resources and their capabilities; second, a set of user-defined task constraints; and third, the location of the data required by the task. The scheduling strategy could be changed on demand, thanks to the dynamic and reconfigurable features of GCM. -
Job Manager
It is in charge of job submission and monitoring. It receives the scheduled tasks from the Task Scheduler and delegates the necessary file transfers to the File Manager. When the transfers for a task are completed, it transforms the task into a Grid job in order to submit it for execution on the Grid, and then controls the proper completion of the job. It could implement some fault-tolerance mechanisms in response to a job failure. -
File Manager
It takes care of all the operations where files are involved. It is a composite component which encompasses the File Information Provider and the File Transfer Manager components.-
File Information Provider
It gathers all the information related with files: what kind of file accesses have been done, which versions of each file exist and where they are located. -
File Transfer Manager
It is the component that actually transfers the files from one host to another. The File Transfer Manager also informs the File Information Provider about the new location of files.
-
File Information Provider




