..:: PCSX2 Forums ::..

Full Version: Latest GIT = Very poor performance?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Just a heads up, I have built the latest GIT revision and have found that games that would run between 50 - 60 FPS have tanked to anywhere between 4 - 30 fps.

GT4 crashes when trying to select a vehicle in arcade mode.
Jak and Daxter menus = 4 FPS

The GS core is locked to 100% permanently.

I will try to narrow it down to a specific revision.


Code:
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xeadcab40 (LWP 28236)]
0x083db8c0 in x86Emitter::xWrite<unsigned char> (val=159 '\237')
   at /home/toxicshadow/build_env/pcsx2/common/include/x86emitter/internal.h:46
46    /home/toxicshadow/build_env/pcsx2/common/include/x86emitter/internal.h: No such file or directory.
(gdb) thread apply all bt

Thread 10 (Thread 0xf2b45b40 (LWP 28228)):
#0  0xf7726bf0 in __kernel_vsyscall ()
#1  0xf5dbd8a6 in [email protected]@GLIBC_2.3.2 ()
   at /usr/lib/libpthread.so.0
#2  0xf5dbdea9 in [email protected]_2.0 ()
   at /usr/lib/libpthread.so.0
#3  0xf5441054 in  () at /usr/lib/libGL.so.1
#4  0xf44307df in  () at /usr/lib/libnvidia-glcore.so.358.16
#5  0xf5443458 in  () at /usr/lib/libGL.so.1
#6  0xf5db8452 in start_thread () at /usr/lib/libpthread.so.0
#7  0xf5cdd25e in clone () at /usr/lib/libc.so.6

Thread 9 (Thread 0xf02dfb40 (LWP 28229)):
#0  0xf7726bf0 in __kernel_vsyscall ()
#1  0xf5dc35e2 in __libc_do_syscall () at /usr/lib/libpthread.so.0
#2  0xf5dbf92f in do_futex_wait.constprop () at /usr/lib/libpthread.so.0
#3  0xf5dbfa37 in __new_sem_wait_slow.constprop.1 ()
   at /usr/lib/libpthread.so.0
#4  0x083d00dc in Threading::Semaphore::WaitWithoutYield() (this=0xa7072e8)
   at /home/toxicshadow/build_env/pcsx2/common/src/Utilities/Semaphore.cpp:66
#5  0x0824bae6 in pxEvtQueue::Idle() (this=0xa7072b0)
   at /home/toxicshadow/build_env/pcsx2/pcsx2/gui/ExecutorThread.cpp:387
---Type <return> to continue, or q <return> to quit---
#6  0x0824c5d2 in ExecutorThread::ExecuteTaskInThread() (this=0xa707f18)
   at /home/toxicshadow/build_env/pcsx2/pcsx2/gui/ExecutorThread.cpp:543
#7  0x083c2fa6 in Threading::pxThread::_try_virtual_invoke(void (Threading::pxThread::*)()) (this=0xa707f18, method=&virtual Threading::pxThread::ExecuteTaskInThread())
   at /home/toxicshadow/build_env/pcsx2/common/src/Utilities/ThreadTools.cpp:545
#8  0x083c345c in Threading::pxThread::_internal_execute() (this=0xa707f18)
   at /home/toxicshadow/build_env/pcsx2/common/src/Utilities/ThreadTools.cpp:644
#9  0x083c35da in Threading::pxThread::_internal_callback(void*) (itsme=0xa707f18)
   at /home/toxicshadow/build_env/pcsx2/common/src/Utilities/ThreadTools.cpp:684
#10 0xf5db8452 in start_thread () at /usr/lib/libpthread.so.0
#11 0xf5cdd25e in clone () at /usr/lib/libc.so.6

Thread 8 (Thread 0xef8ffb40 (LWP 28230)):
#0  0xf7726bf0 in __kernel_vsyscall ()
#1  0xf5cc9e6b in read () at /usr/lib/libc.so.6
#2  0xf51d059c in  () at /usr/lib/tls/libnvidia-tls.so.358.16
#3  0x083a45c7 in LinuxPipeThread::ExecuteTaskInThread() (this=0xa7f8804)
   at /home/toxicshadow/build_env/pcsx2/pcsx2/Linux/LnxConsolePipe.cpp:110
#4  0x083c2fa6 in Threading::pxThread::_try_virtual_invoke(void (Threading::pxThread::*)()) (this=0xa7f8804, method=&virtual Threading::pxThread::ExecuteTaskInThread())
   at /home/toxicshadow/build_env/pcsx2/common/src/Utilities/ThreadTools.cpp:545
#5  0x083c345c in Threading::pxThread::_internal_execute() (this=0xa7f8804)
   at /home/toxicshadow/build_env/pcsx2/common/src/Utilities/ThreadTools.cpp:644
#6  0x083c35da in Threading::pxThread::_internal_callback(void*) (itsme=0xa7f8804)
   at /home/toxicshadow/build_env/pcsx2/common/src/Utilities/ThreadTools.cpp:684
#7  0xf5db8452 in start_thread () at /usr/lib/libpthread.so.0
#8  0xf5cdd25e in clone () at /usr/lib/libc.so.6

Thread 7 (Thread 0xeeeffb40 (LWP 28231)):
#0  0xf7726bf0 in __kernel_vsyscall ()
#1  0xf5cc9e6b in read () at /usr/lib/libc.so.6
#2  0xf51d059c in  () at /usr/lib/tls/libnvidia-tls.so.358.16
#3  0x083a45c7 in LinuxPipeThread::ExecuteTaskInThread() (this=0xa7f673c)
   at /home/toxicshadow/build_env/pcsx2/pcsx2/Linux/LnxConsolePipe.cpp:110
#4  0x083c2fa6 in Threading::pxThread::_try_virtual_invoke(void (Threading::pxThread::*)()) (this=0xa7f673c, method=&virtual Threading::pxThread::ExecuteTaskInThread())
   at /home/toxicshadow/build_env/pcsx2/common/src/Utilities/ThreadTools.cpp:545
#5  0x083c345c in Threading::pxThread::_internal_execute() (this=0xa7f673c)
   at /home/toxicshadow/build_env/pcsx2/common/src/Utilities/ThreadTools.cpp:644
#6  0x083c35da in Threading::pxThread::_internal_callback(void*) (itsme=0xa7f673---Type <return> to continue, or q <return> to quit---
c)
   at /home/toxicshadow/build_env/pcsx2/common/src/Utilities/ThreadTools.cpp:684
#7  0xf5db8452 in start_thread () at /usr/lib/libpthread.so.0
#8  0xf5cdd25e in clone () at /usr/lib/libc.so.6

Thread 6 (Thread 0xee4ffb40 (LWP 28234)):
#0  0xf7726bf0 in __kernel_vsyscall ()
#1  0xf5dc35e2 in __libc_do_syscall () at /usr/lib/libpthread.so.0
#2  0xf5dbf92f in do_futex_wait.constprop () at /usr/lib/libpthread.so.0
#3  0xf5dbfa37 in __new_sem_wait_slow.constprop.1 ()
   at /usr/lib/libpthread.so.0
#4  0x083d00dc in Threading::Semaphore::WaitWithoutYield() (this=0x9f0f1ac <vu1Thread+16777532>)
   at /home/toxicshadow/build_env/pcsx2/common/src/Utilities/Semaphore.cpp:66
#5  0x080c3594 in VU_Thread::ExecuteRingBuffer() (this=0x8f0f070 <vu1Thread>)
   at /home/toxicshadow/build_env/pcsx2/pcsx2/MTVU.cpp:98
#6  0x080c3575 in VU_Thread::ExecuteTaskInThread() (this=0x8f0f070 <vu1Thread>)
   at /home/toxicshadow/build_env/pcsx2/pcsx2/MTVU.cpp:91
#7  0x083c2fa6 in Threading::pxThread::_try_virtual_invoke(void (Threading::pxThread::*)()) (this=0x8f0f070 <vu1Thread>, method=&virtual Threading::pxThread::ExecuteTaskInThread())
   at /home/toxicshadow/build_env/pcsx2/common/src/Utilities/ThreadTools.cpp:545
#8  0x083c345c in Threading::pxThread::_internal_execute() (this=0x8f0f070 <vu1Thread>)
   at /home/toxicshadow/build_env/pcsx2/common/src/Utilities/ThreadTools.cpp:644
#9  0x083c35da in Threading::pxThread::_internal_callback(void*) (itsme=0x8f0f070 <vu1Thread>)
   at /home/toxicshadow/build_env/pcsx2/common/src/Utilities/ThreadTools.cpp:684
#10 0xf5db8452 in start_thread () at /usr/lib/libpthread.so.0
#11 0xf5cdd25e in clone () at /usr/lib/libc.so.6

Thread 5 (Thread 0xeadcab40 (LWP 28236)):
#0  0x083db8c0 in x86Emitter::xWrite<unsigned char>(unsigned char) (val=159 '\237')
   at /home/toxicshadow/build_env/pcsx2/common/include/x86emitter/internal.h:46
#1  0x083d89a7 in x86Emitter::xWrite8(unsigned char) (val=159 '\237')
   at /home/toxicshadow/build_env/pcsx2/common/src/x86emitter/x86emitter.cpp:77
#2  0x083daf65 in x86Emitter::xLAHF() ()
   at /home/toxicshadow/build_env/pcsx2/common/src/x86emitter/x86emitter.cpp:1040
#3  0x0830bb95 in _signExtendSFtoM(unsigned int) (mem=166837124)
   at /home/toxicshadow/build_env/pcsx2/pcsx2/x86/ix86-32/iCore-32.cpp:474
#4  0x08318ac5 in R5900::Dynarec::OpcodeImpl::recADDI_(int) (info=0)
   at /home/toxicshadow/build_env/pcsx2/pcsx2/x86/ix86-32/iR5900AritImm.cpp:65
#5  0x0832b7a5 in eeRecompileCode1(void (*)(), void (*)(int)) (constcode=0x831898c <R5900::Dynarec::OpcodeImpl::recADDI_const()>, noconstcode=0x83189c8 <R5900::Dynarec::OpcodeImpl::recADDI_(int)>)
---Type <return> to continue, or q <return> to quit---
   at /home/toxicshadow/build_env/pcsx2/pcsx2/x86/ix86-32/iR5900Templates.cpp:304
#6  0x08318bfe in R5900::Dynarec::OpcodeImpl::recADDI() ()
   at /home/toxicshadow/build_env/pcsx2/pcsx2/x86/ix86-32/iR5900AritImm.cpp:78
#7  0x08318c0f in R5900::Dynarec::OpcodeImpl::recADDIU() ()
   at /home/toxicshadow/build_env/pcsx2/pcsx2/x86/ix86-32/iR5900AritImm.cpp:83
#8  0x08310dbd in recompileNextInstruction(int) (delayslot=1)
   at /home/toxicshadow/build_env/pcsx2/pcsx2/x86/ix86-32/iR5900-32.cpp:1287
#9  0x0831b7d7 in R5900::Dynarec::OpcodeImpl::recBNE_process(int, int) (info=0, process=2)
   at /home/toxicshadow/build_env/pcsx2/pcsx2/x86/ix86-32/iR5900Branch.cpp:294
#10 0x0831b874 in R5900::Dynarec::OpcodeImpl::recBNE_constt(int) (info=0)
   at /home/toxicshadow/build_env/pcsx2/pcsx2/x86/ix86-32/iR5900Branch.cpp:310
#11 0x0832b41c in eeRecompileCode0(void (*)(), void (*)(int), void (*)(int), void (*)(int), int) (constcode=0x831b6d4 <R5900::Dynarec::OpcodeImpl::recBNE_const()>, constscode=0x831b848 <R5900::Dynarec::OpcodeImpl::recBNE_consts(int)>, consttcode=0x831b861 <R5900::Dynarec::OpcodeImpl::recBNE_constt(int)>, noconstcode=0x831b82f <R5900::Dynarec::OpcodeImpl::recBNE_(int)>, xmminfo=192)
   at /home/toxicshadow/build_env/pcsx2/pcsx2/x86/ix86-32/iR5900Templates.cpp:243
#12 0x0831b8b3 in R5900::Dynarec::OpcodeImpl::recBNE() ()
   at /home/toxicshadow/build_env/pcsx2/pcsx2/x86/ix86-32/iR5900Branch.cpp:312
#13 0x08310dbd in recompileNextInstruction(int) (delayslot=0)
   at /home/toxicshadow/build_env/pcsx2/pcsx2/x86/ix86-32/iR5900-32.cpp:1287
#14 0x08312da4 in recRecompile(u32) (startpc=3470072)
   at /home/toxicshadow/build_env/pcsx2/pcsx2/x86/ix86-32/iR5900-32.cpp:1932
#15 0x0a11102b in eeRecDispatchers ()
#16 0x08561074 in  ()
#17 0x0830ecd0 in recExecute() ()
   at /home/toxicshadow/build_env/pcsx2/pcsx2/x86/ix86-32/iR5900-32.cpp:710
#18 0x082cc2e7 in SysCoreThread::DoCpuExecute() (this=0xa009a20 <CoreThread>)
   at /home/toxicshadow/build_env/pcsx2/pcsx2/System/SysCoreThread.cpp:258
#19 0x081dd38d in AppCoreThread::DoCpuExecute() (this=0xa009a20 <CoreThread>)
   at /home/toxicshadow/build_env/pcsx2/pcsx2/gui/AppCoreThread.cpp:558
#20 0x082cc342 in SysCoreThread::ExecuteTaskInThread() (this=0xa009a20 <CoreThread>) at /home/toxicshadow/build_env/pcsx2/pcsx2/System/SysCoreThread.cpp:271
#21 0x081dd373 in AppCoreThread::ExecuteTaskInThread() (this=0xa009a20 <CoreThread>) at /home/toxicshadow/build_env/pcsx2/pcsx2/gui/AppCoreThread.cpp:552
#22 0x083c2fa6 in Threading::pxThread::_try_virtual_invoke(void (Threading::pxThread::*)()) (this=0xa009a20 <CoreThread>, method=&virtual Threading::pxThread::ExecuteTaskInThread())
   at /home/toxicshadow/build_env/pcsx2/common/src/Utilities/ThreadTools.cpp:545
#23 0x083c345c in Threading::pxThread::_internal_execute() (this=0xa009a20 <CoreThread>)
   at /home/toxicshadow/build_env/pcsx2/common/src/Utilities/ThreadTools.cpp:644
#24 0x083c35da in Threading::pxThread::_internal_callback(void*) (itsme=0xa009a20 <CoreThread>)
   at /home/toxicshadow/build_env/pcsx2/common/src/Utilities/ThreadTools.cpp:684
---Type <return> to continue, or q <return> to quit---
#25 0xf5db8452 in start_thread () at /usr/lib/libpthread.so.0
#26 0xf5cdd25e in clone () at /usr/lib/libc.so.6

Thread 4 (Thread 0xea1ffb40 (LWP 28237)):
#0  0xf7726bf0 in __kernel_vsyscall ()
#1  0xf5dc35e2 in __libc_do_syscall () at /usr/lib/libpthread.so.0
#2  0xf5dbf92f in do_futex_wait.constprop () at /usr/lib/libpthread.so.0
#3  0xf5dbfa37 in __new_sem_wait_slow.constprop.1 ()
   at /usr/lib/libpthread.so.0
#4  0x083d00dc in Threading::Semaphore::WaitWithoutYield() (this=0xa009810 <mtgsThread+48>)
   at /home/toxicshadow/build_env/pcsx2/common/src/Utilities/Semaphore.cpp:66
#5  0x080c0838 in SysMtgsThread::ExecuteTaskInThread() (this=0xa0097e0 <mtgsThread>) at /home/toxicshadow/build_env/pcsx2/pcsx2/MTGS.cpp:282
#6  0x083c2fa6 in Threading::pxThread::_try_virtual_invoke(void (Threading::pxThread::*)()) (this=0xa0097e0 <mtgsThread>, method=&virtual Threading::pxThread::ExecuteTaskInThread())
   at /home/toxicshadow/build_env/pcsx2/common/src/Utilities/ThreadTools.cpp:545
#7  0x083c345c in Threading::pxThread::_internal_execute() (this=0xa0097e0 <mtgsThread>)
   at /home/toxicshadow/build_env/pcsx2/common/src/Utilities/ThreadTools.cpp:644
#8  0x083c35da in Threading::pxThread::_internal_callback(void*) (itsme=0xa0097e0 <mtgsThread>)
   at /home/toxicshadow/build_env/pcsx2/common/src/Utilities/ThreadTools.cpp:684
#9  0xf5db8452 in start_thread () at /usr/lib/libpthread.so.0
#10 0xf5cdd25e in clone () at /usr/lib/libc.so.6

Thread 3 (Thread 0xedaffb40 (LWP 28240)):
#0  0xf7726bf0 in __kernel_vsyscall ()
#1  0xf5dbd8a6 in [email protected]@GLIBC_2.3.2 ()
   at /usr/lib/libpthread.so.0
#2  0xf5dbdea9 in [email protected]_2.0 ()
   at /usr/lib/libpthread.so.0
#3  0xf5441054 in  () at /usr/lib/libGL.so.1
#4  0xf44307df in  () at /usr/lib/libnvidia-glcore.so.358.16
#5  0xf5443458 in  () at /usr/lib/libGL.so.1
#6  0xf5db8452 in start_thread () at /usr/lib/libpthread.so.0
#7  0xf5cdd25e in clone () at /usr/lib/libc.so.6

Thread 2 (Thread 0xde7ceb40 (LWP 28245)):
#0  0xf7726bf0 in __kernel_vsyscall ()
#1  0xf5ccfe12 in ppoll () at /usr/lib/libc.so.6
#2  0xe2a0f9b3 in pa_mainloop_poll () at /usr/lib/libpulse.so.0
#3  0xe2a10141 in pa_mainloop_iterate () at /usr/lib/libpulse.so.0
#4  0xf591cfa8 in PULSE_WaitAudio () at /usr/lib/libSDL-1.2.so.0
#5  0xf58ecf34 in SDL_RunAudio () at /usr/lib/libSDL-1.2.so.0
#6  0xf58f5d56 in SDL_RunThread () at /usr/lib/libSDL-1.2.so.0
#7  0xf593fedc in RunThread () at /usr/lib/libSDL-1.2.so.0
---Type <return> to continue, or q <return> to quit---
#8  0xf5db8452 in start_thread () at /usr/lib/libpthread.so.0
#9  0xf5cdd25e in clone () at /usr/lib/libc.so.6

Thread 1 (Thread 0xf2d09a80 (LWP 28227)):
#0  0xf7726bf0 in __kernel_vsyscall ()
#1  0xf5ccfd3b in poll () at /usr/lib/libc.so.6
#2  0xf6039a8c in g_poll () at /usr/lib/libglib-2.0.so.0
#3  0xf602a428 in g_main_context_iterate.isra () at /usr/lib/libglib-2.0.so.0
#4  0xf602a831 in g_main_loop_run () at /usr/lib/libglib-2.0.so.0
#5  0xf67f80cd in gtk_main () at /usr/lib/libgtk-3.so.0
#6  0xf7067865 in wxGUIEventLoop::DoRun() ()
   at /usr/lib/libwx_gtk3u_core-3.0.so.0
#7  0xf74f5ec0 in wxEventLoopBase::Run() () at /usr/lib/libwx_baseu-3.0.so.0
#8  0xf74b4a9c in wxAppConsoleBase::MainLoop() ()
   at /usr/lib/libwx_baseu-3.0.so.0
#9  0xf74ad2b3 in wxAppConsoleBase::OnRun() () at /usr/lib/libwx_baseu-3.0.so.0
#10 0xf7136e5f in wxAppBase::OnRun() () at /usr/lib/libwx_gtk3u_core-3.0.so.0
#11 0xf754b8c3 in wxEntry(int&, wchar_t**) () at /usr/lib/libwx_baseu-3.0.so.0
#12 0xf754b967 in wxEntry(int&, char**) () at /usr/lib/libwx_baseu-3.0.so.0
#13 0x081f26f1 in main(int, char**) (argc=4, argv=0xff8b62a4)
   at /home/toxicshadow/build_env/pcsx2/pcsx2/gui/AppMain.cpp:67
I built it using a 32bit virtual machine and run it on my 64bit machine with 32bit libs.
This path "/home/toxicshadow/build_env/pcsx2/common/include/x86emitter/internal.h: No such file or directory" is a reference to my virtual machine? Is that that what is causing the problem?
I think this might be related to the fact that i built a debug build and not a release build. Thinking back I remember seeing optimization references during the build process.

I am building a release version now.

Will keep you posted
Forget about gdb. It won't give you any info.

Try to change a couple of option
1/ Use native resolution
2/ disable accurate blending
3/ disable accurate date

Then what is your driver?

And yes if you can find the first bad commit, it will greatly help. (at least a limited range of commits)
(02-21-2016, 03:55 PM)toxicshadow Wrote: [ -> ]I think this might be related to the fact that i built a debug build and not a release build. Thinking back I remember seeing optimization references during the build process.

I am building a release version now.

Will keep you posted

Debug build disable tons of optimization. Dev is barely better but usable at least. Please be sure that you have a release build.
Hi Gregory,

It turns out there is nothing wrong. Its just me being an idiot.

I forgot that I had left the build type as debug in my build script instead of reverting it to release.

I have since built a release build and performance is back to normal.

Sorry

P.S. Its quite impressive to see the amount of difference that optimizations can make.
Yeah, GCC doesn't support very well some GSdx wrapper.