2

以下は、47,000 エントリのファイル (8 コア Windows 7、Cygwin を実行) で実行するのに 24 分かかります。

cat File_Path.txt | parallel --progress --tag -j +0 'pdftotext {} 2>/dev/null - | wc -w;' > results.txt

File_Path.txtPDFからテキストファイルに変換する際に各行を取り、その中の単語を数えています。処理中に時間を削る方法はありますか?

4

1 に答える 1

2

148 個のランダムな PDF ファイルでスクリプトを実行しました。これには 41 cpu 秒かかりました = ファイルごとに 0.27 cpu 秒。そのため、8 コア マシンで約 1700 秒を期待する必要があります。これは、ご覧のとおりです。したがって、24 分間の CPU 使用率が 100% であると仮定します。

GNU Parallel はジョブごとに 0.01 秒未満しか費やさないため、ほとんどの時間は pdftotext の実行に費やされます。したがって、pdftotext よりも高速なツールを使用することで、ほとんどのメリットが得られます。残念ながら、私はそのようなツールを知りません。

- 編集 -

他のサーバーに ssh アクセスできる場合は、その CPU も使用できます。その方法については、チュートリアルhttp://www.gnu.org/software/parallel/parallel_tutorial.html#remote_executionを参照してください。

于 2013-10-02T01:47:50.190 に答える