Categories: 未分類

Dhrystone

Dhrystone

 「Dhrystone」  
Dhrystoneは、 1984年にReinhold P. Weickerによって開発された合成コンピューティングベンチマークプログラムであり、システム(整数)プログラミングを代表することを目的としています。Dhrystoneは、一般的なプロセッサ(CPU)のパフォーマンスを代表するものに成長しました。「Dhrystone」という名前は、浮動小数点のパフォーマンスを強調するWhetstoneと呼ばれる別のベンチマークアルゴリズムの駄洒落です。
Weickerは、Dhrystoneを使用して、 FORTRAN、PL / 1、SAL、ALGOL 68、およびPascalで記述されたプログラムを含む、幅広いソフトウェアからメタデータを収集しました。次に、これらのプログラムをさまざまな一般的な構成要素(プロシージャの呼び出し、ポインタの間接参照、割り当てなど)の観点から特徴付けました。これから、代表的なミックスに対応するDhrystoneベンチマークを作成しました。DhrystoneはAdaで公開され、Rick Richardsonによって開発されたUnix用のCバージョン(「バージョン1.1」)がその人気に大きく貢献しています。

コンテンツ
1 ドライストーンvs.砥石
2 Dhrystoneが対処する問題3 結果 4 欠点
5 も参照してください
6 参考文献
7 外部リンク

ドライストーンvs.砥石
Dhrystoneベンチマークには浮動小数点演算が含まれていないため、その名前は、当時人気のあった浮動小数点演算のWhetstoneベンチマークの駄洒落です。ベンチマークからの出力は、1秒あたりのDhrystoneの数(1秒あたりのメインコードループの反復回数)です。
WhetstoneとDhrystoneはどちらも合成ベンチマークです。つまり、これらは、いくつかの一般的なプログラムセットのプロセッサ使用量を統計的に模倣するように注意深く設計された単純なプログラムです。1972年に開発されたWhetstoneは、もともと1970年からの測定に基づいて典型的なAlgol 60プログラムを模倣しようと努めましたが、1960年代のコンピューティングの高度な数値指向を反映して、最終的にはFortranバージョンで最も人気がありました。

Dhrystoneが対処する問題
で信頼できる情報源に引用を追加して、このセクションの改善にご協力調達されていない資料は、異議を申し立てられ、削除される可能性が
新しいコンピューターの汎用(「整数」)パフォーマンスの指標としてのDhrystoneの最終的な重要性により、Dhrystoneは商用コンパイラー作成者のターゲットになりました。さまざまな最新のコンパイラ静的コード分析手法(デッドコードの除去など:プロセッサを使用するが、使用または出力されない内部結果を生成するコード)により、合成ベンチマークの使用と設計がより困難になります。1988年3月にWeickerとRichardsonによってリリースされたベンチマークのバージョン2.0には、さまざまなコンパイラ技術を阻止することを目的とした多くの変更がありました。それでも、基礎となるベンチマークを変更しないように注意深く作成されました。コンパイラーを失敗させるこの努力は、部分的にしか成功しませんでした。同じ年の5月にリリースされたDhrystone2.1にはいくつかの小さな変更があり、2010年7月の時点でDhrystoneの現在の定義が残っています。
コンパイラの最適化に関連する問題以外に、Dhrystoneでは他のさまざまな問題が引用されています。小さいコードサイズと小さいデータセットサイズを含むこれらのほとんどは、1984年の発行時に理解されていました。より微妙なのは、文字列操作のわずかな過剰表現です。これは主に言語に関連しています。AdaとPascalの両方が文字列は言語の通常の変数ですが、Cはそうではないため、参照ベンチマークでの単純な変数割り当ては、Cライブラリでのバッファーコピー操作になりました。もう1つの問題は、報告されたスコアに、使用されたコンパイラや最適化などのシステムを比較するときに重要な情報が含まれていないことです。
Dhrystoneは、単純なベンチマークとして非常に回復力がありますが、真のパフォーマンスを確立する上での継続的な価値には疑問が使いやすく、十分に文書化されており、完全に自己完結型で、よく理解されており、ほとんどすべてのシステムで動作させることができます。特に、最近開発されたEEMBCベンチマークスイート、CoreMarkスタンドアロンベンチマーク、HINT、Stream、さらにはBytemarkが広く引用され、使用されており、メモリのより具体的なベンチマークもありますが、組み込みコンピューティングの世界で広く使用されています。サブシステム(Cachebench)、TCP / IP(TTCP)、およびその他多数。

結果
Dhrystoneは、異なる命令セット( RISCとCISCなど)間の命令数の比較が単純な比較を混乱させる可能性があるため、MIPS(1秒あたり100万命令)よりも意味のある結果を表す場合がたとえば、同じ高レベルのタスクでは、RISCマシンでさらに多くの命令が必要になる場合がありますが、単一のCISC命令よりも高速に実行される場合がしたがって、Dhrystoneスコアは、1秒あたりのプログラム反復完了数のみをカウントし、個々のマシンがマシン固有の方法でこの計算を実行できるようにします。Dhrystoneベンチマークのもう1つの一般的な表現は、Dhrystoneスコアを1757(VAX 11/780で取得された1秒あたりのDhrystoneの数、通常は1 MIPSマシン)で割ったときに得られるDMIPS(Dhrystone MIPS )です。
結果を表す別の方法はDMIPS / MHzで、DMIPSの結果をCPU周波数でさらに除算して、さまざまなクロックレートで実行されているCPUを簡単に比較できるようにします。

欠点
Dhrystoneをベンチマークとして使用することには、落とし穴が
これは、通常、現代の実際のプログラムを代表するものではない珍しいコードを特徴としています。
コンパイラの最適化の影響を受けます。たとえば、文字列コピーのパフォーマンスを測定するために、多くの文字列コピーを実行します。ただし、Dhrystoneの文字列は既知の一定の長さであり、それらの開始は自然な境界に揃えられます。これは、通常、実際のプログラムにはない2つの特性です。したがって、オプティマイザは、文字列のコピーをループのない一連の単語の移動に置き換えることができます。これにより、はるかに高速になります。その結果、この最適化はシステムパフォーマンスを誇張し、場合によっては30%以上も誇張します。
Dhrystoneの小さなコードサイズは、最新のCPUの命令キャッシュに収まる可能性があるため、命令フェッチのパフォーマンスは厳密にテストされ同様に、Dhrystoneもデータキャッシュに完全に収まる可能性があるため、データキャッシュミスのパフォーマンスを発揮しません。キャッシュへの適合の問題に対処するために、SPECintベンチマークは1988年に作成され、その時代のL1またはL2キャッシュに適合できなかった(最初は8つの)はるかに大きなプログラムのスイート(コンパイラを含む)を含みました。

も参照してください
Standard Performance Evaluation Corporation(SPEC)
オタクベンチ

参考文献
^ 駄洒落:砥石ウェットストーンドライストーン dhライストーン。
^ ワイス、アラン。「Dhrystoneベンチマーク:履歴、分析、「スコア」および推奨事項」 (PDF)。2011年7月26日のオリジナルからアーカイブ (PDF)。
^ フランコ・ザッパ(2017)。マイクロコントローラー:8ビットおよび32ビットデバイス用のハードウェアとファームウェア。SocietàEditriceEsculapio。p。66. ISBN  978-88-9385-022-3。

外部リンク
ワイカー、ラインホールド(1984年10月)。「Dhrystone:合成システムプログラミングのベンチマーク」。ACMの通信。27(10):1013–30。土井:10.1145 /358274.358283。S2CID9026014 。_
Dhrystoneベンチマーク:バージョン2と測定ルールの理論的根拠(Reinhold P. Weicker、1988)
DHRYSTONEベンチマークプログラム(Reinhold P. Weicker、1995)

admin

Share
Published by
admin

Recent Posts

Dhrousha

Dhrousha Dhrous…

6日 ago

ダオネッケン

Dhronecken Dhro…

2週間 ago

ドロール州

Dhrol_State Dhr…

2週間 ago

Dhrol

Dhrol Dhrolは、イン…

2週間 ago

ドロヒ

Dhrohi Dhrohiは、…

2週間 ago

ドリティマン・ムケルジー

Dhritiman_Mukhe…

2週間 ago