2012-04-26 28 views
0

我想運行兩個python腳本。 每個人都需要很長時間才能完成。 我正在使用雙核FreeBSD機器,並希望確保我使用兩個核心。 當我運行這兩個腳本時,我發現兩個腳本都運行在同一個CPU中。 如何控制兩個腳本是由不同的CPU執行的? 我知道在Linux中我們可以指定taskset -c X python foo.py其中X是CPU編號liks 0,1,2。 如何在FreeBSD系統中做類似的事情?FreeBSD - 在不同的處理器上運行Python代碼

+1

現在,內核擅長分配工作量。你有什麼證據表明你的流程運行在同一個核心上? – 2012-04-27 15:28:17

回答

2

您正在尋找的術語是「CPU親和力」。

cpuset -c -l X python foo.py

詳情請參閱How to set CPU affinity for a process in FreeBSD

+0

我得到了cpuset:setaffinity:不允許操作 – tan 2012-04-27 04:46:38

+0

您是否嘗試以根用戶身份運行該命令(或用'sudo'加前綴)? sudo默認不帶有一些freebsd發行版。檢查你的:'pkg_info -xI sudo'。有關您的版本的詳細信息:'pkg_info | grep sudo'來獲得一個版本,並假設版本爲1.6.9.20,'pkg_info -do sudo-1.6.9.20'來查找更多細節。 – 2012-04-27 15:25:16