I have two NVMes, one at 2,250 MB/s, the other at 7,500M/s.
The conundrum is; do i put the OS and steam on the 7,500MB/s drive, then have the games library stored on 2,250MB/s drive, or the reverse, or figure a way to put both the .steam folder and the games library on the 7,500MB/s drive?
Or throw my hands up and just slam it all on the 7,500MB/s?
Wow, chatgpt is the ultimate linux support!! maybe the year of the linux desktop is 2026
To optimize Steam on Linux using two NVMe drives, you can make use of both drives to maximize performance. Here’s a suggested approach:
Install the Operating System on the Faster NVMe Drive
If one of the NVMe drives is significantly faster than the other (e.g., using PCIe 4.0 vs. PCIe 3.0), install the OS on the faster drive. This will improve the overall responsiveness and speed of your system, especially for general tasks and running Steam.
Install Steam on the Faster NVMe Drive
By default, Steam installs to the home directory of the OS. You can either keep it there or manually move it to the faster NVMe drive. This is particularly useful if you want the Steam client and its data to be as fast as possible.
To do this, install Steam as usual via your package manager or from the Steam website, and make sure to choose the faster NVMe drive as the installation location for Steam.
Move Steam Library to the Second NVMe Drive
If your second NVMe drive is still fast but not as fast as the first one, you can use it to store your game libraries. Here’s how you can move or add a new Steam Library on the second drive:
Open Steam, go to Settings > Downloads > Steam Library Folders.
Add a new Steam Library folder on your second NVMe drive.
Move games from the primary library to the second one to reduce load on the main NVMe and keep game access quick.
This ensures games are stored on a dedicated drive, which can help with read/write performance, particularly when loading large games.
Optimize for Speed:
TRIM Support: Make sure TRIM is enabled for your SSDs, especially for NVMe drives, to keep them running at optimal speeds. On Linux, you can enable automatic trimming using a systemd timer.
You can enable it with: sudo systemctl enable fstrim.timer
Mount Options: You might want to tweak mount options for your NVMe drives for better performance. For example, the noatime option can reduce unnecessary write operations.
Example entry in /etc/fstab:
For super-fast loading times, you could set up a RAM disk for temporary files like download caches or even Steam’s user data. This can be tricky but can provide a significant performance boost for tasks like downloading or installing large games.
You can create a RAM disk (e.g., /tmp/steam-cache) and point Steam to use it by changing settings in the Steam client.
Example RAM disk setup:
mount -t tmpfs -o size=8G tmpfs /mnt/ramdisk
After that, configure Steam’s cache or temporary data paths to point to the RAM disk.
Disk Performance Monitoring
Use tools like iostat, nvme-cli, or smartctl to monitor the health and performance of your drives, ensuring that you’re getting the best speed and lifespan from your NVMe drives.
By using this setup, you optimize your Steam client and game library locations to take full advantage of your NVMe drives’ speed, which results in faster load times and better overall performance when gaming on Linux.
Gaming loads are much more GPU bound and most of the loading time is spent on the initial shader loading. Past that drive speed doesn’t matter.
Meanwhile the OS is always shuffling around small files so a faster drive should make the system feel snappier.
Real world: you’ll never gonna be able to distinguish between the two, not even using a stopwatch.
You neglected to mention the drive capacities. I’m inclined to think it should all go on one drive and sell the smaller drive or put it into an enclosure for portable fast storage.