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 metadatas

Cited literature [99 references]  Display  Hide  Download

https://tel.archives-ouvertes.fr/tel-00009541
Contributor : Vincent Danjean <>
Submitted on : Monday, June 20, 2005 - 4:50:53 PM
Last modification on : Monday, July 8, 2019 - 3:10:52 PM
Long-term archiving on : Friday, April 2, 2010 - 10:37:13 PM

Identifiers

  • HAL Id : tel-00009541, version 1

Citation

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⟩

Share

Metrics

Record views

303

Files downloads

414