Adaptive workflow processing and execution in Pegasus
Lee, K., Paton, N.W., Sakellariou, R., Deelman, E., Fernandes, A.A.A. and Mehta, G. (2009) Adaptive workflow processing and execution in Pegasus. Concurrency and Computation: Practice and Experience, 21 (16). pp. 1965-1981.
*Subscription may be required
Workflows are widely used in applications that require coordinated use of computational resources. Workflow definition languages typically abstract over some aspects of the way in which a workflow is to be executed, such as the level of parallelism to be used or the physical resources to be deployed. As a result, a workflow management system has the responsibility of establishing how best to execute a workflow given the available resources. The Pegasus workflow management system compiles abstract workflows into concrete execution plans, and has been widely used in large-scale e-Science applications. This paper describes an extension to Pegasus whereby resource allocation decisions are revised during workflow evaluation, in the light of feedback on the performance of jobs at runtime. The contributions of this paper include: (i) a description of how adaptive processing has been retrofitted to an existing workflow management system; (ii) a scheduling algorithm that allocates resources based on runtime performance; and (iii) an experimental evaluation of the resulting infrastructure using grid middleware over clusters.
|Publication Type:||Journal Article|
|Publisher:||John Wiley & Sons|
|Copyright:||© 2009 John Wiley & Sons, Ltd|
|Item Control Page|