PVRTexLib_TranscodeTexture hangs when processing ETC textures

Hi,

For us, it hangs randomly when doing DDS->ETC conversion.
We’ve been able to trace it down to Etc::Image::Encode method - there’s some problem with thread synchronization there that leads to a deadlock.
The solution is to limit the number of threads, which is sadly not possible using the API and we had to patch the DLLs to achieve it.
It would be nice to see the deadlock fixed and some threading controls in the DLL.

Hi Alexx999,

Welcome to the PowerVR Developer Forum!

Many thanks for your message. Could you please give some information about the PVRTexLib and OS versions where you’re experiencing those issues?

Best regards and many thanks in advance,
Alejandro

PVRTexLib is the latest one, DLL version 5.0.0 from 2020 R2 PVRTexTool installer.
Windows version is 10.19042.782
My CPU is AMD Ryzen 9 5950X 16-Core, however, this problem shows up on lower core counts as well.

Many thanks Alexx999,

I’ll handle the information to the Tools Team and come back to you when I have feedback.

Best regards,
Alejandro

Hi Alexx999,

The Tools Team has addressed the PVRTexLib_TranscodeTexture hang issue and backported it to the PVRTexTool release available in the IMG website (here).

The current PVRTexTool version in the website has build number 20.2@5880259. The new version with the fix for PVRTexLib_TranscodeTexture should arrive tomorrow, look for build number 20.2@5915875.

Regarding the threading control, there’re plans to tackle this in the future, but currently it’s not specified when it will happen.

Best regards,
Alejandro

Hi Alejandro,
I’m really glad to hear you’ve been able to find (and fix) the issue so quickly.
However, I hope that by “PVRCarbon” you mean updated PVRTexTool? :slight_smile:

Anyway, it seems that neither is updated as of now.

Hi Alexx999,

You’re right, I was meaning PVRTexTool (I edited my previous message to fix that).

I checked and I can see the PVRTexTool version from the IMG SDK website has not been updated yet. We’ll ask for more information about it and come back to you.

Best regards,
Alejandro

Hi Alexx999,

Currently IMG is providing fixed versions of the Tools through the Support Portal, sorry for the confusion about getting it from the webpage.

To get a version of PVRTexTool with the fix, I’ll ask you please to go through our Support Portal (https://pvrsupport.imgtec.com/) and raise a ticket asking for an internal version of PVRTexTool (don’t forget to specify the OS you want).

Best regards,
Alejandro