-
-
-
-
-
-
-
HomeSite map
SoC/Offres d'emplois/Stages/2011-2012/ALSOC/Conception profiler Print page

Conception d'un profiler à faible surcoût basé sur les compteurs matériel pour des applications multithreads

Encadrants :

Karine Heydemann (ALSOC), Gaël Thomas, Gilles Muller (REGAL)

Sujet du stage :

The scalability of multithreaded applications on current multicore systems is hampered by the performance of lock algorithms, due to the costs of access contention and cache misses.We have recently proposed a new lock algorithm, Remote Core Locking (RCL) that aims to improve the performance of critical sections in legacy applications on multicore architectures. The idea of RCL is to replace lock acquisitions byoptimized remote procedure calls to a dedicated server core. RCL limitsthe performance collapse observed with other lock algorithms when many threads try to acquire a lock concurrently and removes the need to transfer lock-protected shared data to the core acquiring the lock because such data can typically remain in the server core's cache. Using RCL locks, we get performance improvements of up to 2.6times with respect to POSIX locks on Memcached (a legacy in-memory cache server), and up to 14 times with respect to Berkeley DB (a legacy database).

For the RCL approach to be applicable in practice, we need a profiler that identifies the locks that are the bottlenecks in multithreaded applications. We have designed a first version of this tool, but it is currently limited only to the measurement of CPU cycles and L2 cache misses. Additionally, the tool may induce a high overhead on the application depending on where and how the measurements are done.


The topic of this internship is to design a new version of the profiler that is able to measure other hardware events and provide tools for helping the interpretation of the measurements. One of the challenges of the topic will be to understand the conditions for inserting measurement probes while minimizing the impact on the tested application.

Compétences requises :

C / Linux / Posix


Rémunération et thèse :

Ce stage sera indemnisé environ 420 euros/mois et aura une durée de 6 mois.


Contacts pour toute information complémentaire/candidature :

karine.heydemann(at)lip6(.)fr, gilles.muller(at)lip6(.)fr, gael.thomas(at)lip6(.)fr


LIP6 LIP6-SoC LIP6 CNRS UPMC