Emuforums.com

Go Back   Emuforums.com > PS2 Emulation > PCSX2 Forum
Home Register Downloads FAQ Members List Calendar Arcade Mark Forums Read


Closed Thread
 
LinkBack Thread Tools Display Modes
Old March 20th, 2006   #1 (permalink)
PCSX2 Coder
 
refraction's Avatar
 
Join Date: Jan 2004
Location: Plymouth, UK
Posts: 9,822
Why is PCSX2 slow?

This seems to be a common question in this forum, i shall give you 3 options at this point.

Option 1: Read on to what i have to say
Option 2: Read this This talks about how the ps2 works compared to a PC.
Option 3: Post a thread asking why your game runs slow and recieve a warning and maybe even a ban for not reading the rules .

A lot of people seem to compare PS2 emulation to the other consoles such as Gamecube and PSX. Why are they faster? well the simple fact is the consoles are much simpler than the PS2, thus less code, bandwidth and development time is required.

This is a list of the things the emulator needs to emulate, i shall compare to the PSX.

EE (Emotion Engine) core = The PS2's main processor which runs 8x faster than the PSX processor with registers twice the size (128bits) altho in general cases only 64 bits are used, where the PSX uses 32bits as a general rule. The other difference is the R5900 (EE) has many extra instructions, multimedia instructions and extra co processors which arent in the PSX, so we have a processor thats 8x faster and at least 3 times more complex.

IOP (In Out Processor) core = This is identicle to the PSX core, it is the same chip with a few extra dma channels, it is also clocked 3mhz higher than the PSX but we can assume its basically the same chip.

VU (Vertex Unit) = The PS2's equivilant to the graphics engine on the PSX, it is seen as an extra processor (yes another one) altho the PSX one was 4 times slower than the VU and also the VU has its own memory and run independantly from the main CPU where as the PSX one is cpu dependant. This is the main reason for the slow 3d games on PCSX2, intense vertex processing done by the game using 4 32bit vertex's which makes up the 128bit floating point registers that it contains. This unit also processes textures and 2d information on a part of the unit called the VIF which unpacks texture data and sends it to the GS.

SPU2 (Sound Processing Unit 2) = This is literally, the SPU found on the PSX but doubled, so there is now 2 of them to handle

GS (Graphics Synthesiser) = This is the PS2 version of the GPU, which does a simular job, but has the ability to do anti aliasing and alsorts of other fancy things, altho some were rarely used, this does all the vertex/texture mapping that you see on the screen.

SIF = Now this didnt appear on the PSX, it connects the IOP to the EE and is used to transfer data between the 2, as the DVD, sound etc is situated on the IOP side, pretty much layed out as the PSX was. Altho its function seems simple, its required that we emulate it which takes extra time as expected.


These are the main, intesively used parts of the PS2 which are used in the emulator, as you can tell from the comparison that the PS2 is much more complex than the PSX and requires a lot more time. To add insult to injury on the real machine a lot of work will be done asynchronously, so say while the VU is doing something the processor will be doing something else, but unfortunately we cant do this, so we have to run 1 and pause the rest, when thats done let something else do the work and so on, and running all that processing power on a single CPU is very very intensive work. Now take all that and throw on at least FIVE times the requirements due to the emulation needing to process the original data and convert to ix86

As time goes on we find quicker ways to do things and optimise the code, but until we can run games at high speeds, enjoy the fact you can even run a PS2 game on your PC and continue to show your support
__________________

http://www.generalemu.net/
Intel Core 2 Quad Q6600 @ 3.4Ghz (425x8), Leadtek GTX 280 1Gb, 1.8Tb HDs, 2Gb Corsair DDR2-800 @ DDR2-1020 5-5-5-18 Dual Channel
Dont PM me for help, use the forums, thats what its for!




Last edited by refraction; March 21st, 2006 at 09:57..
refraction is offline  

Advertisement [Remove Advertisement]
Closed Thread

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


All times are GMT. The time now is 07:56.

© 2006 - 2008 Emu Forums | About Emu Forums | Legal | A member of the Crowdgather Forum Community


Powered by vBulletin® Version 3.7.6
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.2.0 RC5