(Question / Idea) Keep entire rom in RAM if system has enough space

I finally noticed where my occasional hitching was coming from when playing games, and it comes from disk reads (almost always).

I used to keep all my roms on my secondary drive, which is 2tb 750RPM HDD and whenever citra or the system caps out (or even attempts a large-ish) read then the emulator stalls waiting for that data.

Moving the roms over to the primary SSD alleviated this issue immediately.

However, I was wondering why I was even reading from disk in the first place. All of the assets being loaded from the games have already been viewed before, not to mention that I have more than enough RAM to keep the entire rom in RAM, negating the need for disk reads in the first place.

Could Citra not check the rom size and see if enough memory exists to load everything from the get-go and never need disk access again? This would probably provide almost-no benefit to SSD users, but HDD users would see dramatic load-time decreases and drastically reduce IO-based emulation hitches.

System Information

  • Operating System: Windows 10 Pro (Version 10.0.18362 Build 18362)
  • CPU: Processor Intel® Core™ i7-6700K CPU @ 4.00GHz, 4001 Mhz, 4 Core(s), 8 Logical Processor(s)
  • GPU: Name NVIDIA GeForce GTX 980 Ti
  • Citra Version (found in title bar): Nightly 1327
  • Game: Radiant Historia
  • Screenshot of Issue (include the full Citra window including titlebar): N/A

citra_log.txt (1.3 MB)

1 Like

In order for us to provide better support, we need to see the log generated by Citra. This guide will walk you through how you can obtain the log file: How to Upload the Log File.

System Information for Support

Client Version                                Nightly 1327 HEAD-d18d2a0
OpenGL Vendor                                 NVIDIA Corporation
OpenGL Renderer                               GeForce GTX 980 Ti/PCIe/SSE2
OpenGL Version                                3.3.0
Enable Hardware Renderer                      [x]
Enable Hardware Shader                        [x]
Hardware Shader, Accurate Multiplication      [ ]
Hardware Shader, Geometry Shaders             [x]
Enable Shader JIT                             [x]
System Region                                 -1

Here’s some issues I found with your log that might help.

  • Enabling Accurate Multiplication is recomended in certain games. If you are experiencing graphical glitches, try enabling this option.