Scenario:
From time to time I am using termux in combination with dcraw and imagemagick to convert camera raw images to my need "on the go". This works great, thank you all for that.
running i.e.
:~$ time for i in *.tiff ; do convert -monitor -quality 100% -sharpen 0x3 "$i" "${i%.*}s.jpg" ; done
in termux and checking CPU usage in a second termux session with top and 1 shows that only one CPU is used for this task. The same command in a linux-pc console will use multiple cores.
This task takes about 6min on my phone for a single Image to finish. I dont know if this is Android, command-specific (imagemagicks identify -version gives me no OpenMP) or termux related.
To speed things up i just wanted to ask in genell "if termux is capable of using multiple CPU cores for a task"? or is there an option like in make with
make -j4
Thank you for termux :-)
openmp in imagemagick was disabled because of segfaults.
https://github.com/termux/termux-packages/issues/1314
@its-pointless
OMG! Thank you so much!
I am down now to 1/9th, 40s per Image instead of 6 min.
I installed Graphicsmagic which uses the same commands as imagemagick but with OpenMP enabled. All cores are used. Output is exactly the same in quality. Just put gm in front of convert.
via
https://wiki.termux.com/wiki/Image_Editors
http://www.graphicsmagick.org/OpenMP.html
http://www.graphicsmagick.org/convert.html
It's not pointless at all! Thank you again!
Most helpful comment
openmp in imagemagick was disabled because of segfaults.
https://github.com/termux/termux-packages/issues/1314