J'ai été confronté au même problème : le plus simple si tu utilises le compilateur gcc ou intel est d'utiliser OpenMP pour ca : il suffit d'ajouter le header 'omp.h', de linker avec GOMP (dans le cas de gcc), et d'utiliser la fonction omp_get_num_procs()
Si tu utilises le compilo microsoft sous windows, je ne sais pas s'il supporte OpenMP.