09-11-2013, 05:03 AM
Just want to point out that you are quoting posts from 2008. What they thought then and what they know now are probably a lot different. Pcsx2 has come a long way since 08.
(09-11-2013, 05:03 AM)garrlker Wrote: [ -> ]Just want to point out that you are quoting posts from 2008. What they thought then and what they know now are probably a lot different. Pcsx2 has come a long way since 08.
Quote:Let's say we won't go 64 bits without a really good reason.http://forums.pcsx2.net/Thread-Is-PCSX2-Going-to-consider-going-64-bit
We all agree that it'd be nice to have the option but it will mean a lot of work
and in the end the emu could be less compatible, crash more, run slower.
So unless it somehow becomes necessary to do it, we won't.
(09-11-2013, 05:16 AM)omega_rugal Wrote: [ -> ]So
- 64-bit registers
- more GPRs overall
- FastMem (10% - 15% on this only)
All x64 specific features that can not be done with x86
am i right?

(09-11-2013, 04:51 AM)xemnas Wrote: [ -> ]Thanks for the information. But I'm not quite convinced why larger ISA register set, more GPRs, more XMM, etc. make the 64-bit build faster because I don't see why they make things faster. Larger doesn't always mean faster like if we increase the amount of RAM, it doesn't make the emulation faster. You may be right but I don't see the clear connection here. I don't understand how they impact the performance.Think of GPRs as a level 0 cache. If it doesn't fit you have to spill to slower memory. 32GPRs seems to be the sweet spot before you get diminishing returns (without tricks is IA64 the only one to go higher?).
xemnas Wrote:Thanks for the information. But I'm not quite convinced why larger ISA register set, more GPRs, more XMM, etc. make the 64-bit build faster because I don't see why they make things faster. Larger doesn't always mean faster like if we increase the amount of RAM, it doesn't make the emulation faster. You may be right but I don't see the clear connection here. I don't understand how they impact the performance.
xemnas Wrote:http://forums.pcsx2.net/Thread-We-are-dr...5#pid12935
xemnas Wrote:Please read the above quote.
delroth Wrote:For Dolphin, our JIT blocks are so small that reg spilling is probably not that much of a problem
lamedude Wrote:Think of GPRs as a level 0 cache. If it doesn't fit you have to spill to slower memory. 32GPRs seems to be the sweet spot before you get diminishing returns (without tricks is IA64 the only one to go higher?).
xemnas Wrote:64-bit OS is not new.
xemnas Wrote:Linux supports x86-64 since 2001.
delroth Wrote:More GPRs but bigger pointers increasing cache spill. Pick your poison. Most apps don't care whether you have 64 bit GPRs or 32 bit GPRs.
delroth Wrote:NOPE, MMX registers are mapped to the old x87 80 bit registers, which are unused if you use SSE2 for FP math like most people do.
delroth Wrote:WTF? That's not where our bottlenecks are at all,
delroth Wrote:On x86_64 you have no x87, no access to MMX, no free GPR to be used there.
delroth Wrote:and of course we use SSE2 for FP math - everyone serious does (even on x86, and it's actually the only way on x86_64).
(09-11-2013, 03:21 PM)NaturalViolence Wrote: [ -> ]Even before the developers began doing extensive x86-64 optimizations (including fastmem) compiling for x86-64 produced far better performance.This is not true at least for other emulators. Just having 64-bit build doesn't mean that it will be faster than 32-bit build.
(09-11-2013, 03:21 PM)NaturalViolence Wrote: [ -> ]All he said was that the number of MMX registers isn't higher. Which is true. Intel/AMD did that deliberately though. SSE does everything MMX does much faster and with greater flexibility. By the time x86-64 was around they were trying to phase out MMX since SSE was already well established. I don't see why on earth PCSX2 would still be using MMX. Then again that post is from 2008.You misunderstood this. PCSX2 uses SSE but he meant that MMX registers were available for use in 32-bit mode.
Let me put this into perspective: x86-64 SSE > x86-32 SSE > x86-64 MMX = x86-32 MMX
SSE is faster than MMX and x86-64 SSE is faster than x86-32 SSE. Both are undeniable facts. So I don't see why the lack of improvement to MMX matters at all. They should be using SSE instead of MMX and in an application like dolphin or PCSX2 that does a lot of matrix math 64 bit SSE will boost performance due to the larger set of registers among other improvements.
(09-11-2013, 03:21 PM)NaturalViolence Wrote: [ -> ]Source?https://en.wikipedia.org/wiki/UNICOS
The first 64 bit microarchitecture I know of was the DEC alpha in 1992.
(09-11-2013, 03:21 PM)NaturalViolence Wrote: [ -> ]x86-64 was released in 2003. It wasn't supported on Intel cpus until 2004 and low budget cpus until 2005.It doesn't matter now. Because in 2013, PCSX2 team still doesn't see a good reason to have 64-bit build. That was my main point. Also, it's fact that Linux has been supported x86-64 since 2001.
(09-11-2013, 03:21 PM)NaturalViolence Wrote: [ -> ]Exactly. SSE is better for matrix int than MMX and better for matrix float than x87. It's stupid not to use it. So the lack of MMX and x87 shouldn't really matter.I believe you misunderstood this as well. We're talking about the number of registers here.
xemnas Wrote:This is not true at least for other emulators. Just having 64-bit build doesn't mean that it will be faster than 32-bit build.
xemnas Wrote:You misunderstood this. PCSX2 uses SSE but he meant that MMX registers were available for use in 32-bit mode.
xemnas Wrote:https://en.wikipedia.org/wiki/UNICOS
xemnas Wrote:It doesn't matter now. Because in 2013, PCSX2 team still doesn't see a good reason to have 64-bit build. That was my main point.
xemnas Wrote:Also, it's fact that Linux has been supported x86-64 since 2001.
xemnas Wrote:I believe you misunderstood this as well. We're talking about the number of registers here.
xemnas Wrote:No. That might only be one of the reasons. The more important reason they explained was that even if they made the 64-bit work it probably wouldn't be faster than 32-bit. The performance would be pretty much the same.
xemnas Wrote:Regarding the registers someone mentioned, PCSX2 team also explained that the number of usable registers weren't that much different. 32-bit can use MMX registers or something if I remember correctly.