Bottleneck is a technical term that is extremely important in game graphics rendering and optimization (technical art). An explanation of the state in which the slowest part of the entire system's processing performance (such as specific processing by the CPU or pixel calculation by the GPU) slows down the entire system and determines the overall speed.

Real world analogy: If the neck of the bottle is narrow, no matter how much water is inside, it will only come out little by little.

The bottleneck is ``No matter how big and thick the body of the bottle (GPU) is, if the neck of the bottle (CPU) is extremely thin like a straw, then when the bottle is turned upside down, water (frame rate) will only come out at the speed of the thickness of the straw.'' In this state, even if you try to make the body of the bottle larger (make the graphics even lighter), as long as the neck of the bottle remains thin, the speed at which the water comes out (the lightness of the game) will not increase at all. Slightly widening the thinnest neck (optimizing heavy scripts) is the only way to dramatically increase overall performance.

Bottleneck concept infographic diagram

Figure: Infographic that clearly illustrates the basic processing flow and mechanism of Bottleneck in Japanese notation

Detailed mechanism and operating principle

Use Profiler to first determine whether the current bottleneck is "CPU Bound" or "GPU Bound" and then focus on reducing only the processing of the real culprit that is holding you back.