This project is read-only.

Cpu Affinity

Jun 29, 2011 at 8:43 PM

Hi all. I just want to say first, I love this emulator. and I think you guys are doing a great job with it!

For some reason I cant get it to run properly unless I set the CPU affinity to 1 core in windows 7. If I don't the emulator will stutter, skip, and be unplayable. Is this a known issue? I've looked all over the place and cant seem to find an answer. It doesn't matter what game I'm playing. And I've tryed The Aug 5th 2010 ver and a few others up to r68034, same thing. I'm wondering if this is a problem unique to my system.

My system: Win7 x64 AMD (dual core) 7850 @2.8ghz, 4g ddr2, Nvidia 9800gt.

As for the PCSX I would post the setting I used, but I've changed just about everything and it will run choppy unless I set the affinity. After that it's all good.

Jul 3, 2011 at 12:27 AM
Edited Jul 3, 2011 at 12:35 AM

does it also happen with all the plugins? i mean both software and hardware renderer types.

in my case it lags the most with software renderer, and just a little with the opengl one. (which shouldn't happen even with 1/4 of my machine x_x)

ill try with the affinity thing in linux, not sure if it'll have the same effect but what can we lose? :P


ps: if you want to see my problem

Jul 4, 2011 at 4:27 AM

I didn't even consider using a different plugin till I read you're post...

The software plugin and Pete's ogl2 2.9 plugin both fix my problem, haven't tried many others but I'm guessing since these two work fine most others will too.

Pete's ogl 1.76 however makes the problem reappear. So I guess some plugins aren't multicore compatible?

Anyway thanks for the help.


BTW: Disgaea is my fav strategy rpg. XD

Jul 6, 2011 at 5:23 AM

well, i'm back. this time i've  tryed every posible convination of speeds and affinities and still the same.

the OpenGL plugin starts using cpu resources when the cameras move.

ie: in GT2 (PAL) i tested with the simulator disc. first i set the 1st and 2nd core to 3.5ghz (fixed) then went to the test track/max speed and obtained this results (monitored via ssh with my netbook using htop)

it seems the opengl plugin has some kind of bug that makes it eat cpu in some loop or who knows what but setting the affinity to only one core for everyone of pcsxr's proccess and subprocess (1+7)  slows everything horribly

in the first curve it starts lagging (it doesn't happen much in the stright part) if you break and wait till the camera stops moving, even with only 1 core, it returns to 50fps, move and the lag returns. (core 0 at 100%, (97 green, rest red)

in the same curv, u set the affinity to core 0 and 1 and the lag almost stop, you get 50 but some times it goes to 36 about 2-6 frames and the 50 again. (both cores at 100% 80% of both in green , the rest red)

setting the afinitty to all cores (only 0,1 at 3.5, the others are in on-demand)  makes it still hold at 50fps but with all cores about 90% being 90% of the bar green.

so how if it that with only 2 cores it holds at 50fps and with 6 cores still the same but always using 100% of the core it uses.....

from the 8 proccess, only 6 have something in the TIME collumn, the other two are at 0:00.00 and 0:00.10.

 the same goes for front mission 3, still = no lag, move the camera = lag

in menues and other screens it doesn't lag.

that was with the beautyfull preset. with the fast one at 1920x1200 FS, doesn't lag but still uses all the cores a lot, and with only 1 or 2 will lag.

If anyone can test this in a linux machine with less cores, maybe it has to do with the number of cores the system has, in my netbook, (atom 450 1.6) it runs a little slow (28.45fps), using soft runs faster xD, but it's 1 core +HT at 1.6 vs 6 cores at the speeds don't match the specs

now the Xvideo one (the GXvideo is like alpha so i didn't test it, )

the xvideo one lags at menues, like the presentation screen and the main one where you select what to do. this, without even using 40% of 1 core.

this time it only generated 4 proccess(1+3)

in the 3D part it goes beautifully smooth, 50fps and didn't move a hundredth.