PantheonSim / GPUs / NVIDIA GeForce RTX 3060

Simulated NVIDIA GeForce RTX 3060: a GPU profile for CUDA and ROCm testing

PantheonSim, the GPU simulator for CUDA and ROCm, simulates the NVIDIA GeForce RTX 3060 (Ampere, 8.6) as the profile nvidia/rtx3060. A 12 GB Ampere GeForce card. It is the card the simulator's CUDA behaviour was developed against: its device attributes, CUPTI traces and other probes were checked against a physical RTX 3060. Its profile is verified, which means it was read from a physical card.

The profile at a glance

These are the numbers a program can ask this simulated GPU, and the values nvidia-smi show for it. They come from the profile file in the simulator's repository, pinned to one commit of it.

PropertyValue
Profile idnvidia/rtx3060
Vendor and architectureNVIDIA, Ampere
Compute capability8.6
Device memory12.0 GiB, GDDR
Streaming multiprocessors28
Warp size32
Max threads per multiprocessor1536
Shared memory per block (opt-in maximum)99 KiB
L2 cache2.3 MiB
Memory bus width192-bit
Power limit (profile)190 W
Maximum clocks (profile)2145 MHz shader, 7501 MHz memory
ECC memoryno
PCIe link reportedGen4 x16
Tensor or matrix coresyes
Verified (measured on a physical card)yes

What this GPU is for

A 12 GB Ampere GeForce card. It is the card the simulator's CUDA behaviour was developed against: its device attributes, CUPTI traces and other probes were checked against a physical RTX 3060.

Ampere covers two compute capabilities in these profiles: 8.0 for the GA100 data-center parts and 8.6 for the GA10x parts. The simulator runs the SASS a binary carries for the architecture and falls back to PTX when it carries none.

Among the 37 NVIDIA profiles it ranks 34th by device memory (12.0 GiB) and 36th by SMs (28), counting the largest as first.

Is this profile verified?

Yes. This profile is marked verified, which means its values were read from a physical NVIDIA GeForce RTX 3060 by the simulator's characterization tools, not copied from a data sheet. Verified describes the profile's numbers: it says nothing about speed, because the simulator has no timing model.

Simulate this GPU

Build the simulator (see the docs) or open the playground, then:

nvcc -cudart shared -arch=compute_86 my_app.cu -o my_app
vgpu run --gpu nvidia/rtx3060 ./my_app
vgpu shell -y --gpu nvidia/rtx3060 --count 4
vgpu info --gpu nvidia/rtx3060

This profile is compute capability 8.6. A kernel built for compute_75 runs on it and on every other NVIDIA profile; a kernel built for a newer architecture is refused by a profile that is older than it. Link the CUDA runtime shared (-cudart shared) so the simulator can stand in for it.

To use it every time, put gpu: nvidia/rtx3060 in a pantheonsim.yaml settings file, or in a GitHub Actions job give the PantheonSim action gpu: nvidia/rtx3060 (see CUDA and HIP tests in GitHub Actions). The simulator checks behaviour and has no timing model, so a run on a physical GPU before a release still counts. The CUDA guide explains the rest.

Where the numbers come from

Each profile file begins with a note on its sources. This is the note for NVIDIA GeForce RTX 3060, as written in the file:

Source note for nvidia/rtx3060

Generated by nvidia/tools/characterize.cu from a physical device. Every value below was read from the hardware, not a datasheet.

The GPU index lists every profile, and this one is measured on a physical card.

Other Ampere profiles: