本文要回答的問題:什么是并行計算岩榆?如何做到?
CPU型號
查看個數(shù)
lscpu
確認坟瓢,該機子如下:
- 4顆物理CPU #sockets
- 每顆是10核 #cores per socket
- 每個核支持2線程 #threads per core
- 總共80個物理CPU勇边,也就是80個線程(4102)
區(qū)別并行與并發(fā)
“并發(fā)”,這和并行是有著本質(zhì)的不同的载绿。并發(fā)是“偽并行”粥诫,看似并行,而實際上還是一個CPU在 執(zhí)行一切事物崭庸,只是切換的太快怀浆,我們沒法察覺罷了。
也就是CPU時間片的輪轉(zhuǎn)怕享。
多線程执赡,可以做并行計算,并行計算還可以通過多進程方式函筋。
多進程(這又包括共享存儲區(qū)的和分布式多機沙合,以及混合式的),指令級并行跌帐。
ILP(指令級并行)首懈,x86架構(gòu)里叫SMT(同時多線程)绊率,在MIPS架構(gòu)里與之對應(yīng)的是super scalar(超標量)和亂序執(zhí)行,二者有區(qū)別究履,但共同點都是可以達到指令級并行滤否,這是用戶沒法控制的,不屬于編程范圍最仑,只能做些有限的優(yōu)化藐俺,而這有限的優(yōu)化可能只屬于編譯器管轄的范疇,用戶能做的甚少泥彤。
而qsub -pe 和-l p參數(shù)的差異欲芹。。吟吝。
逐步解答菱父,未完待續(xù)。