2011-01-28 60 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和其他多进程开销。

请注意,在浏览链接之后,而不是尝试运行车道等之后,我会得出结论。我可能是错误的。