imagemagick потребляет все оперативной памяти, а затем дает дамп ядра - PullRequest
0 голосов
/ 30 апреля 2020

Я делаю простой convert -verbose -density 300 input.pdf -quality 100 image-%003d.jpg, который разбивает файл PDF на серию изображений, по одному для каждой страницы. В этом случае я делаю это на большом 800-страничном документе. Не уверен, что именно происходит, но в конечном итоге imagemagick потребляет все оставшиеся 16 ГБ памяти моей системы, а затем выполняет дамп памяти без вывода изображений.

Вот как выглядит форма вывода, при условии, что каждая /tmp/magick-* является одной страницей, сохраняемой во временных файлах. Не уверен, что делает первая строка.

    'gs' -sstdout=%stderr -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=2 '-sDEVICE=pngalpha' -dTextAlphaBits=4 -dGraphicsAlphaBits=4 '-r300x300'  '-sOutputFile=/tmp/magick-68824mpuDOrU2urYm%d' '-f/tmp/magick-6882498G4VzlCsOJk' '-f/tmp/magick-6882475lzlTzRy8pk'
    /tmp/magick-67235ClzIbj1qM7Yb290 PNG 1707x2633 1707x2633+0+0 8-bit sRGB 112324B 0.390u 0:00.208

...

    /tmp/magick-67235ClzIbj1qM7Yb291 PNG 1707x2637 1707x2637+0+0 8-bit sRGB 73753B 0.220u 0:00.320
    Aborted (core dumped)

Могу ли я заставить imagemagick делать это в сегментах, чтобы он не держал все в оперативной памяти?

(ImageMagick 7.0.10-9 Q16 x86_64 2020-04-26)

...