-
Notifications
You must be signed in to change notification settings - Fork 120
how to improve compression speed #37
Comments
The same problem I got, I have hundred thousand of images to work, and it is very hard to speed up the work of compression... |
This library seem to treat memory quite liberally just to support multithreading. All inputs from an LDR are float4, which for sRGB or premultiplied LDR isn't that bad, but could be around 11 or 12 bits per channel. Then on top of that multiple block and encoding elements are allocated that include large amounts of data. I'm running single threaded, and even for R/RG11 conversion of a 256x256 mipped texture in release, the timings are 12s at quality 50, and 4s at 49. This is usually done off a table lookup for all other LDR 1/2 channel formats I've seen in a few milliseconds on a single thread. I don't quite understand the performance tradeoffs made in this library. |
This seems to be the hotspot now that I'm reusing the same block and encoder.
|
This library appears dead. |
For future readers, using a library like https://github.com/wolfpld/etcpak should provide faster compression. See this benchmark: https://aras-p.info/blog/2020/12/08/Texture-Compression-in-2020/ |
I test a 1024*1024 png image, the project run fine , the compresion formate is RGB8, file formate is pkm, But it cost 8 senconds.
But now i have 100000 image to do like this, so how to improve the speed. I use the "mali Texture compresion tool v4.3.0 " with fast mode , it only cost 1.7 sconds.
The text was updated successfully, but these errors were encountered: