Coscheduling Techniques for Distributed Applications in Clusters

Coscheduling Techniques for Distributed Applications in Clusters

Document information

Language English
Number of pages 30
Format
Size 176.34 KB
Document type thesis
  • coscheduling
  • distributed applications
  • cluster computing

Summary

I. Introduction to Coscheduling Techniques

The document discusses the necessity of coscheduling distributed applications in Clusters or NOWs when executed alongside local workloads. Two primary techniques are introduced: explicit-control and implicit-control. The performance of these techniques is evaluated through simulations and real implementations in a PVM-LINUX Cluster. The findings reveal that the proposed coscheduling methods effectively manage various types of message-passing distributed applications. Notably, the effects of coscheduling are most pronounced during synchronization phases and in the processes of message exchange. This section sets the stage for understanding the significance of coscheduling in optimizing resource allocation and application performance in distributed systems.

II. Explicit Control Coscheduling

The explicit-control coscheduling mechanism is designed to enhance the performance of distributed applications by assigning dedicated execution intervals. This approach mirrors gang scheduling, ensuring that Cluster resources are allocated for uninterrupted periods. Two models, STATIC and BALANCED, are developed to optimize the performance of message-passing intensive applications. The BALANCED model adjusts execution periods based on local workload, leading to improved performance outcomes. However, this method introduces performance penalties for local tasks. The ability to select operational modes based on application needs is a significant advantage of the explicit-control approach. Despite its benefits, challenges such as fault tolerance and increased communication overhead must be addressed, particularly in heavily loaded systems. The findings underscore the importance of balancing performance gains against potential drawbacks in local task execution.

III. Implicit Control Coscheduling

The exploration of implicit-control coscheduling arises from the limitations of the explicit-control approach. This technique involves suspending blocked processes until the cost of context switching outweighs the benefits of active waiting. The implementation of a spin-block technique in a Linux Cluster yielded minimal gains under low system workloads. The drawbacks of this method include excessive overhead on both distributed and local applications, leading to degraded performance. A notable advancement is the introduction of the Predictive coscheduling technique, which optimizes scheduling based on communication frequency. This method significantly reduces synchronization phases and enhances performance, particularly in lightly loaded Clusters. The Predictive model is implemented within the system space, offering transparency and independence from underlying communication protocols. The analysis highlights the practical implications of these techniques in improving the efficiency of distributed applications.

IV. Conclusion and Future Work

The document concludes with a comprehensive evaluation of the coscheduling techniques discussed. The findings indicate that both explicit-control and implicit-control methods have their respective advantages and limitations. The Predictive coscheduling technique emerges as a promising solution, demonstrating superior performance in various scenarios. Future work should focus on refining these techniques to enhance their applicability across different types of distributed applications. The significance of this research lies in its potential to inform the development of more efficient coscheduling strategies, ultimately leading to improved resource utilization and application performance in Clusters. The insights gained from this study are valuable for researchers and practitioners aiming to optimize distributed computing environments.

Document reference

  • Explicit-control Coscheduling (Not specified)
  • Implicit-control Coscheduling (Not specified)
  • Predictive Coscheduling (Not specified)
  • Dynamic Coscheduling (Not specified)
  • PVM-Linux Communication Mechanism (Not specified)