keywords: Graphics, GPU Architecture, IMG CXT, NVIDIA RTX, Ray Tracing on Mobile, GPU ISA, Instruction Set Architecture

NVIDIA RTX

Summary

Nvidia Technical Blog
https://developer.nvidia.com/blog/category/graphics/

Graphics Reinvented: Ray Tracing, AI, and Advanced Shading Deliver A Whole New Way To Experience Games
https://www.nvidia.com/en-us/geforce/news/graphics-reinvented-new-technologies-in-rtx-graphics-cards/

DLSS (Deep Learning Super Sampling)

NVIDIA DLSS: Your Questions, Answered
https://www.nvidia.com/en-us/geforce/news/nvidia-dlss-your-questions-answered/

RTXGI (Real-time Ray Traced Global Illumination)

RTX Global Illumination
https://developer.nvidia.com/rtxgi

RTXDI (RTX Direct Illumination)

RTX Direct Illumination (RTXDI)
https://developer.nvidia.com/rtx/ray-tracing/rtxdi

AMD GPU

Summary

Introduction to AMD GPU Hardware
https://www.youtube.com/watch?v=uu-3aEyesWQ

PowerVR Photon

IMG CXT GPU

The first mobile GPU core with ray tracing
https://www.imaginationtech.com/graphics-processors/img-cxt-gpu/

GPU ISA (Instruction Set Architecture)

NVIDIA

Assembler for NVIDIA Maxwell architecture
https://github.com/NervanaSystems/maxas

Nvidia doesn’t publish any offical documents for ISA since for the commercial protection: NVIDIA Instruction Set Architecture - Documentation (Maxwell)

AMD

AMD GPU ISA documentation
https://gpuopen.com/amd-isa-documentation/

References

SIMD in the GPU world
https://www.rastergrid.com/blog/gpu-tech/2022/02/simd-in-the-gpu-world/

Memory Accessing Architecture

Immediate Mode GPUs

Immediate Mode GPUs https://developer.arm.com/documentation/102662/0100/Immediate-Mode-GPUs

Tile-based GPUs

Tile-based GPUs
https://developer.arm.com/documentation/102662/0100/Tile-based-GPUs

GPU Framebuffer Memory: Understanding Tiling
https://developer.samsung.com/galaxy-gamedev/resources/articles/gpu-framebuffer.html

Hardware Capabilities

Texture Sampler

OpenGL ES 3.0

  • Turns off support for compute Shaders and related features (compute buffers, random-write Textures), sparse Textures, tessellation Shaders and geometry Shaders. Enforces maximum of 4 simultaneous render targets, and maximum of 16 Textures used in a single Shader. Maximum allowed Texture size is set to 4096, and maximum cubemap size to 2048. Realtime soft shadows are disabled.

Metal

  • Same restrictions applied as GLES3.0 emulation, except that the maximum cubemap size is set to 4096.

OpenGL ES 2.0

  • In addition to features turned off by GLES3.0 emulation, this also turns off support for draw call instancing, Texture arrays, 3D Textures and multiple render targets. Enforces a maximum of 8 Textures used in a single Shader. Maximum allowed cubemap size is set to 1024.

Origin: Graphics hardware capabilities and emulation
https://docs.unity3d.com/560/Documentation/Manual/GraphicsEmulation.html

Max Texture Size

How to check the hardware limitation on the texture sizes:

int[] max = new int[1];
//put the maximum texture size in the array.
gl.glGetIntegerv(GL10.GL_MAX_TEXTURE_SIZE, max, 0);

Origin: Limitation on texture size? Android Open GL ES 2.0
https://stackoverflow.com/a/8573543/1645289


The advantage of a bad memory is that one enjoys several times the same good things for the first time. ― Friedrich Nietzsche