1

調査したかったのですが、このトピックに関する情報が見つかりませんでした。

私が見つけた唯一の情報-> http://benchmarksgame.alioth.debian.org/u32/compare.php?lang=csharp&lang2=lua

そして、私はこのチャートをどのように解釈できるかわかりません。私が正しければ、基本的にLuaはMonoよりも10倍高速だと言っています。しかし、Monoのメモリ使用量はLuaの約8倍です。

これはパフォーマンスについて何と言っていますか?

LuaMonoの比較->長所/短所

編集: [ゲーム開発]Cryengine3はc++/luaatmを使用します。しかし、このエンジンのモノポートをリリースする人もいます。私はMonoに精通しています。しかし今、私はLuaについて調査して、この言語を学ぶ価値があるかどうか、またはMonoに固執する必要があるかどうかを確認したいと思いました。

4

2 に答える 2

5

あなたはリンゴとオレンジを比較しています。C#は静的に型付けされた言語であり、バイトコード言語であるCILにコンパイルされ、仮想マシンによって実行(または通常はJITted)され、Webおよびスタンドアロンアプリケーションの開発に使用されます。Luaは動的に型付けされたスクリプト言語であり、通常はインタープリターによって実行され、拡張可能なスクリプト言語としてより大きなアプリケーションに組み込まれることがよくあります。

また、ベンチマークの解釈が間違っています。棒グラフは、Monoプログラムの実行に、同等のLuaプログラムと比較して約1/10の時間がかかることを示しています。

とは言うものの、この種のマイクロベンチマークはほとんど役に立たない。私の言葉を信じないでください。シュートアウト自体がそれについて言っていることを読んでください。あなたは全部を読むべきです、しかし私はいくつかのジューシーな引用を引き出します:

「ベンチマークのパフォーマンスは、実際のプログラムから派生したものであっても、ホットスポットが異なる同様のプログラムのパフォーマンスを予測するのに役立たない場合があります。」

「高スループット環境で通訳言語を使用することは逆説的に思えるかもしれませんが、CPU時間が制限要因になることはめったにありません。言語の表現力は、ほとんどのプログラムが小さく、ほとんどの時間をIで過ごすことを意味します。 /Oおよびネイティブランタイムコード。」

「プログラミング言語は、設計者がまったく同じ目的で使用することを意図しているかのように相互に比較されますが、そうではありません。」

簡単に言うと、言語を選択して、それを使ってやりたいことがうまくいくかどうか、意図を明確に表現できるかどうか、クリーンで保守可能なコードを記述できるかどうかに基づいて選択します。いくつかのほとんど意味のない数字に基づいていません。

于 2012-06-04T11:36:45.417 に答える
0

これは言う:リンゴはバナナよりも環境に優しい。

「LuaはC#よりも少ないメモリを消費しますが、CPUサイクルは約50%多くなります」のように言うことはできません。構築したいものなど、コンテキストに関してそれらを比較する必要があります。

5 * 5を計算したい場合は、Luaの方が速いかもしれません(実装の観点から)。しかし、多くのクライアントでERPアプリケーションを構築したい場合は、Luaはお勧めしません。

そのため、何をしたいかに大きく依存するため、長所と短所の明確なリストを提供することはできません。

于 2012-06-04T11:36:37.510 に答える