0

80k を超える他の画像 (同じレベルのサブディレクトリなし) を含むフォルダーに存在する画像のサイズを変更しようとすると、サイズ変更に約 2 秒かかる場合があることに気付きました。(1.92秒)

それでも、他の画像が 10 個しかないフォルダー内の同じ画像は、ほぼ瞬時 (0.02 秒) です。

  • batchのアプリはgm4java:1.1.0.
  • Windows 10 で実行中
  • NTFS (これは問題かもしれないと思い、contig.exe を実行しましたが、変更はありません)
  • グラフィックマジック 1.3.21

ここに私のコマンドと出力があります:

GM> benchmark convert -size 200x200 "C:\lots-of-pics\image399.png[0]" -auto-orient -thumbnail 200x200 "C:\Users\user\AppData\Local\Temp\img-4518761374990603981.png"
Results: 1 threads 1 iter 1.94s user 1.94s total 0.514 iter/s 0.516 iter/cpu
GM> benchmark convert -size 200x200 "C:\less-pics\image399.png[0]" -auto-orient -thumbnail 200x200 "C:\Users\user\AppData\Local\Temp\img-4518761374990603981.png"
Results: 1 threads 1 iter 0.02s user 0.02s total 58.823 iter/s 64.000 iter/cpu

SO またはsourceforgeでこれについて何も見つけることができませんでした。なぜそんなに遅いのか、何か考えはありますか?

4

1 に答える 1

0

これを最初に試してみるべきでした。最新の GraphicsMagick 1.3.24 に更新すると、問題が解決したことが判明しました。

同じフォルダ内に他のファイルがいくつあっても、同じ画像のサイズ変更にかかる時間は同じになりました。

1.3.22 のリリース ノートを見ると、ディレクトリ内の多くのファイルについて言及されているため、修正されている可能性があります (正確なコミットが見つかりませんでした)。

一般: ディレクトリに多数のファイルがある場合のサブイメージ パスの抽出に関するパフォーマンスの問題が修正されました。

于 2016-07-20T17:01:29.797 に答える