Pour gérer vos consentements :
Categories: Logiciels

Le multicoeur au service des applications monothreads

Les chercheurs de la NCSU (North Carolina State University) viennent de publier le résultat de leurs travaux, lesquels permettront aux développeurs de mieux exploiter la puissance des architectures processeur comprenant de multiples cœurs.

Si certaines tâches peuvent aisément être parallélisées, et ainsi tirer pleinement parti des machines multicœurs, de nombreux logiciels ne peuvent que difficilement être adaptés pour de telles architectures. La solution proposée par les chercheurs de la NCSU consiste à séparer les calculs classiques des opérations de gestion de la mémoire. Ces deux tâches fonctionnant de façon indépendante, le logiciel exploite deux cœurs, et ce, même s’il n’est pas optimisé dans ce sens.

Certes, la puissance des deux cœurs n’est pas pleinement exploitée, mais le code peut fonctionner jusqu’à 20 % plus rapidement. Plus les applications manipulent de larges ensembles d’informations et plus le gain sera important.

Grâce à ce procédé, certaines opérations lourdes (libération ou mise à zéro de larges blocs…) s’effectuent donc sur un cœur séparé. De plus, ces travaux ne bloquent plus les traitements en cours. Autre point intéressant, les opérations de vérification prennent moins de temps processeur.

« En exécutant les fonctions de gestion de la mémoire sur unthreadséparé, ces programmes difficiles à paralléliser peuvent fonctionner environ 20 % plus rapidement », souligne le Dr. Yan Solihin, directeur du projet de recherche et coauteur de cette publication. « Cela ouvre également la porte au développement de nouvelles fonctions de gestion de la mémoire qui permettront d’identifier des anomalies dans le comportement du programme ou d’effectuer des contrôles de sécurité supplémentaires. Auparavant, ces fonctions auraient ralenti la vitesse de l’ensemble du programme. »

Avec ce gestionnaire mémoire prenant la forme d’un service, les chercheurs emploient une méthode moderne, mais déjà connue et utilisée au sein d’offres concurrentes. Ils ont su toutefois optimiser leur solution, laquelle se montre particulièrement aboutie.

Reste que ce type de technique a un impact en terme de performances, ce mode client-serveur étant plus lourd à gérer qu’une méthode basique. Certains contributeurs du site Slashdot remarquent d’ailleurs avec raison qu’un cœur de plus sera utilisé, pour des performances en hausse de seulement 20 %. Si la vitesse de traitement grimpe, cela se fera donc souvent au détriment du rapport performance par watt de la puce.

Le bon point reste toutefois que les applications qui n’ont jamais été optimisées pour le multicœur (traitements de texte, navigateurs web, etc.) pourront maintenant fonctionner un peu plus vite. Une excellente nouvelle pour les éditeurs, et les utilisateurs, puisque le code de ce type d’application n’est que rarement optimisé dans ce sens.

Recent Posts

Cybersécurité : Darktrace dans l’escarcelle de Thoma Bravo

La société britannique de cybersécurité Darktrace a accepté une offre de rachat de 5,32 milliards…

8 heures ago

Étude Trends of IT 2024 : comment les managers IT développent leurs projets

Silicon et KPMG lancent la deuxième édition de l'étude Trends of IT. Cette édition 2024…

10 heures ago

Atos : l’Etat veut acquérir les activités souveraines

Le ministère de l'économie a adressé une lettre d'intention à la direction d'Atos pour racheter…

12 heures ago

Arnaud Monier – SNCF Connect & Tech : « Notre moteur, c’est l’innovation et nous procédons par incrémentation »

Directeur Technologie de SNCF Connect & Tech, Arnaud Monier lance une campagne de recrutement pour…

14 heures ago

Etats-Unis : les grands de l’IT licencient au nom de l’IA

Les grands de l'IT suppriment des milliers de jobs au nom du déploiement de. Une…

14 heures ago

Appel de Rome : Cisco rejoint Microsoft et IBM pour une IA éthique

Quatre ans après l’appel de Rome - un pacte présenté en 2020 par le Vatican…

14 heures ago