Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
multithreading [Le 30/03/2010, 13:15] – créée fabien26multithreading [Le 03/11/2026, 12:32] (Version actuelle) – supprimée krodelabestiole
Ligne 1: Ligne 1:
-====== Multithreading - Optimiser l'utilisation des ordinateurs multi-cores, multi-processeurs et Hyper Threading ====== 
  
-De nos jours les ordinateurs disposent quasiment tous de la possibilité de faire tourner au moins deux threads (tâches systèmes) en même temps. La première fois que le grand public a entendu parlé de cette fonctionnalité c'était avec le Pentium 4 HT. Le Pentium 4 HT n'est pas à proprement parler un processeur optimisé pour ce genre de processus, il ne dispose d'ailleurs que d'un seul cœur d'exécution. Mais depuis les Pentium D, Core Duo, Core 2 Duo et Quad, Athlon 64 X2 ainsi que presque tous les processeurs plus récents les processeurs sont vraiment significativement plus puissant en utilisation multithreads. 
- 
-Ceci rend les ordinateurs plus réactifs quand ils sont en charge, mais permet aussi de grandement augmenter la vitesse de certains programmes ! 
- 
-Il existe deux types de cœurs d'exécution dans les processeurs actuels, les cœurs physiques et virtuels.  
-  * Un cœur physique est un autre processeur réel, il permet en théorie des augmentations de performances de + 100% par nombre de cœur supplémentaire. 
-  * Un cœur virtuel est un cœur créé par la technologie Hyper Threading d'Intel, il permet des augmentations de performances théoriques d'environ 30%. Un processeur HT dispose d'un ou plusieurs cœurs physiques qui sont séparés en deux cœurs virtuels, doublant ainsi le nombre de cœurs visibles par le système. 
- 
-Cette page se fera un plaisir de recenser les différents programmes à préférer si vous utilisez un processeur multithreads pour obtenir les meilleurs performances. Elle regroupera aussi quelques trucs et astuces à connaitre pour améliorer les performances de programmes qui n'utilises pas à l'origine plusieurs threads mais dont vous pouvez activer la fonctionnalité par une légère modification. 
- 
-Si le programme doit être configuré pour utiliser le multithreading, la méthode est disponible sur la page du programme de ce wiki. La liste vous indiquera si oui on non il y a besoin d'une intervention de votre part. 
- 
-===== Programmes multithreads ===== 
- 
-==== Compression ==== 
- 
-  * [[p7zip]] - le format 7z est compressible en multithreads. 
- 
-==== Vidéo ==== 
- 
-  * [[WinFF]] - **Activation Manuelle** - Permet l'activation du multithreading et de choisir le nombre que vous en voulez. 
-  * [[Kdenlive]] - Permet le rendu en multithreading, transparent pour l'utilisateur ! 
-  * [[....]] - ... 
- 
-=== FFmpeg === 
- 
-[[FFmpeg]] permet sans aucune difficulté d'utiliser le nombre de threads que vous voulez pour encoder un fichier, il suffit de passer l'instruction threads à ffmpeg: 
- 
-  ffmpeg --threads N 
- 
-**N** étant le nombre de threads à utiliser. Vous pouvez donc en utiliser seulement 3 sur un processeur Quad Core pour garder une grande réactivité sur une autre tâche. 
- 
-==== Serveurs (Web/FTP/etc) ==== 
- 
-Je ne m'y connais pas bien du tout en serveurs, si quelqu'un veut modifier cette partie, qu'il se sente comme chez lui ici :-D 
- 
-Je suppose quand même au vu des architectures utilisées dans les serveurs web que la très grande majorité des serveurs comme [[Apache]] par exemple sont parfaitement bien optimisés.