Lua Lanes和多核支持:能做到吗?

Lua Lanes 表示它通过多线程实现了多核支持。这不正确吗?不需要使用多个进程才能利用多个核心吗?Lua Lanes 能做到这一点吗?

也许我误解了他们的意思。以下是他们网站上的段落:

Lua Lanes 是一个 Lua 扩展库,提供在并行中运行多个 Lua 状态的可能性。它旨在用于优化多核 CPU 的性能,并研究使 Lua 程序自然并行的方法。

谢谢

原文链接 https://stackoverflow.com/questions/4825264

点赞
stackoverflow用户223424
stackoverflow用户223424

就我所知,他们在一个多线程的操作系统进程内运行多个 Lua 机器。他们使用 Lindas 用于 Lua 共享数据和 IPC,但这不涉及操作系统级别的 IPC 和其他多进程开销。

请注意,在浏览您提供的链接后,我得出了这个结论,并未尝试运行 lanes 等。我的结论可能是完全错误的。

2011-01-28 06:02:30
stackoverflow用户221509
stackoverflow用户221509

这取决于操作系统,但是大多数现代操作系统(Windows,Linux / \ * nix,...)通过线程而不是进程将任务分配到核心/ CPU。因此,具有多个线程的单个进程可以在多个核心上运行。

Lanes使用真正的操作系统线程,而不是轻量级的Lua线程-协程,因此调度程序实际上可以将其分配到多个核心上。

2011-01-28 08:13:34