3

PHP を使用して、exec() を使用して FFMPEG コマンドを呼び出しています。このコマンドを開始するスクリプトは、次を使用して別の PHP スクリプトから呼び出されます。

proc_close(proc_open('php /phpdirectory/process.php &', array(), $foo));

これはうまくいきます。ffmpeg コマンドが呼び出されて「バックグラウンドで」実行され、最初のスクリプトがユーザーに返され、この場合はファイルのアップロードが続行されます。複数のコアを持つマシンを使用している場合はどうなりますか? コアごとに ffmpeg プロセスを呼び出せるように最適化するにはどうすればよいですか? それとも、マルチコア マシン プロセスはとにかく作業をコア間で分割し、単一のプロセスをより高速に処理しますか?

誰?

4

2 に答える 2

4

FFMPEG プロセスのスケジューリングは、カーネル スケジューラによって行われます。各コアでプロセスを明示的に起動することはできません。

于 2009-10-09T09:30:03.687 に答える
0

blairyeahは、それが最適化ではないということは正しいですが、実際には、を使用してプロセスを特定のCPUに固定することができますtaskset(1)

ServerFaultの回答で解決策が見つかりました。

于 2012-12-11T23:21:01.813 に答える