..:: PCSX2 Forums ::..

Full Version: PCSX2 Linux vs Windows?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3
Is the performance nearly the same between Windows and Linux on PCSX2? Also, is Linux Version multi-threaded?
Windows win's - 1) more accurate emulation !
2) better speed in dx then opengl kiddo !(by kiddo i mean to say opengl the kiddo, dont get it wrong)
(03-22-2014, 04:53 PM)Brock lessner Wrote: [ -> ]Windows win's - 1) more accurate emulation !
2) better speed in dx then opengl kiddo !

From what I've seen personally, as I've used both versions, Single threaded software rendering is much faster with OpenGl in Linux, however it is not multi-threaded.

Also, I'm experiencing bugs in Linux, that I don't get in Windows 7.

As for hardware rendering, with my graphics card its meaningless to care about the difference.
What do you mean by not multi-threaded?

Here the list of thread in the debugger Wink
Code:
info threads
  Id   Target Id         Frame
  11   Thread 0xe3d5eb40 (LWP 5002) "MTGS" 0xf6e56a91 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
  10   Thread 0xe457eb40 (LWP 5001) "MTGS" 0xf6e56a91 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
  9    Thread 0xe4d9eb40 (LWP 5000) "MTGS" 0xf6e56a91 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
  8    Thread 0xe55beb40 (LWP 4999) "MTGS" 0xf6e56a91 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
  7    Thread 0xe5ddeb40 (LWP 4998) "MTGS" 0xf6e56a91 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
  6    Thread 0xe7313b40 (LWP 4997) "MTGS" 0xf6e58a40 in sem_wait@@GLIBC_2.1 () from /lib/i386-linux-gnu/libpthread.so.0
* 5    Thread 0xea2cdb40 (LWP 4996) "EE Core" 0x0838cf97 in x86Emitter::xWrite<unsigned short> (val=4111) at /home/gregory/project/ps2_kernel/emulator/common/include/x86emitter/internal.h:39
  3    Thread 0xf1b5eb40 (LWP 4992) "MTVU" 0xf6e58a40 in sem_wait@@GLIBC_2.1 () from /lib/i386-linux-gnu/libpthread.so.0
  2    Thread 0xf264db40 (LWP 4989) "SysExecutor" 0xf6e58a40 in sem_wait@@GLIBC_2.1 () from /lib/i386-linux-gnu/libpthread.so.0
  1    Thread 0xf43baa40 (LWP 4979) "pcsx2-dev" 0xf6da2a21 in poll () from /lib/i386-linux-gnu/libc.so.6
The main problem with Linux came with the way it implemented graphics from the beginning, the concept of graphics server. It was a greater idea when local machines had not video hardware power and then got the graphics pre-rendered from a central machine (oddly called the client while the local machines are the servers from the X perspective).

Things got a lot better lately but structural problems are hard to correct totally.
well it is still the hardware that is doing the work... and opengl is more or less the same for windows or linux. I don't see the connection to graphics server...

The main problem to my knowledge is the closed-source driver and api stuff which can not easily be ported to linux... but low level performance should be the same.
I have successfully dropped Windows at last, as OpenGL Linux version has caught up IMO to Windows, plus I have great success with other Linux emu ports as well. Maybe not mature enough for for me for upscale + full speed, but with my mid-range Nvidia card plus PD AMD cpu, I get easily get native res and (most of the time) full speed.

To add, hardware mode with Nvidia proprietary driver is much more quality then Catalyst + hardware mode
(03-22-2014, 06:25 PM)gregory Wrote: [ -> ]What do you mean by not multi-threaded?

Here the list of thread in the debugger Wink
Code:
info threads
  Id   Target Id         Frame
  11   Thread 0xe3d5eb40 (LWP 5002) "MTGS" 0xf6e56a91 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
  10   Thread 0xe457eb40 (LWP 5001) "MTGS" 0xf6e56a91 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
  9    Thread 0xe4d9eb40 (LWP 5000) "MTGS" 0xf6e56a91 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
  8    Thread 0xe55beb40 (LWP 4999) "MTGS" 0xf6e56a91 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
  7    Thread 0xe5ddeb40 (LWP 4998) "MTGS" 0xf6e56a91 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
  6    Thread 0xe7313b40 (LWP 4997) "MTGS" 0xf6e58a40 in sem_wait@@GLIBC_2.1 () from /lib/i386-linux-gnu/libpthread.so.0
* 5    Thread 0xea2cdb40 (LWP 4996) "EE Core" 0x0838cf97 in x86Emitter::xWrite<unsigned short> (val=4111) at /home/gregory/project/ps2_kernel/emulator/common/include/x86emitter/internal.h:39
  3    Thread 0xf1b5eb40 (LWP 4992) "MTVU" 0xf6e58a40 in sem_wait@@GLIBC_2.1 () from /lib/i386-linux-gnu/libpthread.so.0
  2    Thread 0xf264db40 (LWP 4989) "SysExecutor" 0xf6e58a40 in sem_wait@@GLIBC_2.1 () from /lib/i386-linux-gnu/libpthread.so.0
  1    Thread 0xf43baa40 (LWP 4979) "pcsx2-dev" 0xf6da2a21 in poll () from /lib/i386-linux-gnu/libc.so.6

I was solely reffering to GSdx. From my own testing it is single threaded. The emulator itself is threaded, however that doesn't seem to be what eats up the bulk of my computer's processing power.
All MTGS thread are from GSdx (minus 1). GSdx is multi threading. I post some perf here: http://forums.pcsx2.net/Thread-multi-thr...#pid362830
As you can 3 extra threads give a 2x performance boost but with a standalone GSdx. It seems there is a bug somewhere that kill MT (but that another story Tongue2 )
(03-23-2014, 10:18 AM)gregory Wrote: [ -> ]All MTGS thread are from GSdx (minus 1). GSdx is multi threading. I post some perf here: http://forums.pcsx2.net/Thread-multi-thr...#pid362830
As you can 3 extra threads give a 2x performance boost but with a standalone GSdx. It seems there is a bug somewhere that kill MT (but that another story Tongue2 )


How do we build/use the standalone GSdx?
Pages: 1 2 3