2013-06-25 24 views
0

我有一個關於Erlang的問題。
我怎麼知道Erlang光束在哪個核心上運行?
或者是否有任何Linux命令可以告訴核心進程在哪裏運行?
罐頭頂部工作?但我不想交互地觀察它。通過一個命令行可以提取信息會更好。例如:
top -b -n 1 -p <beam_pid>
這可能是工作,但我不知道如何添加SMP的信息,即在其核心...
或者,我可以使用PS,我不知道...
你能幫我嗎?
預先感謝您:)
BRS,
如何獲得特定進程的SMP信息(運行在哪個核心上)

+0

或者,您也可以將Erlang調度程序綁定到邏輯內核。這樣您就可以知道Beam VM使用哪些內核。見http://developer.vz.net/2009/07/30/about-erlangotp-and-multi-core-performance-in-particular-kenneth-lundin/ –

+0

是的,但我認爲一個動態的方式可能會更好 – ruanhao

回答

0

傢伙,我發現兩種方法可以工作。
1)ps -Ao user,pid,psr,cmd,這可以用來查看pid的SMP信息。
2)此方法需要額外的步驟。首先,運行top,並添加字段P。然後點擊W頂部配置文件保存爲~/.toprc。因此我們可以運行top -b -n 1 -p <pid>來顯示某個pid的SMP信息。
這些方法適用於CentOS,但不適用於OSX ...任何好主意仍然歡迎:)

相關問題