3 ms·
I know that this is for 64-bit on the new Raspberry Pi specifically, but would the Pi 4 be able to run a Playstation 2 emulator?
by mikorym 7y ago
I know that this is for 64-bit on the new Raspberry Pi specifically, but would the Pi 4 be able to run a Playstation 2 emulator?
- derefr 7y agoInteresting question. Emulating the PS1 is a lot easier on modern hardware than emulating e.g. the SNES, because most of what it does is push polygons, and PS1 games just don’t push very many of them; so even the most anemic mobile GPU core is more than enough to handle the load. I imagine this is still true of the PS2 to an extent. It’s even more just a polygon pusher than the PS1; and the 3D is still generations-old. There’s this forum post linked to on the PCSX2 website: https://forums.pcsx2.net/Thread-Sticky-Will-PCSX2-run-fast-on-my-computer https://forums.pcsx2.net/Thread-Sticky-Will-PCSX2-run-fast-o..., that says the recommended specs are something like: • Intel Core 2 Duo / Core i3 @ 3.2Ghz or faster • Nvidia Geforce 9600GT / 8800GT or better Probably all you need here, to answer this question in theory, is to compare raw benchmark scores between those components and the Pi4’s CPU/GPU. Or, for another angle, here’s a forum post about Play! (an emulator that has aarch64 support) running on the Nintendo Switch’s Tegra X1: https://gbatemp.net/threads/play-ps2-emulator-is-running-on-the-nintendo-switch.538600/ https://gbatemp.net/threads/play-ps2-emulator-is-running-on-... Spoilers: it gets 10FPS. And the Pi4’s GPU is no Maxwell. (And, while Play! isn’t the most optimized of emulators, it’s the one you’d have to use on aarch64. Even if you optimized it 6x, so that the Tegra got 60FPS, the Pi4’s Videocore GPU wouldn’t be pulling nearly that.)
- davesmith1983 7y agoIt about how accurate the emulator is. ePSXE used to run fine on a 700mhz PIII with 128gb of ram. There were SNES emulators that also worked fine. However they were inaccurate and lots of games weren't exactly great. MGS for example didn't work well on ePSXe for years because it used many more hardware tricks than same the original ridge Racer. Ridge Racer R4 doesn't even work properly on a PS2 backwards PS1 compatibility because the PS1 on a chip isn't perfect.
- equalunique 7y ago>128gb ram I think you mean 128mb. Otherwise, that must have been some Pentium system!
- davesmith1983 7y agoThanks.
- derefr 7y agoLike I said, PS1 emulators like ePSXe run fine on everything. They would run fine on an Apple Watch. Modern GPUs (and even a PIII’s IGPU is “modern”) are scary compared to back then. Accuracy makes things slower, sure, but the PS2 emulators in question (like Play!) aren’t striving for accuracy. They’re striving just to get the darn thing to run. But there’s only so much accuracy you can trade off when the only thing you’re really being asked to do is push polys. What are you going to do; drop some on the floor? But actually, something like that might be possible. You know how the mobile port of FFXV looks—same game, lower-detail textures, all the models replaced with re-rendered low-poly versions? It’d totally be possible to build a PS4 (or any other 3D console) emulator that can achieve that effect “automatically.” We already have “HD texture packs” for emulators like Dolphin and Citra. We could have “LQ texture+model packs”, to reduce PS4/3/2-era graphics down to PS1-era graphics. That’d take most of the workload off the emulator, and let basically anything run these games. (And, in theory, you could compute such a pack automatically. For the textures, you’re just downsampling. For the models, 3D-geometry simplification algorithms exist, although they’re not realtime. But you could run them over a whole game’s worth of assets in a couple hours; and so, with disc images in hand, you could stand up a server and work your way through the whole console library over a few months.)
- davesmith1983 7y agoOh okay. I think I misunderstood what you were saying slightly. Some of the SNES/NES emulators require a lot of resources (relatively) to run accurately. I wondered if it was the same situation. So yeah it appears the GPU isn't capable. I do wonder what the performance numbers of the Nintendo Switch vs the RPi 4 would be.
- vardump 7y agoI'm assuming you'd want to have playable framerate. Maybe. With a herculean effort, way surpassing tricks and techniques used by x86 PCSX2 and other PS2 emulators. Pure CPU computational performance wise yes. You'd need to have very clever ways to emulate the "Emotion Engine", like VPU0 and VPU1 vector processors. A single RPi4 core would far exceed those, but using it in an emulator might be very hard, because you'll probably need to synchronize execution and to emulate PS2 internal memory model. Emulating PS2 300 MHz MIPS core would be a walk in the park compared with the other issues. But memory bandwidth might be the true showstopper. I think RPi4 has just one 32-bit DDR4 channel at 2400 MHz, which yields just 9.6 GB/s theoretical maximum bandwidth. More than what PS2 got, but the margins for emulation are uncomfortably low. So while it's "possible", I don't think it'll happen at playable framerates. It'd be easier to reverse engineer the rendering engines in popular PS2 games and to simply port them.
- AdmiralAsshat 7y agoMy circa-2011 "gaming" laptop with a quad core i7 CPU, 4GB RAM, and discrete GPU ran PS2 games vi emulator at 10 FPS or so. The state of emulation has come a long way since then, but still, that was a "desktop replacement" rig back in the day. I don't know how well a Pi can pull that off. The PS2 architecture was famously a pain in the butt to program for, to boot.
- asark 7y agoNot sure, but maybe-useful point of comparison: I used an RPi2 as a Retroarch (Lakka) box maybe... oh, two years ago or so. At that time, it managed the handful of PSX games I threw at it just fine, which kinda surprised me, but almost no N64 games ran at a playable framerate—only one that really worked was Mario 64, which I gather is one of the best-optimized and lightest-weight games on the system. I didn't try PS2 because PSX was OK but from its performance and how the N64 was doing I figured it didn't have a chance. 16-bit consoles were pretty good. Couldn't run the full-accuracy cores for SNES but that's not surprising. Everything before that 100% fine. Filters (say, for mimicking a CRT) weren't feasible on the hardware, beyond the simplest ones. The software's gotten a bit better—I think the Rarch team has done some major work pushing more of the computation of later emulator cores, like N64 and up, onto the graphics chip instead of the CPU—so I'm not sure how the RPi2 would fare now. The only benchmark I can find compares the RPi4 to the RPi3, not the 2, and the 4's single-core performance measures 3-5x better than the 3 (wow!) so I'm going to answer your question with a very confident probably, pending actually trying it.