Bonjour à tous,
Dans le cadre d'un devoir sur la programmation parallèle je dois pouvoir affecter un thread particulier à un core particulier de mon processeur.
Pour ma part j'ai utilisé la fonction setaffinity() pour réaliser cela :
http://pastebin.com/8n9NYFA1
Cependant mon prof m'a parlé d'une autre fonction : la fonction sched_setscheduler(). Seulement je n'arrive pas à l'utilisé j'ai réussi à changer l'ordonnancement (FIFO, RoundRobin) mais j'ai pas réussi à affecter un thread à un core et je ne vois pas comment m'y prendre.
De plus j'ai une autre question, comment identifier les numéros des cores physiques de mon ordinateur ?
Je possède 2 cores physiques et 2 virtuels (Hyper Threading) si je lance 2 threads, et que ces deux threads se retrouvent sur le même core physique (CPU0 et CPU1 par exemple), mon programme s'éxecutera moins vite que si je lance les 2 threads sur les 2 cores distincts (CPU0 et CPU2 par exemple) ?
Merci d'avance pour votre aide
je rencontre quelques difficultés avec cet exercice.