Sat Jan 19, 2019 2:08 am
For a long time PNG image reading was done exclusively by libpng, better options have not been adequately considered.
Although several means of speeding up have been proposed, most of them are methods which involve parallel processing by multithreading, decoding of the byte stream by zlib has been left as it is.
lodepng-turbo(https://github.com/kanryu/lodepng-turbo) is an approach that fundamentally solves this problem, basically lightening the decoding process by adopting libdeflate instead of zlib. The unfilter process after deflate adopts a faster implementation than libpng.
By these ideas, the PNG reading is basically lightened as a single thread. Of course, parallel decoding of multiple images is also possible by multithreading.
Numerous images are used in the KDE project, and many of them are PNG.
Increasing the decoding speed of PNG will improve the response of many processes. (Especially web browser)