Design Philosophy

Design for a gaming machine should start with the gamer's visual experience and work backwards towards the network and internet. Therefore, the graphics subsystem is the most important element is this approach.

Graphics:

The top end in graphics these days is in ray tracing, where each ray of light in the scene is traced from the light source, bounces off of the material in the scene and is then traced back to the observer's eye. This allows each ray of light to be impacted by the material it bounces off of, water, exploding hot gases, etc., offering the most realistic rendering of the scene because each ray of light is accurately represented. However, this involves massive ray trace calculations for each pixel in each scene or frame. A high-resolution frame is well over 1 million pixels and each frame may be updated at 100-120 frames a second! 


This large amount of calculations is why only specially designed graphics processors like those in the Nvidia RTX series are able to do this. The top end of the RTX series has over 10,000 processor core’s inside, each operating in parallel at over 1.7GHz, performing many light ray calculations simultaneously. 

In prior generation of video cards, most of the scene is rendered using predefined bit maps or texture maps which cannot respond to the scene's as realistically.

The key factor in choosing a RTX subsystem is how fast it can render scenes of a given complexity. The more cores the video card has, the more frames it can render, therefore offering more complex scenes faster.

CPU:

The next most important item is the main CPU in the PC. For Windows PCs, the only two choices are Intel or AMD. These two processor sets are of course compatible with each other, are very competitive in features and are quite similar. They each offer multiple CPU cores on each chip, each capable of running many threads running at very high clock speeds.

A thread is a sequence of program execution. All programs, such as a game program, use one or more parallel threads of execution. Therefore, the more threads a program uses the more work is being done in parallel. The clock speed is the rate at which the CPU can execute a thread. Multiple core CPUs are essentially a CPU with many copies of the same core allowing more parallel work. 

So, the two main dimensions of a CPU are its clock speed and how many threads it can run simultaneously. A third issue is the amount of heat the CPU generates when it runs. Both faster clock speed and more threads increase the amount of heat generated. So a typical CPU is a compromise combination of clock speed and threads to meet a particular heat generation target. 

A typical high-end CPU can run at a clock speed of around 5GHz and is capable of anywhere from 8 to 32 threads. At present, Intel CPUs generally lead in clock speed, running at over 5GHz, while AMD leads in offering more threads with 32 Threads being common. While this is true for most consumer processors, both manufacturers offer commercial processors that go beyond these specs.

Most of today's PC game programs typically use 4 to 8 threads. Therefore, we have chosen to go with Intel CPUs that focus on CPU speed over the number of threads. For example an Intel I9 processor runs approx. 5.3GHz and offers 8 cores, with two threads each making a total of 16 threads. This provides the best combination of the fastest clock speed and still plenty of threads, with at least 16 threads.

Memory and Storage:

All game programs use very large amounts of memory and storage. When the program is launched, a large amount of the program is loaded from storage into memory. Then, while the program is running the data in memory is fed to the video card while new data and other information are pulled from the internet.

 

Therefore, in designing a system it is important to use the fastest storage possible to reduce time to load programs into memory and reduce the image load time into the game model. Very large amounts of texture maps and other assets are loaded for a game. Therefore, the faster the storage mechanism is, the less the CPU has to wait for this to load into memory. Today's NVME SSD memory offers the fastest data rates of approx. 3.5GB/sec. 

The memory is where all the programs and data is stored and it needs to be as fast as possible, as this is the source from which the CPU accesses all this material. The memory is usually DDR4/5 Dynamic RAM, which defines the clock speed at which the memory can be accessed. The memory data or program code is pulled from memory into the CPU cache, or the memory data is passed onto the video subsystems and its video ram for processing and rendering.

Overall, data transfers between RAM and Video RAM take place frequently and must be the fastest. Transfers between storage and memory occur less frequently and therefore can be slower.

While we would like all these speeds and sizes to be as large as possible, in reality there is a tradeoff between size, speed and cost.

The network connection is very important to most games and could be considered the source of infinite amounts of data for a game. However, the network speed or bandwidth is the slowest of these links, so usually, most game data needed is preloaded at game installation or in the background while the game is running.