Application-specific thread schedulers

  • Authors:
  • Ronald A. Olsson;Matthew Roper

  • Affiliations:
  • University of California, Davis;University of California, Davis

  • Venue:
  • Application-specific thread schedulers
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

This dissertation describes CATAPULTS, a domain-specific language for creating and testing application-specific user-level thread schedulers. Using a domain-specific language to write user-level thread schedulers provides three advantages. First, it modularizes the thread scheduler, making it easy to plug in and experiment with different thread scheduling strategies. Second, using a domain-specific language for scheduling code helps prevent several of the common programming mistakes that are easy to make when developing thread schedulers. Finally, the CATAPULTS translator has multiple backends that generate code for different languages and libraries. This makes it easy to prototype an application in a high-level language and then later port it to a low-level language; the CATAPULTS translator will take care of generating the appropriate code for both the prototype and the final version of the program from a single scheduler specification. Using CATAPULTS, we have been able to improve the performance of applications in many areas of computing, including Internet servers, embedded systems, and distributed systems.