2012-06-11 27 views
8

複数のxvfbディスプレイを実行することに興味があります:xvfbディスプレイに接続するパラレルで実行されているスクリプトのインスタンスが10〜50個あります。同じ数のxvfbディスプレイを実行し、1対1を接続すると便利ですか?または、複数のプロセスが同じディスプレイを共有できますか? RAMは問題ではなく、処理能力もありません。並列処理のためのXvfbの複数の表示?

答えて

12

1つのXvfbサーバーは、かなりの接続を非常にうまく処理できるはずです。あなたがしていることを確認したいことの1つは、-noresetオプションを使用してサーバーを実行することです。それがなければ、クライアントが切断するたびにメモリリークが発生します。

複数のXvfbサーバが役立つのは、マシンに複数のプロセッサ(たとえば8つのコア)があり、スクリプトがグラフィックス重い場合です。このような場合には、スクリプトの多くのインスタンスを接続し、topをチェックして、XvfbのCPU使用率を確認します。それが100%の場合、追加のXvfbインスタンスの恩恵を受ける可能性があります。

+0

Cool。私はi7クアッドコアを持っています。私は毎秒約50のWebページをレンダリングしています。私はノーセットオプションについて知らなかったが、私の(16GB)メモリは45分ごとに最大になっていた。私の汚れた修正は、15分ごとにcron killall Xvfbに行われました。ありがとうございました。私のCPUは、1台のXvfbサーバーで約70%〜90%の速度で動作します。あなたの情報で私はラウンドロビンのキューに4つのサーバーを考えていますか? – nathancahill

+0

単一のXvfbプロセスが70%から90%のCPUを使用していますか?それは400%正しいのですか?したがって、単一のコアの70〜90%ですか? – jterrace

+0

これを見ると、Xvfbに接続しているPythonスクリプトがCPUを占有しています。 xvfbサーバーは約3%です。はい、それは400%外です。 – nathancahill

関連する問題