DarkTigrus/dxvk-cache-tool

Reporting of number of entries being written isn't accurate

Opened this issue · 1 comments

When the tool writes entries, it seems to simply sum the number of pipelines in dxvk-caches being given to it when it prints how many entries it's writing to a new file, which is quite inaccurate as dxvk-cache files can have duplicate entries, meaning that the actual number of entries being in the new cache file can be different.
I think the solution would be to replace "writing..." entry with a line that gets printed post-merge that will describe how many entries were actually added to the new dxvk-cache file, and maybe how many of the entries turned out to be dupes.

Output is accurate. 'Writing' reports total count of valid non-dupe entries it's about to write to file, not just a sum of all entries read. It might be misleading because there is no reports on duplicates.
Here slightly modified output that mentions duplicate count:

$ dxvk-cache-tool Local2.dxvk-cache Remote.dxvk-cache
Merging files Local2.dxvk-cache Remote.dxvk-cache
Detected state cache version v8
Reading Local2.dxvk-cache (1/2)...   0   duplicates, 67366 new entries
Reading Remote.dxvk-cache (2/2)... 67366 duplicates,  51   new entries
Writing 67417 entries to file output.dxvk-cache
Finished

It also matches what dxvk's d3d11.log reports on produced cache as well.
info: DXVK: Read 67417 valid state cache entries

I will make more clear and verbose log without omiting details, as well as some other changes when I have free time.

--
P. S. i thought i missed email, but apparently github does not subscribe to your own repos by default