Pcsx2 running slow and not using resources
#21
(09-24-2018, 08:10 PM)fender178 Wrote: Not true at all. It depends on the game though as well. I played and finished both Persona 3 and 4 on a Dell Precision m4600 with a i7 2820QM and a workstation graphics card (Quadro 1000m) and it ran it fine at native resolution. And that Processor's STP score is 1553 (under 1600). and it's a quad core i7 sandy bridge as well. https://www.cpubenchmark.net/singleThread.html

yes, but its not a heavy game, if i wanted to play a light game such as a 2d game or even kingdom hearts, for example, probably it would run in a 1,8ghz dualcore processor close to 100% speed and at native resolution. 
But let me know whats the performance of a heavy game such as ace combat 4, gt4 (gran turismo, not gta)d, or something like that, it will probably run also slow.
Reply

Sponsored links

#22
(09-25-2018, 12:42 AM)pandubz Wrote: PCSX2 can already run three emulation threads, one for the EE/IOP/VU0 (and all their submodules), one for MTGS, and one for VU1. The PCSX2 UI has it's own fourth thread. Any quad core (or higher) CPU can fully lever this. There isn't any more multithreading to do. The EE, IOP, VU0 and all the submodules on each of these all need to talk synchronously to each other. There's nothing in their workload that can just be broken off and run full speed ahead on a separate thread, because they are constantly communicating to each other. Doing so, even if properly synchronized, would just introduce more scheduler overhead for a net performance gain of slim to none, most likely actually a loss.

Retargeting for AMD64 has been discussed many times and consensus is there's little to nothing to gain, and a whole lot of effort towards that nonexistent benefit. The biggest blocker right now is a recompiler targeting AMD64, since the current one is targeting x86. GSdx would also need modifications, since it works with AVX and SSE instructions.

But, if that's true why it doesnt try to at least use 100% of my cpus? I have many other programs (such as video renderers that also work with separate tasks and threads), but they actually use 100% of the cpu because all of their tasks arent limited to a single core (one taks for each core such as with pcsx2). If it could use the cpu totally, it would probably not need a 1600 passmark score as stated, but probably 60% of that, probably something around 960 in passmark score, for many games. I dont know how would they arrange that tho. 

I know sony didnt made easy to emulate their consoles (they aways choose crap architetures), so i'm not in any way saying that pcsx2 is bad or something like that. 
I just find strange why it doesnt use all my resources, such as other consoles emulators, i've runned some that were being limited by the bad ulv chip i had in my previous laptop, it was the bare minimum to run the game that i wanted in the emulator, but it could run at 100% cpu usage at the native framerate. If that emulator also only could use some percentages off all cores (such as i've seen in individual cores in pcsx2 60% at core0, 30% at core1, 40% at core 2, and 10% at core3, not using the whole resources), it wouldnt probably run that specific game in that laptop, the requirements would be much higher for it. I wont say what emulator it was as i dont know if that would break any of the forum's rules and such. If it wont break any rules here, and you guys want to know, i can edit it here later. 

But the thing is that, i will likelly need a newer hq processor to run pcsx2 well anyway, so probably i will get a 4th gen laptop with a mq processor such as a i7 4900mq and a decent dedicated gpu with it, as i really dislike the fact that the newer hq processors are all soldered (6, 7, and 8th gen).
Reply
#23
(09-25-2018, 06:29 PM)eduaavila Wrote: But, if that's true why it doesnt try to at least use 100% of my cpus? I have many other programs (such as video renderers that also work with separate tasks and threads), but they actually use 100% of the cpu because all of their tasks arent limited to a single core (one taks for each core such as with pcsx2). If it could use the cpu totally, it would probably not need a 1600 passmark score as stated, but probably 60% of that, probably something around 960 in passmark score, for many games. I dont know how would they arrange that tho. 

Because you're misinterpreting what I said and how CPU metrics on a modern OS work. When your CPU overall percent utilization is 100%, that means that 100% of the CPU time, for every CPU core, physical or logical, is in use. If you have a quad core CPU, and a process is using a core all by itself, and is using every last millisecond of CPU time it has, that core's utilization will be 100%. If your CPU is otherwise idling, then it will have a total percent utilization of 25%. Your video renderer is designed to slam as much material down as many threads as possible all at once, because it doesn't matter when or in what order things are rendered. The video can be split into as many tiny chunks as deemed necessary, all rendered at the same time, and then just inserted into the final video file whenever, wherever they belong.

In PCSX2's case, there are two things to consider: thread safety, and work load.

Thread safety. You can't thread anything you want without consequence. If two operations need to happen synchronously, and you thread them, you now have to wait for one to complete before the other can start. Which means wait loops, and scheduler overhead maintaining the threads, overall decreasing performance Yes, it can utilize up to three cores. No, there is no guarantee they will use the full CPU time available on that core. If the EE/IOP/VU0 thread only has enough work to use 80% of a CPU thread, then it will only use that much, and the CPU thread will remain idle when PCSX2 isn't using it. Or your OS can choose to run something else in that down time. Dolphin, for example, uses not much more than 12% of my CPU in a lot of cases. That's in dual core mode, on a 6 core 12 thread i7, where a single core maxed out would theoretically equal 8% overall CPU usage.

(09-25-2018, 06:29 PM)eduaavila Wrote: I know sony didnt made easy to emulate their consoles (they aways choose crap architetures), so i'm not in any way saying that pcsx2 is bad or something like that. 
I just find strange why it doesnt use all my resources, such as other consoles emulators, i've runned some that were being limited by the bad ulv chip i had in my previous laptop, it was the bare minimum to run the game that i wanted in the emulator, but it could run at 100% cpu usage at the native framerate. If that emulator also only could use some percentages off all cores (such as i've seen in individual cores in pcsx2 60% at core0, 30% at core1, 40% at core 2, and 10% at core3, not using the whole resources), it wouldnt probably run that specific game in that laptop, the requirements would be much higher for it. I wont say what emulator it was as i dont know if that would break any of the forum's rules and such. If it wont break any rules here, and you guys want to know, i can edit it here later. 
That depends entirely on the design of the other emulator. If it is using spinlocks (generally a bad idea in modern computing) then every second of idle time will, instead of letting the OS have that CPU time back, be spent running absolutely nothing. You will see a percent utilization of 100%. Some PS2 games will actually do this internally with NOP loops, which is why we have loop detection hacks that some people are so insistent are a bad thing, but since it's a console, not a PC with a true OS, on the original hardware it doesn't matter, since the game is built to expect and properly handle that behavior on it's own, and there is no OS that will need to hijack CPU time away from the game.

Of course, it may not be spinlocks, it could be the "run ahead" stuff that Retroarch does for some older consoles simply chewing up all the CPU time you have available. Really there's no way to know without knowing what software and how it's built, but my point is, it's completely explainable either way and not unnatural either way.

(09-25-2018, 06:29 PM)eduaavila Wrote: But the thing is that, i will likelly need a newer hq processor to run pcsx2 well anyway, so probably i will get a 4th gen laptop with a mq processor such as a i7 4900mq and a decent dedicated gpu with it, as i really dislike the fact that the newer hq processors are all soldered (6, 7, and 8th gen).
This CPU would hold up fairly well, yeah.
Reply
#24
(09-25-2018, 06:00 PM)eduaavila Wrote: yes, but its not a heavy game, if i wanted to play a light game such as a 2d game or even kingdom hearts, for example, probably it would run in a 1,8ghz dualcore processor close to 100% speed and at native resolution. 
But let me know whats the performance of a heavy game such as ace combat 4, gt4 (gran turismo, not gta)d, or something like that, it will probably run also slow.
If you read what I said before the games that I have played then you would know that it depends on the game as well. Another example of a heavy hitter type of game in terms of hardware required would be God of War.

(09-25-2018, 06:29 PM)eduaavila Wrote: But, if that's true why it doesnt try to at least use 100% of my cpus? I have many other programs (such as video renderers that also work with separate tasks and threads), but they actually use 100% of the cpu because all of their tasks arent limited to a single core (one taks for each core such as with pcsx2). If it could use the cpu totally, it would probably not need a 1600 passmark score as stated, but probably 60% of that, probably something around 960 in passmark score, for many games. I dont know how would they arrange that tho. 

I know sony didnt made easy to emulate their consoles (they aways choose crap architetures), so i'm not in any way saying that pcsx2 is bad or something like that. 
I just find strange why it doesnt use all my resources, such as other consoles emulators, i've runned some that were being limited by the bad ulv chip i had in my previous laptop, it was the bare minimum to run the game that i wanted in the emulator, but it could run at 100% cpu usage at the native framerate. If that emulator also only could use some percentages off all cores (such as i've seen in individual cores in pcsx2 60% at core0, 30% at core1, 40% at core 2, and 10% at core3, not using the whole resources), it wouldnt probably run that specific game in that laptop, the requirements would be much higher for it. I wont say what emulator it was as i dont know if that would break any of the forum's rules and such. If it wont break any rules here, and you guys want to know, i can edit it here later. 

But the thing is that, i will likelly need a newer hq processor to run pcsx2 well anyway, so probably i will get a 4th gen laptop with a mq processor such as a i7 4900mq and a decent dedicated gpu with it, as i really dislike the fact that the newer hq processors are all soldered (6, 7, and 8th gen).
Thats because Emulation is different than video rendering and other heavy hardware based tasks. Also it depends on what other system emulators you are talking about. Because there are so many out there that can tax your system. In my case PS3 is very hardware taxing using up all of the Cores and threads my system has. Also alot of Console Emulators are based on STP (Single Threaded Performance) which is another reason why they don't use 100% of the entire CPU.
Reply




Users browsing this thread: 1 Guest(s)