在包含大量文件的文件夹中调整图像大小时,GraphicsMagick 变慢 (+80k)

GraphicsMagick slower when resizing an image in folder with lots files (+80k)

我注意到,当我尝试调整位于包含超过 80k 其他图像的文件夹中的图像(同一级别没有子目录)时,调整大小可能需要将近 2 秒。 (1.92s)

然而,同一张图片,在一个只有 10 张其他图片的文件夹中,几乎是即时的 (0.02s)。

这是我的命令和输出:

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 上找不到任何关于此的信息。知道为什么它这么慢吗?

我应该先试试这个。结果更新到最新的 GraphicsMagick 1.3.24 解决了这个问题。

调整同一张图片的大小,无论同一文件夹中有多少其他文件,现在都需要相同的时间。

查看 release notes of 1.3.22 这可能已经修复了它,因为在目录中提到了许多文件(我找不到确切的提交):

General: Fixed performance problem with sub-image path extraction when there are many files in the directory.