CASCH: A Tool for Computer-Aided Scheduling

  • Authors:
  • Ishfaq Ahmad;Yu-Kwong Kwok;Min-You Wu;Wei Shu

  • Affiliations:
  • -;-;-;-

  • Venue:
  • IEEE Concurrency
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

Existing parallel machines provide tremendous potential for high performance, but their programming can be a cumbersome and error-prone process. Software tools providing automatic functionalities free programmers from the nuisance of manual labor and can ensure better performance through code restructuring and optimization. This article describes an experimental software tool called CASCH (Computer Aided SCHeduling) for parallelizing and scheduling applications on message-passing multiprocessors. CASCH transforms a sequential program to a parallel program with automatic scheduling, mapping, communication, and synchronization. Its major strength is its extensive library of scheduling and mapping algorithms representing a broad range of state-of-the-art work reported in the recent literature. These algorithms can be interactively analyzed, tested, and compared using real data on a common platform with various performance objectives, enabling the programmer to select the most suitable algorithm for the application. CASCH, with its graphical interface, can be auspicious for both naive and expert programmers of parallel machines, and can also serve as a teaching and learning aid for understanding scheduling and mapping algorithms.