Derniers journaux de farib :
- [12/10@12:34] Firefox dans Le Monde
- [24/08@10:23] °O° X-Chat passe en Shareware °O°
- [09/08@10:34] MicroMou brevete l'humain cybernétique
- [03/08@08:03] Jour funeste pour les petits artistes.
- [06/07@17:58] les pc > 650Mhz menacent la sécurité de l'Amérique
- [04/07@09:41] Freebox V3 : fonctions routeur & Wifi disponibles.
- [30/06@22:53] Nouveaux drivers nvidia 1.0-6106 - IA 32
- [20/06@10:41] Ouvrage sur les réseaux de neurones
- [03/06@17:40] Question sur les brevets.
- [01/06@15:54] GPS, géostratégie et logiciels libres
- [28/05@18:25] bittorrent - classes ip - optimisation ?
- [25/05@11:52] Choix toolkit C/C++ : gtk[mm] vs wxWidgets vs Qt
- [18/05@16:24] p2p, piratage, majors : les indépendants s'expriment !
- [12/05@08:23] Piratage : le lavage de cerveau continue
- [11/05@14:50] SVM : incitation explicite au piratage.
- [30/04@20:31] Associations de fichiers dans Konqueror : créer une commande élaborée
- [15/03@18:54] dvd les deux tours VL : suxxe
- [05/03@10:38] Un spam de gout douteux
- [24/02@21:38] pb syntaxe .htaccess pour mod_rewrite
- [17/02@11:40] Gestion du swap par Linux : si efficace que cela ?
Journal : Le dual core : faussement nouveau ?
Posté par farib () le 18 avril 2005Et nos joyeux drilles de constater que les gains sont pas terribles du tout, sur les applications grand public. (en gros, le FX55 bouffe toujours le P4EE toutes options)
On leur a expliqué que le SMP était quand même une technologie pas trop nouvelle ?
Sinon, question plus générale, pourrait-il y avoir une possibilité d'optimiser le SMP pour les processeurs dual core: par exemple, peut-on profiter d'une vitesse de communication accrue entre deux dies d'un même processeur ? Ou bien le scheduler d'un noyau est-il tellement complexe à écrire qu'il faudra des années pour en tirer avantage ?
> Lire le journal (5 commentaires, moyenne: 6,4).
À la pointe de l'info
> On leur a expliqué que le SMP était quand même une technologie pas trop nouvelle ?
Pas sûr qu'ils aient les capacités de comprendre (moi, méchant ? Juste un peu :) ).
De plus, les processeurs multicores existent déjà depuis pas mal d'années chez IBM, par exemple. Il se trouve juste qu'aujourd'hui, les processeurs grand-public vont utiliser ce principe pour améliorer les performances en environnements multitâches/multithreadés afin de compenser les difficultés actuelles des fondeurs à faire monter leurs puces en fréquence.
Ensuite, il y a plusieurs façons de faire la liaison interprocesseur, qui ne dépend que de la technologie déjà utilisée sur les gammes modifiées. Par exemple, sur les P4 d'Intel, le gain par arpport à une solution avec 2 processeurs distincts est très faible, car les processeurs se partagent un bus externe (ou un truc du genre), alors que les Athlon 64 d'AMD sont reliés, comme sur une solution à 2 processeurs, par un bus HyperTransport(TM), mais interne, ce qui améliore un chouia plus les performances du bicore.
En ce qui concerne l'amélioration des performances, je doute qu'il y ait quoique ce soit de particulier à faire au niveau du gestionnaire de processus noyau, mais bon, je n'y connaît pas grand'chose en SMP.
« Le savoir, n'est-ce pas, est un bien précieux. Trop précieux pour ne pas être partagé. »
- Battologio d'Epanalepse, in De Cape et de Crocs, Acte VII (Ayroles & Masbou)
-
[^]Re: À la pointe de l'info
Posté par Nicolas Boulay () le 19/04/2005 à 08:46. (lien). Évalué à 4.sisi il y a beaucoup à faire niveau du scheduler ! Notement pour éviter de pourrir les caches !
Ainsi, Linux est Numa aware (bi-opteron, RAM séparé), Smt aware (Tous les niveaux de caches commun), Smp aware (RAM commune mais pas les caches)
Scheduler domains
Salut,
D'après ce que j'ai compris, l'ordonnanceur du noyau dispose déjà d'un mécanisme appellé «scheduling domains», qui permet de prendre en compte la répartition des coeurs dans un systèmes : sur une même puce, sur deux puces différentes dans la même machine, sur des puces différentes dans des machines différentes (NUMA). Et en fonction de ça, l'ordonnanceur peut optimiser le placement des threads. Ainsi, au lieu de changer brutalement un thread d'un processeur à un autre, il peut essayer de le conserver dans le même processeur, pour bénéficier des effets de cache communs dans une architecture multi-coeur.
Voir paragraphe 5.7.2 de http://josh.trancesoftware.com/linux/linux_cpu_scheduler.pdf(...)
Thomas
-
[^]Re: Scheduler domains
Posté par Lucas (page perso, ) le 18/04/2005 à 13:06. (lien). Évalué à 5.Selon les sources, ca s'appelle aussi "CPU affinity" (c'est la terminologie FreeBSD notamment). C'est utile dans le cadre du SMP (éviter de migrer un process d'un CPU à un autre pour conserver le cache), dans le cas du SMT (Symmetric Multi Threading, cad HyperThreading chez Intel), et dans le cas des procs multi-cores.
-
[^]Re: Scheduler domains
Posté par Christophe Fergeau () le 19/04/2005 à 08:32. (lien). Évalué à 5.« Ainsi, au lieu de changer brutalement un thread d'un processeur à un autre, il peut essayer de le conserver dans le même processeur, pour bénéficier des effets de cache communs dans une architecture multi-coeur. »
En ce qui concerne les procs dual-core d'intel, a priori ils n'ont rien du tout en commun, pas même le cache (c'est 1 Mo pour chaque coeur), l'article à ce sujet sur hardware.fr dit même :
« lorsque les deux core ont besoin de communiquer, on a l’obligation de passer par le chipset de la carte mère, comme c’est le cas d’une véritable configuration bi-processeur chez Intel. »
Le scheduler ne doit donc pas pouvoir faire grand chose de "rusé" sur ces procs là (hors hyperthreading).

Les journaux sont destinés à des informations qui ne sont pas suffisamment intéressantes
pour être validées en dépêche (sinon n'hésitez pas à proposer votre information en
dépêche), qui sont sans rapport avec Linux ou le libre, ou simplement pour donner votre
avis. Si vous désirez poser une question, merci d'utiliser 

Cette discussion est archivée, il n'est plus possible de laisser des commentaires.
Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.