Optimizing performance for software development

2 posts · Closed

Stig Guest
4 Nov 2024

I have a new PC with a fast M.2 SSD, 96 GB RAM running Windows 11 Pro. I am exploring how to optimize system performance when developing big software solutions using heavy IDEs like Visual Studio and JetBrains Rider. I currently have a c:/git folder with lots of different software projects using Git for revision control.

I want to use RAM disk for:

  • Windows 11 TMP files.
  • Browser TMP files for Edge, Chrome and Firefox.
  • Git repositories in c:/git. This should be persistent and probably be 16GB.

Questions:

  • Is SoftPerfect RAM Disk compatible with modern Windows 11 systems and my requirements?
  • What is the recommended size for Windows TMP files and browser files?
  • I want to use volatile RAM disk for browser TMP files and cache, and I also want the browser to remember cookies and passwords, etc. How to do this?
  • What kind of filesystem should be chosen for disk image files? What are the pros and cons of each? I want stability and max performance.
  • Is it possible to write a given folder to a RAM disk image when an application using this folder closes? For instance IDEs such as Visual Studio, Rider or VS Code?
  • Is it possible to write a RAM disk to an image every hour or so? I am generally looking for methods and events to use for persisting RAM disk data to the underlying image.
  • Will the image files be browsable as physical files? Ideally, I would like to use RAM disk as a transparent cache to a number of folders on the disk.
Ann SoftPerfect
4 Nov 2024

It is generally a good idea to place temporary files and browser cache on a RAM disk to boost performance. We have an article that details how to do this through setting up a volatile RAM disk, which gets cleared on shutdown and thus is perfect for storing temporary files and cache.

A volatile RAM disk, with a size of about 4-8 GB, should be sufficient for Windows temporary files and browser cache. Following the steps in the article ensures that cookies, passwords, and browsing history remain persistent, while only the cache itself is volatile. This setup will improve performance without affecting your saved data. For the temporary drive, we recommend exFAT, as its performance, compatibility and reliability suit this purpose well.

For development files, such as Git repositories, it's typically more reliable to store them on your SSD. Source code files are often read more than written, so they won't significantly wear the SSD. If you prefer to have them in RAM for faster access, you could create a persistent RAM disk with periodic saving to an image file, but note that there is a small risk of data loss if power supply is interrupted to your PC or your system happens to crash during the image-writing process or in between. Therefore, an SSD is a safer choice for development files, while redirecting temporary files and intermediate build outputs to a volatile RAM disk would boost the performance and reduce SSD wear. A RAM disk can be configured to save to an image on demand or at regular intervals, such as hourly.

In your case, we would recommend using a larger volatile RAM disk (for example, 32 GB) for Windows temporary files, browser caches, any IDE-related caches and temporary compiler output. For IDE-specific temporary files, you may look into IDE or project settings to specify Temp directories or use symbolic links to direct temporary output to a RAM disk. This setup balances speed with reliability, using a RAM disk for temporary data and cache while keeping important files on the SSD.

Just one more piece of advice: adding the RAM disk to Windows Defender's exclusion list is an additional tweak that will reduce the scanning overhead, optimising performance even further.

This topic is closed. It has had no new posts for over a year, so the software versions it talks about may be out of date. Start a new topic in RAM Disk if you have a similar question.