Hacker News new | past | comments | ask | show | jobs | submit login

I did not know that the GPUs are that different from their desktop cousins. Do you know the reason for this?



They are not, the problem is how you use them. For example - fetching a texture data on PS3 takes about 50 clock cycles, while on a PC it takes 1000-2000 cycles, because the request has to go through all the driver layers first. PS3 uses its own version of OpenGL(PSGL) which has a much more low level access to hardware. That level of access is simply not provided by PC hardware, so it has to be somehow emulated - and for high performance GPUs we have nowadays, it's rather difficult.


I agree with your general point, but PSGL is pretty much never used. I only know of a couple of small indie PSN titles that used it, mostly to ease the porting process from PC. It's way too slow for the big games, who use a lower level API called LibGCM.


Do you think DX12 or Mantle will help with overcoming the high-level API overhead?


The 360 emulator (Xenia) dev seems to think so.


I imagine that timing and synchronisation between things has to be emulated too for various operations to work as expected, further complicating this.


That was actually a big problem with PS2 emulation - some parts of the system were hardcoded to wait only a certain amount of time for a function to finish - because that function was ran on a different chip, and would always take the same amount of time. Now emulating that behaviour was incredibly difficult, especially if all of it had to run on a single CPU. The problem has been mitigated somewhat by multi-core CPUs,with each core emulating a different part of the PS2, but it's still far from ideal.


Maybe it's possible to pre-load a lot of textures and stuff since PC GPU:s has so much RAM




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: