Abstract

Certain intricate problems, e.g., processing the results of physical experiments in the large hadron collider at the CERN, utilize significant distributed computing resources, part of which is shared with their owners. This factor, even within the framework of virtual organizations, causes competition for utilization of resources between both independent users and global (users’) and local job flows of computing resource owners. This circumstance adds much difficulty to the problem of providing the required quality of service in scalable computing. The presently known scheduling algorithms, their combinations and heuristics do not offer tools for producing efficient schedules under the conditions of heterogeneous distributed environments with a dynamically changing composition of computing resources. Under such conditions, so called economic models for allocating non-dedicated resources and for scheduling distributed computing turn out to be highly efficient in fields like grid and cloud computing, and multiagent systems. The article analyzes the current state of investigations in the field of methods and algorithms for efficiently scheduling competing flows of structured and parallel jobs in distributed heterogeneous computing environments, namely, in grid infrastructures and in cloud services. Primary attention is paid to methods and tools for scheduling intricate jobs and their flows with due regard to the preferences of stakeholders (users, resource owners, and administrators), and specific features of applications. With these factors duly taken into account, more efficient utilization of the resources in distributed computing environments may be achieved. The article presents an approach for comprehensively solving the problem of scheduling intricate jobs and their flows. Execution of a user job involves the need to allocate a set of simultaneously accessible computing resources (slot windows). The problem of selecting suitable resources is complicated by such factors as the availability of local high-priority jobs, the dynamics of resources utilization, and advanced reservations. The computing node load schedules are kept in line with the actual demands by means of a scheduling horizon. Online rescheduling implies the need to minimize the computational complexity of the relevant algorithms. Competition among the multitude of different job flows is a factor that degrades the level of resource accessibility and decreases the number of alternative scheduling options. One possible approach for solving this problem is to use anticipation scheduling, a method that makes it possible to increase the number of possible alternative schedules by means of special slot selection mechanisms. The anticipation scheduling procedure opens the possibility to evaluate the efficiency of different resource combinations. The obtained data serve as a basis for producing a feasible job flow execution schedule close to the optimal solution.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call