2011-01-28 22 views
2

Lua Lanes表示它通過多線程支持多核心支持。這不正確嗎?你不需要使用多個進程來利用多核心? Lua Lanes是否這樣做?Lua車道和多核心支持:可以完成嗎?

也許我誤解了他們在說什麼。這裏是他們的網站的通道:

Lua Lanes是一個Lua擴展庫,提供了並行運行多個Lua狀態的可能性。它旨在用於優化多核CPU的性能,並研究使Lua程序自然並行開始的方法。

感謝

回答

10

它取決於操作系統,但大多數當前操作系統(Windows,Linux/* nix,...)通過線程而不是進程將任務分配到內核/ CPU上。因此,一個具有多個線程的進程可以在多個核心上運行。

車道使用真正的操作系統線程,而不是輕量級的Lua線程 - 協程,所以調度程序實際上可以將其分配到多個內核中。

2

據我所知,他們運行一個多線程的操作系統進程內的多個Lua的機器。他們使用Lindas作爲Lua共享數據和IPC,但這不涉及OS級IPC和其他多進程開銷。

請注意,在瀏覽鏈接之後,而不是嘗試運行車道等之後,我會得出結論。我可能是錯誤的。