Skip to Main content Skip to Navigation

Contribution à l'élaboration d'ordonnanceurs de processus légers performants et portables pour architectures multiprocesseurs

Abstract : Nowadays, threads are widely spread in computer science. Indeed, multithreading allows applications not only to fully exploit multiprocessor computers, but also to reveal its intrinsic parallelism. In the context of high performance computing, threads are commonly used to overlap computation with communication. They also allow various execution flows within the application to progress independently one from another. This is a mandatory functionality regarding the implementation of complex middleware such as MPI or CORBA.

My work aims at providing an efficient threads library targeting a wide range of architectures (mono or multiprocessor computers, SMT technology, ...) and able to fulfil the requirements of high performance computing programs. First, I have extended and implemented the Scheduler Activation model within the Linux kernel, so that user threads can be extremely reactive to hardware interruptions. Then, I did expend this mechanism to unify the management of interrupts and polling in multithreaded environments. Finally, I have designed new tracing mechanisms allowing to precisely rebuild the execution of multithreaded programs, even with a two-level scheduling.

All these works have been implemented within the PM2 software suite. The Marcel library provides efficient multithreading on a large range of processors and systems. Marcel is flexible enough to allow an application to precisely manage its threads scheduling when needed. Applications can be traced in order to observe their precise behavior. The generated traces can be converted to the Pajé software format, so that application behavior can be graphically observed.
Complete list of metadata

Cited literature [99 references]  Display  Hide  Download
Contributor : Vincent Danjean Connect in order to contact the contributor
Submitted on : Monday, June 20, 2005 - 4:50:53 PM
Last modification on : Saturday, September 11, 2021 - 3:17:25 AM
Long-term archiving on: : Friday, April 2, 2010 - 10:37:13 PM


  • HAL Id : tel-00009541, version 1


Vincent Danjean. Contribution à l'élaboration d'ordonnanceurs de processus légers performants et portables pour architectures multiprocesseurs. Réseaux et télécommunications [cs.NI]. Ecole normale supérieure de lyon - ENS LYON, 2004. Français. ⟨tel-00009541⟩



Record views


Files downloads