表示遅延を最小限に抑えます。グラフィックス ソフトウェア スタック? プロセスの優先順位? RTOS?

表示遅延を最小限に抑えます。グラフィックス ソフトウェア スタック? プロセスの優先順位? RTOS?

私は、心理物理学と電気生理学の反応時間実験の表示遅延を最小限に抑える設定を考案したいと考えています。フレームごとにコストのかかるグラフィック計算を行うのではなく、一連の画像を適切なタイミングで画面に表示し、ユーザー入力を検出することだけを考えています。現在、研究室では画像の表示に Matlab を使用しており、Windows マシンで約 80 ミリ秒 (画面に近いフォトセンサーで測定) の画面表示時間を実現しています。最も問題となるのは遅延そのものではなく、変動性です。遅延が一定であれば、測定時間からそれを差し引くことで実際の反応時間を得ることができます。

によるとこの記事これらは、異なるレベルでのさまざまな画像処理ステップであり、次のフレームまで待機する可能性があり、それらが加算されて、指示してから数フレーム後に目的の画像が画面に表示されることになります。

とにかく...私は、この目的のためだけに使うマシンにArch Linuxをインストールしました。Intelグラフィックカードを搭載し、VGAモニターに接続しています。実験中は他のソフトウェアがほとんど動作しないようにするという考えです。画像の表示方法についてアドバイスをお願いします。デスクトップ環境やウィンドウマネージャは必要ありません。Xが必要かどうかもわかりません。これまた、間接的な処理が多いと、遅延が発生する可能性があるようです。私はこのすべてについてほとんど何も知りませんが、学ぶ意欲はあります。そのため、私が探しているのは、どこに努力を向けるべきかという一般的な推奨事項です。

ChronOS や ART-Linux のようなリアルタイム OS (またはカーネル パッチ) もありますが、これらはより細かい時間スケールで役立つようです。

これらすべてがあまりにも野心的で、多くの不必要な作業のように思われる場合でも、オーバーヘッドがいくらか追加されると思われる matlab よりも低いレベルで何かを思い付くことができれば、私はまだ満足です。

編集#1

svgalib を見つけました。これは便利でシンプル (そして古い) ようです。試してみて、どうなるか見てみましょう。

関連情報