Repository logo
Log in(current)
Repository logoMIT Open ScholarshipDSpace@MIT
  1. Home
  2. MIT Libraries
  3. MIT Theses
  4. Graduate Theses
  5. Continuation Stealing in Julia

Continuation Stealing in Julia

Thumbnail Image
Download
Name

trollback-aug-meng-eecs-2023-thesis.pdf

Description
Thesis PDF
Size

523.63 KB

Format

Adobe PDF

Checksum (MD5)

4d6b572d77725ee4022f3db89bdea8fb

Author(s)
Trollback, August
Advisor(s)
Schardl, Tao B.
Date Issued
February 2023
Publisher
Massachusetts Institute of Technology
Abstract
Work stealing schedulers are widely used by parallel programming platforms to distribute tasks across multiple processors. Memory blowup from scheduling a program with work stealing can be bounded by using continuation stealing when new tasks are spawned. Continuation stealing is opposed to child stealing, a different method for spawning tasks that is simpler to implement, but comes at the expense of potentially unbounded memory use. An extension to the Julia programming langauge that adds support for optimizable spawn and sync parallel constructs has been proposed, but it does not currently support continuation stealing. In my thesis, I implement continuation stealing in Julia using two different metaprogramming approaches. One approach uses Julia’s macro system, while the other uses the Julia compiler’s internal representation (IR) of functions. My results show that the IR-based approach uses less memory than the child stealing implementation in the proposed extension to Julia, while having similar speed.
MIT Department
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science
Terms of Use
In Copyright - Educational Use Permitted
http://rightsstatements.org/page/InC-EDU/1.0/
Copyright MIT
Persistent DSpace Link
https://hdl.handle.net/1721.1/150176
Repository logo
PrivacyPermissionsAccessibilityContact us
Repository logo
Notify us about copyright concerns.