Bonjour,
Y a t-il en moyen de connaitre le nombre de core d'un PC en C ?
Merci d'avance
Version imprimable
Bonjour,
Y a t-il en moyen de connaitre le nombre de core d'un PC en C ?
Merci d'avance
Rien en C standard.
Sur quel OS?
Je cherche sous windows, linux et mac
Dommage je savais le faire sur solaris.
http://developers.sun.com/solaris/articles/kstatc.html
Cependant ce que tu demande est tres spécifique, ce sera très dépendant de ton OS
Pour Linux :
Code:sysconf(_SC_NPROCESSORS_ONLN);
Je ne suis pas certain que Max Os dérive de linux, mais la méthode est la même:
http://developer.apple.com/documenta...sysconf.3.html
en tout cas il semble faire partie des unix
j'aime bien la frise temporelle sur ce site :)
http://www.levenez.com/unix/
Pour Windows, regarde du côté de GetSystemInfo(), cela devrait faire ton bonheur
Merci beaucoup de vos suggestions
Je vais étudier tout ca
Attention : sous Windows, il faut aussi compter avec GetProcessAffinityMask... C'est un peu barbare, mais en comptant le nombre de bits à un, tu as le nombre de processeurs utilisables par ton processus. Il faut bien sûr auparavant masquer (par sécurité) le résultat de GetProcessAffinityMask suivant le nombre physique de cœurs / processeurs sur la machine (faire un ET binaire entre le masque d'affinité et ((1<<CPUCount)-1) par exemple).