[英]Openmp thread affinity: Set 2 threads in the program, how many cores are running?
我編寫了一個Openmp程序,在兩核計算機上運行它。
當我將線程號從1更改為2並將線程號從2更改為4時,我無法獲得2倍的速度。
2個線程到4個線程,即超線程。 由於資源限制,超線程通常無法達到2倍的速度。
但是,從1線程到2線程,仍然無法達到2倍的速度,對此我感到困惑。我搜索並找到了CPU親和力概念,但我不知道Openmp是如何工作的。
當我使用2個線程時,Openmp靜態調度會將2個線程安排為1個內核還是2個內核?
omp_get_thread_num()函數無法告訴我答案,因為返回值為0或1,但我不知道它們是在1核還是2核上運行。
感謝幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.