Page 1 of 1

6.62 uses 95% CPU and ignores performance settings

PostPosted: Tue Jan 05, 2016 11:01 pm
by RayMark
PAR2 repair is using over 90% of CPU even though I have checked the following in the performance settings:
v Reduce the amount of CPU that PAR repair and UNRAR can use
v Limit Repair so, it leaves one CPU available.

These settings are completely ignored - it seems they are not hooked up yet.
All 8 virtual CPUs (4 cores) are used for par2 repair. And their usage sometimes goes way over 90%. Not always, it depends on how much repair is being done - sometimes only over 45% with smaller number of smaller files with smaller blocks to be repaired.
So not only the interface of NewsBin becomes unresponsive, everything is screwed up, I really have to pause NewsBin before watching a movie. It never was the case with older NewsBin versions.


Anyway, par repair should use the (thousands of) video card processors, not the main CPU.

Re: 6.62 uses 95% CPU and ignores performance settings

PostPosted: Thu Jan 07, 2016 1:03 pm
by Quade
You could turn down Newsbin's priority if you want to slow it down. I mean from task manager.

I took a quick look at the thread thing and agree. Looks like reduced thread count was lost in the shuffle.

You might want to switch to the single core repair DLL. I suspect your real problem is disk IO though and not CPU. Repair hammers the disks pretty hard. Even at 95% CPU usage, there's a decent amount of CPU left over over 4 cores to do work.

I'm not sure how "Using the GPU" and "Watching Video's" would play out. If I'm cranking away at the repair with the GPU doesn't that prevent the GPU from doing other things?

Re: 6.62 uses 95% CPU and ignores performance settings

PostPosted: Thu Jan 07, 2016 2:04 pm
by RayMark
Using GPU and watching videos?

It depends: .h264 (AVC) hardware decoding on a video card is usually done by a dedicated circuitry, not GPU. Also, modern multi-core CPUs can easily decode without hardware acceleration (when not used over 90% by NewsBin).
However, some decoders have an option to use CUDA instead of software or the dedicated hardware acceleration - that would conflict with CUDA par2 decoding, although probably not in a destructive way, just shared resources, slower performance. But the user does not have to use such a decoding option or a decoder which even offers such an option.

As to HEVC decoding, some nvidia cards actually use GPU for that, but HEVC is not yet mainstream, most things (almost all) I watch are .h264
However, the newer cards (generation 7 Pure Video - from 2015) - even for HEVC have dedicated circuitry and do not use GPU.

Another thing: some video players perhaps may support some fancy GPU-based optional post-processing.


I think that CUDA based par2 utilities exist, I remember trying one a few years ago. Or was it an OpenCL based tool - probably even better, more general.
Or was it able only to check but not repair? Not sure.


And how to switch to single-core dll?
I see only this one:
par2repair64.dll

Re: 6.62 uses 95% CPU and ignores performance settings

PostPosted: Thu Jan 07, 2016 2:22 pm
by Quade
And how to switch to single-core dll?


I'll have to ask Dex. He's the maintainer of the DLL's. I'm inclined to think a re-install might give you the option but I'm not certain.

I mean simply install over top of the existing.

Re: 6.62 uses 95% CPU and ignores performance settings

PostPosted: Thu Jan 07, 2016 6:44 pm
by dexter
Download the 64 bit single core dll from our server and replace the par2Repair64.dll with it. Make sure Newsbin is not running when you do this.

Anyone reading this thread needing the 32 bit version, it is here.