私たちは、cffiインターフェイスを介してフレームグラバーカードからデータを取得するPythonフレームワークを構築しています。いくらか操作した後、RAWイメージ(tofileメソッドを使ってnumpy配列)を約120 MB/sの速度でディスクに書き込もうとします。我々は、ディスクがこのスループットを処理できることをよく認識しています。pythonのプロセス書き込みを、ダーティとマークされずに即時に書き戻すようにスケジュールする
私たちが経験していた問題は、フレームが落ちてしまい、多くの場合、フレームグラバーの出力から完全に欠落したデータが1秒間消えてしまいました。私たちが見つけたのは、Debianシステムがsysctlのdirty_background_ratioにヒットしたときに、これらのフレームドロップが発生していたことです。システムは、フレームグラバーを詰まらせ、フレームをスキップさせるようなフラッシュバックグラウンドギャングを呼び出していました。
驚くことではないが、0%にdirty_background_ratioを設定すると、完全に問題を取り除くことに成功しそう(1%と2%のようにも小さな数字はまだ〜40%のフレーム損失をもたらしたことは注目に値します)私の質問は、このPythonのプロセスを書き込むために即座にスケジュールされ、ダーティなバッファを完全にバイパスするような方法で書き込む方法はありますか?だから、HERESに
おかげ