Bonjour,
Je me pose quelques questions sur les multicoeurs pour lesquelles je ne trouve pas de réponses sur le net.
Je sais qu'il existe de nombreux modèle de programmation pour utiliser le parallèlisme offert par les architectures multicoeurs openHMPP entre autres. Ce que je ne comprends pas c'est comment cela se passe au niveau matériel et plus précisément au niveau du code machine/assembleur.
Comment un processus est assigné à un coeur particulier ? Est-ce qu'il existe une instruction ? ou sinon quel est le mécanisme qui est utilisé ? J'ai pensé à un système d'interruption qui déclencherait le chargement du compteur ordinal d'un coeur particulier avec une nouvelle adresse d'instruction. Quoi qu'il en soit il doit exister une instruction spéciale qui déclenche la dite interruption. Or ça fait quelques jours que je cherche, rien dans le jeu d'instructions des intel I7 ou AMDK6, ne semble exister pour commander un tel mécanisme. J'ai survolé le chapitre de la documentation Intel concernant l'APIC mais c'est assez ardu...
Autre chose, au moment du démarrage quel est le coeur qui exécute les première instructions ?
Si quelqu'un connait un bon site de référence en français je suis preneur...
Bien à vous
Partager