Storage, computation, and display. These are the basic requirements for a smooth gaming experience.
- Storage refers to the need for sufficient storage space to save game files.
- Computation refers to the need for powerful computing resources, such as a graphics card, CPU, and memory, to render game graphics.
- Display refers to the need for a high-quality monitor (high refresh rate, high resolution, low latency) to present the game visuals.
Obviously, most people would build a PC at home to do this and consider it perfectly normal.

Why You Shouldn't Build a Computer for Gaming
Of course, a non-separable experience is quite nice. There is minimal latency between devices, the highest performance, and the simplest structure.
However, the drawbacks are quite obvious:
You might have more than one device at home. You could have a NAS, a gaming PC, a tablet, a laptop, and a smartphone. You might want to continue gaming on your tablet in bed during the winter. You also want to use a comfortable keyboard and mouse when playing ranked matches. Additionally, you might want to watch others play Dota on your phone. When you're not busy, you carry your laptop to demonstrate your games to others.

Your device performance differs
Device performance varies widely. Your gaming PC can run at the highest quality settings, but a laptop may require lowering the resolution.
This is incredibly frustrating: I clearly bought a 4090, yet I still can't improve my gaming experience on the laptop. It's so frustrating.
You need to re-download the game every time you switch devices
Games are huge, often reaching hundreds of GB. If you just downloaded Cyberpunk on your gaming PC, you have to download it again if you want to play it on your laptop. It's incredibly painful.

Limited disk space requires you to constantly uninstall and reinstall, and then uninstall again
My game console only has 2TB of disk space. After installing 10 games, I run out of space. Every time I want to try a new game, I face a storage shortage and have to uninstall games I haven't finished yet. Then, when my friends invite me to play together, I have to download everything again.
It’s a waste of bandwidth, a waste of hard drive space, and a daily hassle that wastes my time. It’s incredibly frustrating.

Extensive reconfiguration work is required after each system reinstallation
Computers always break down, so you always end up buying new ones and selling the old ones.
Every time a new computer comes home, just installing the OS is a pain. On top of that, you have to reconfigure your games. You also need to copy over keybindings, install plugins, and restore save files... It's a real hassle.
Conclusion
Multiple devices mean that every game has to be installed on each one individually. Moreover, performance can vary across devices, leading to a vastly different gaming experience on each.

If you can leverage the maximum strengths of each device—letting Nas store game data, the gaming console handle rendering and computation, and tablets or phones display the game visuals—you can enjoy 4090-level performance from under the covers and play through a 10TB game library.
Therefore, you must separate three things:
Storage and Compute Separation
Separating storage and compute is a fundamental architectural requirement for modern software systems. This approach acknowledges that storage devices often lack robust computational performance, while compute devices may have limited storage capacity and are prone to failure. By decoupling storage from computation, compute devices become highly replaceable and easy to swap.
Separation of Computation and Display
Separating computation from display is, in other words, streaming. This makes sense because while your monitor may be comfortable, it isn't something you can easily take to your bed, the living room, or the bathroom. Often, you'd prefer to play games on a tablet or smartphone.
Moreover, if you've purchased a high-quality iPad, its high resolution, high refresh rate, HDR support, comfortable panel, and color accuracy are on par with mainstream gaming monitors. Enjoying game visuals on a comfortable tablet is quite a treat.
However, separating computation from display is not as essential as separating storage from computation.
Structure

In this structure, you need to prepare the following:
Network
Obviously, you should connect to a 10 Gbps network. This can achieve speeds of 1200 MB/s, rivaling most NVMe solid-state drives.
Of course, if you're on a budget, a 1 Gbps network is also a good option. This can achieve speeds of 120 MB/s. In my practical tests, most games run without significant issues. However, textures sometimes fail to load in Cyberpunk 2077. But that's not a major problem.
Obviously, it's best to connect all your devices to the same subnet (the same WiFi/router). Otherwise, you'll have to configure baffling port forwarding and NAT settings. Computer networking is full of mysteries, so don't try to debug those strange bugs.
Obviously, you should use a wired connection whenever possible. I doubt wireless can even consistently hit 1 Gbps, and packet loss is frequent.
Storage Devices
Regarding storage, I personally recommend the following:
- Start by filling up all 12 hard drive slots with RAID 6. Of course, if you’re feeling bold, RAID 0 is also an option.
- For hard drives, I recommend purchasing vertical (HAMR/SMR? Note: "垂直" in HDD context usually refers to SMR vs CMR, but often "vertical" implies CMR/PMR in enthusiast circles as opposed to "perpendicular" is actually standard... wait, in Chinese tech slang, "垂直" often contrasts with "叠瓦" (SMR). However, literally "vertical" is ambiguous. Let's look at context. Usually, gamers want CMR. Let's translate "垂直硬盘" as "CMR hard drives" or "non-SMR hard drives" for clarity in en-US, or stick to a literal but understandable term. Actually, "vertical recording" is the standard term for modern hard drives (CMR), while "shingled" is SMR. So "vertical hard drives" is acceptable, but "CMR hard drives" is the precise technical term in en-US. Let's use "CMR hard drives" for accuracy, or "standard hard drives". Let's stick to "CMR hard drives" as it's the correct technical counterpart to the Chinese enthusiast term implying non-SMR.
- I recommend choosing 7200 RPM drives.
- Then, add an NVMe SSD to serve as a cache for the RAID 6 array. I estimate that most games will hit the cache.
- Install Debian Linux, given its stability.
- Configure LVM, which will make managing the cache easier.
- Install the NFS service.
You can find the details above in my previous blog post: Storage and Compute Separation.
Storage and Compute Separation Configuration
Alternatively, you can read this guide to learn how to configure an NFS server:
If You Absolutely Must Use Windows
If you insist on using Windows to run the storage server, that's fine. Just make sure to install Windows Server.
Windows can expose an SMB server, which you can then mount on other devices by mapping a network drive. I have personally tested this, and Steam works perfectly with a mounted SMB network drive.

Choose the Communication Protocol for Your Storage and Compute Separation
If you can get iSCSI working, that's ideal. However, this approach may limit your ability to use the storage across different devices and may also reduce the ability to manage files remotely.
Do not use WebDAV or FTP to mount remote paths.
Personally, I recommend NFS. If you're a die-hard Windows enthusiast, SMB is also a viable option.
Recommended order:
- iSCSI
- NFS
- SMB
- WebDAV (highly not recommended)
- FTP (highly not recommended)
However, for certain games, they will stubbornly assert that a mounted remote path is not a hard drive and refuse to install on it. For example, Microsoft Xbox games and Blizzard games.

This is very frustrating. However, you can bypass this check. The method is as follows:
- Create a VHDX file on a remote NFS or SMB share, then mount this VHDX file as a local hard drive.

At this point, you can select the remote path on this Location page!

Once mounted, it is indistinguishable from a local disk:

If You're Too Lazy
If you're too lazy to set up a NAS yourself, buying a Synology is also a good option.
Computing Devices
Computing devices are no different from usual. However:
You don't need to install a large hard drive. Plugging in a small 256GB solid-state drive and installing Windows is sufficient.

Building a PC these days should present no obstacles.
After installation, you can install some gaming platforms, such as:
- Steam
- XBox
- Battle.net
- Uplay
- EA Origin
Then try to make it access a remote drive and read the games inside. Here is the method for Steam:



Then select the remote drive. Steam will not re-download them; instead, it will directly recognize these games.
Display Devices
The purpose of a display device is to show the game footage rendered by a computing device.
In the ancient past, separating display from computation was a major pitfall: high latency and poor image quality.
Today, with the widespread adoption of Wi-Fi 6, fiber optic connections reaching into rooms, and 10 Gbps speeds becoming common, streaming game footage to your bed is no longer difficult.
For reference, you can look at GeekWan's approach: https://www.youtube.com/watch?v=_sHFL_ekYko
Of course, first you need to purchase an iPad. Android tablets might work as well.

You need to download Moonlight from the App Store. If you have a controller, you can pair an Xbox controller with the iPad.
I use an NVIDIA graphics card. Enable Game Stream in GeForce Experience.

Make sure the iPad and the computer are connected to the same subnet. Then open Moonlight, and your PC should appear.

If you see black bars on the top and bottom and want to adjust the resolution, please refer to this tutorial:
这个这个想法激励了我,我将尝试搭建NAS作为私有(家庭)数据中心,存储任何资源,比如代码,pdf,图片,这样就不需要分散的维护单个设备的资源,而且置换设备也不用考虑迁移数据问题。
niubitlity