2

Lua Lanesは、マルチスレッドによるマルチコアサポートを可能にすると述べています。これは間違っていませんか?複数のコアを利用するために複数のプロセスを使用する必要はありませんか?Lua Lanesはこれを行いますか?

おそらく私は彼らが言っていることを誤解しています。これが彼らのサイトからの一節です:

Lua Lanesは、複数のLua状態を並行して実行する可能性を提供するLua拡張ライブラリです。これは、マルチコアCPUのパフォーマンスを最適化するため、およびLuaプログラムを最初から自然に並列化する方法を研究するために使用することを目的としています。

ありがとう

4

2 に答える 2

10

オペレーティングシステムによって異なりますが、現在のほとんどのオペレーティングシステム(Windows、Linux / * nixなど)は、プロセスではなくスレッドによってタスクをコア/CPUに分散します。したがって、複数のスレッドを持つ単一のプロセスを複数のコアで実行できます。

Lanesは、軽量のLuaスレッド(コルーチン)ではなく、実際のOSスレッドを使用するため、スケジューラーは実際にそれを複数のコアに分散できます。

于 2011-01-28T08:13:34.797 に答える
2

私の知る限り、彼らは1つのマルチスレッドOSプロセス内で複数のLuaマシンを実行しています。彼らはLua共有データとIPCにLindasを使用していますが、これにはOSレベルのIPCやその他のマルチプロセスオーバーヘッドは含まれていません。

レーンを走らせようとした後ではなく、リンクをスキミングした後でこれを結論付けることに注意してください。私は完全に間違っている可能性があります。

于 2011-01-28T06:02:30.773 に答える