日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

如何让程序运行在所有CPU核心上

發(fā)布時間:2025/5/22 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 如何让程序运行在所有CPU核心上 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

先解釋幾個概念:多CPU,多核,超線程

多CPU:(一臺主機(jī)的)主板上有多個CPU。

多核:一個CPU有多個核心(下圖是6個物理核心)。

超線程:CPU有一個重要的參數(shù)是某個型號的CPU是否支持超線程。例如,某個CPU有4個物理核心,它支持超線程技術(shù),那么在邏輯上可以看作8個核心(也叫4核8線程)。比如我們在中關(guān)村在線上看到某款CPU的參數(shù)如下:

表明這款CPU是支持超線程技術(shù)的。

?

在Windows系統(tǒng)下如何設(shè)置一個進(jìn)程能在所有的(邏輯)核心上執(zhí)行呢?

方法一:在任務(wù)管理器中設(shè)置進(jìn)程的相關(guān)性。

方法二:在C#中Environment.ProcessorCount可以得到當(dāng)前CPU的所有邏輯核心。

1 static void SetProcessorAffinity() 2 { 3 pfcLogger logger = new pfcLogger(); 4 5 try 6 { 7 Process proc = Process.GetCurrentProcess(); 8 long affinitymask = (long)proc.ProcessorAffinity; 9 10 switch (Environment.ProcessorCount) 11 { 12 //Environment.ProcessorCount includes any hyperthreaded processors 13 14 case 2: affinitymask = 0x0003; break; // number of logical processors: 2 15 case 4: affinitymask = 0x000F; break; // number of logical processors: 4 16 case 8: affinitymask = 0x00FF; break; // number of logical processors: 8 17 case 12: affinitymask = 0x0FFF; break; // number of logical processors: 12 18 case 16: affinitymask = 0xFFFF; break; // number of logical processors: 16 19 default: break; // keep its default processorAffinity 20 } 21 proc.ProcessorAffinity = (IntPtr)affinitymask; 22 } 23 catch (System.ComponentModel.Win32Exception cwe) 24 { 25 MessageBox.Show("Fail to set processor affinity attribute. " + cwe.Message); 26 logger.Error(DateTime.Now, null, "PackOne.Server.Startup.Program", MethodBase.GetCurrentMethod().Name, cwe); 27 } 28 catch (System.NotSupportedException nse) 29 { 30 MessageBox.Show("Fail to set processor affinity attribute. " + nse.Message); 31 logger.Error(DateTime.Now, null, "PackOne.Server.Startup.Program", MethodBase.GetCurrentMethod().Name, nse); 32 } 33 catch (System.InvalidOperationException ioe) 34 { 35 MessageBox.Show("Fail to set processor affinity attribute. " + ioe.Message); 36 logger.Error(DateTime.Now, null, "PackOne.Server.Startup.Program", MethodBase.GetCurrentMethod().Name, ioe); 37 } 38 catch (Exception e) 39 { 40 MessageBox.Show("Fail to set processor affinity attribute. " + e.Message); 41 logger.Error(DateTime.Now, null, "PackOne.Server.Startup.Program", MethodBase.GetCurrentMethod().Name, e); 42 } 43 }

說明:上面的代碼的關(guān)鍵部分是這樣:

Process proc = Process.GetCurrentProcess();long affinitymask = (long)proc.ProcessorAffinity;switch (Environment.ProcessorCount){//Environment.ProcessorCount includes any hyperthreaded processorscase 2: affinitymask = 0x0003; break; // number of logical processors: 2case 4: affinitymask = 0x000F; break; // number of logical processors: 4case 8: affinitymask = 0x00FF; break; // number of logical processors: 8case 12: affinitymask = 0x0FFF; break; // number of logical processors: 12case 16: affinitymask = 0xFFFF; break; // number of logical processors: 16default: break; // keep its default processorAffinity }proc.ProcessorAffinity = (IntPtr)affinitymask;

其他代碼是用于寫日志和異常處理的。

?

另外,如何在windows上查看某個CPU的物理核心和邏輯核心呢?

使用命令:WMIC CPU Get DeviceID,NumberOfCores,NumberOfLogicalProcessors

?如果NumberOfCores =?NumberOfLogicalProcessors ,則表明該CPU不支持超線程。

?

轉(zhuǎn)載于:https://www.cnblogs.com/freecodeX/p/4333259.html

總結(jié)

以上是生活随笔為你收集整理的如何让程序运行在所有CPU核心上的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美中文字幕第一页 | 欧美日韩片 | 性高潮视频在线观看 | 色中文字幕| 久久精品99国产精品日本 | 91亚洲一区二区三区 | 国产在线xxx| 精品国模一区二区三区 | 亚洲一级影院 | 日韩免费淫片 | 给我免费观看片在线电影的 | 曰韩毛片| 中文字幕无码毛片免费看 | 国产精品久久久久不卡 | 亚洲精品免费观看 | 九九爱爱视频 | 黄视频在线播放 | 久久天 | 亚洲成年人网 | 美女久久久久久久久久 | 91大神网址 | 色666| 特种兵之深入敌后 | 人妻一区二区三区在线 | 黑人狂躁日本妞hd | 国产视频污| 午夜福利啪啪片 | 国产欧美另类 | 在线久草 | 少妇一级淫免费播放 | 中文字幕在线观看第二页 | 开心激情亚洲 | 亚洲高清在线观看视频 | 国产精品一区二区在线播放 | 一区二区 亚洲 | 亚洲成人诱惑 | 三级大片在线观看 | 王者后宫yin肉h文催眠 | 男人日女人逼 | 欧美成人精品网站 | 西西人体做爰大胆gogo直播 | 一区二区三区视频免费视 | 大尺度做爰无遮挡露器官 | 欧美一级专区免费大片 | 偷拍一区二区三区四区 | 午夜精品无码一区二区三区 | 99国产精品人妻噜啊噜 | 日韩国产中文字幕 | 国产成人精品白浆久久69 | 99在线观看免费 | 丰满人妻一区二区三区四区 | 波多野吉衣伦理片 | 麻豆视频精品 | 国产精品原创 | 国产三级国产精品国产国在线观看 | 天天射天天草 | 日韩一区二区三区视频在线观看 | 亚洲天堂成人在线观看 | 日美av| 超碰在线播放97 | 亚洲欧美日韩精品 | 99国产精品白浆在线观看免费 | 日本a视频在线观看 | 欧美黑人粗大 | 天堂在线国产 | 国产又粗又猛又爽又黄的网站 | 色婷婷视频在线观看 | 三级伦理视频 | 黄色在线视频网址 | 五月天综合社区 | 久久精品成人av | 日本三级播放 | 91视频网址入口 | 国产在线视频资源 | 自拍偷拍视频网站 | 日韩一级一级 | 在线免费日韩av | 国产精品久久77777 | 男女男精品视频站 | www.av在线 | 亚洲第一成人在线 | 成人免费看片'在线观看 | 这里只有精品视频在线观看 | 艳妇臀荡乳欲伦交换在线看 | 99久久婷婷国产精品综合 | 亚洲av无一区二区三区怡春院 | 富婆如狼似虎找黑人老外 | 乐播av一区二区三区 | 天天视频入口 | 日本国产视频 | 成人午夜视频精品一区 | 色婷婷狠狠爱 | 啪啪免费av| 青青操在线视频 | 欧美高清在线一区 | 精品人伦一区二区三区蜜桃免费 | 在线观看视频一区 | 色窝窝无码一区二区三区 | 免费黄色成人 |