キャンバスとラベルの比較 - ページ 11

 

そこで、リフレッシュレート制限なしと制限ありのディスプレイを比較した結果を紹介します。

これらの測定を繰り返すためのソースは、こちらからダウンロードできます: https://www.mql5.com/ru/code/33898

Дисплей с оптимизацией для вывода текста в чарт по типу консоли
Дисплей с оптимизацией для вывода текста в чарт по типу консоли
  • www.mql5.com
Данная библиотека позволяет создавать дисплеи для удобного вывода текстовой информации в чарт с наиболее оптимальной скоростью
 

また、私は特別にループで働くエキスパートを書いたターミナルチャートで、チャートとテスターの両方で比較した結果を公表しています。

ソースコードのダウンロードは、KB: https://www.mql5.com/ru/code/33898 から。

結果比較表

キャンバス無制限fps キャンバス限定fps ラベル 無制限fps レーベル限定fps
最小遅延時間 (μs) 1530 1 18 0
中間遅延時間 (μs) 7674 4086 48 7
最大遅延時間(μs) 11967 11093 785 286
合計(μs) 77727510 29452299 39648984 27439654

 
Mihail Matkovskij:

そこで、リフレッシュレート制限なしと制限ありのディスプレイを比較した結果を紹介します。

これらの測定を繰り返すためのソースコードは、こちらからダウンロードできます:https://www.mql5.com/ru/code/download/33898/chartdisplay.mqh、 こちらからダウンロードできます:https://www.mql5.com/ru/code/download/33898/canvasvslabelstester.mq5

limitFpsはどこだ?

 
Dmitry Fedoseev:

limitFpsはどこにあるのですか?

Download files in\MQL5Experts/Canvas-vs-labels-Measurement/Cyberdev and \MQL5Experts/Canvas-vs-labels-Measurement (in KB).fpsを制限するには、入力パラメータでlimit_fpsをtrueに設定 します。ファイル:CanvasVsLabels.mq5テストの実行方法は上記の通りです。そして、KBに記述があります。

 
Mihail Matkovskij:

Download files in\MQL5Experts/Canvas-vs-labels-Measurement/Cyberdev and \MQL5Experts/Canvas-vs-labels-Measurement (in KB).fpsを制限するには、入力パラメータでlimit_fpsをtrueに設定 します。ファイル:CanvasVsLabels.mq5テストの実行方法は上記の通りです。そして、KBに記述があります。

特にlimitFpsについて 質問されました。

その必要はありません。あなたの空想が現実に即していないことは、とっくの昔に明らかになっています。全体の興味は、自分がどこで間違っているのかをもう一度確認することです。

 
Dmitry Fedoseev:

特にlimitFpsについて 質問されました。

これはアップデート制限です。ディスプレイの更新が人間の目に 許容される最小リフレッシュレートを超えないように作られています。そのため、Labelsと比較しても、Kanvasの方が性能は上です。そして、この制限が「ラベル」に適用されると、そのような表示は全く飛ばなくなります。測定結果は上記の通りです。それに、以前にも紹介したことがあります。何がわからないのか、、、どうしたんだろう、、、?

 
Nikolai Semko:
レナト・ファットフーリン

ビジュアライザーでキャンバスの更新速度を手動で制限する方法を教えてください。

低速では画像がリアルタイムに更新され、高速ではテストのスピードが落ちないようにするためですか?

現在、canvas(tick ごと に更新される場合)は、視覚化全体の速度を大幅に低下させています(プロファイリングでは、レンダリング時間の 80 ~ 90% を示しています)。秒単位で一時停止を設定できるように工夫したが、機能が制限され松葉づえになっている(低速でも画像の更新はほとんどない)。

頻繁に更新されないように、何にバインドすればいいのでしょうか?GetMicroseconds?

どの機能をスキップするか?

 
Andrey Khatimlianskii:

ビジュアライザーのカンヴァスのリフレッシュレートを人間的な方法で制限するには?

低速では画像がリアルタイムに更新され、高速ではテストのスピードが落ちないようにするためですか?

現在、canvas は(tick ごと に更新されると)可視化全体の速度を大幅に低下させます(プロファイリングではレンダリング時間の 80-90% を占めています)。秒単位で一時停止を設定できるように工夫したが、機能が制限され松葉づえになっている(低速でも画像の更新はほとんどない)。

頻繁に更新されないように、何にバインドすればいいのでしょうか?GetMicroseconds?

スキップする機能は?

MT5テスターでは、タイマーが機能し、60秒に設定すると、テスターの時間に合わせて1分に1回更新されます)

 
Mihail Matkovskij:

これは、アップデートの制限事項です。ディスプレイの更新が人間の目に 許容される最小リフレッシュレートを超えないように作られています。そのため、CanvasはLabelsと比較しても、パフォーマンスが向上しています。そして、この制限が「ラベル」に適用されると、そのような表示は全く飛ばなくなります。測定結果は上記の通りです。それに、以前にも紹介したことがあります。何がわからないのか、、、どうしたんだろう、、、?

何か聞いたっけ?

 
正しいファイルが見つかりました。どこの、どのタイミングで数字を見ればいいのかは不明ですが、それを抜きにしても、レブラ1枚ではなくキャンバス1枚、ラベルの束ではなくキャンバス1枚で、格段に遅くなっていることは肉眼でも明らかです。