• A
  • A
  • A
  • ABC
  • ABC
  • ABC
  • А
  • А
  • А
  • А
  • А
Regular version of the site

Work Stealing Executor for C++20 Coroutines

Student: Anna Kazantseva

Supervisor: Aibek Alanov

Faculty: Faculty of Computer Science

Educational Programme: Applied Mathematics and Information Science (Bachelor)

Final Grade: 8

Year of Graduation: 2024

In an era where complex user interactions, sophisticated applications, and game development demand simultaneous management of numerous operations, coroutines have become a critical component of effective programming. They offer an essential tool for writing asynchronous or non-blocking code in a way that is straightforward and easy to understand, which greatly simplifies the tasks of debugging and modification. Moreover, coroutines are less resource-demanding compared to threads, hence they increase efficiency in supervising multiple concurrent tasks. This paper tries to further enhance performance by redistributing workloads from burdened threads to those with lesser load by implementing a work-stealing task manager. This executor provides an ideal load balancing approach leading to a decrease in execution duration and an improvement in application performance.

Full text (added May 18, 2024)

Student Theses at HSE must be completed in accordance with the University Rules and regulations specified by each educational programme.

Summaries of all theses must be published and made freely available on the HSE website.

The full text of a thesis can be published in open access on the HSE website only if the authoring student (copyright holder) agrees, or, if the thesis was written by a team of students, if all the co-authors (copyright holders) agree. After a thesis is published on the HSE website, it obtains the status of an online publication.

Student theses are objects of copyright and their use is subject to limitations in accordance with the Russian Federation’s law on intellectual property.

In the event that a thesis is quoted or otherwise used, reference to the author’s name and the source of quotation is required.

Search all student theses