Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 25 additions & 0 deletions schedule/ir.py
Original file line number Diff line number Diff line change
Expand Up @@ -489,6 +489,31 @@ def measured_bandwidth_bound_us(self, weight_bytes: int) -> float:
max_regs_per_thread=255, l2_bytes=50 * 1024 * 1024, hbm_bytes=192 * 1024**3,
hbm_bandwidth_gbs=8000.0, fp16_tflops=2250.0, clock_ghz=1.86,
supports_cooperative=True, wddm_tdr=False, note="Datacenter Blackwell, HBM3e. Spec only."),
"h20": GpuTarget(
name="h20",
sm_arch=90,
num_sms=78,
smem_bytes_per_sm=233472,
smem_bytes_per_block_optin=232448,
regs_per_sm=65536,
max_threads_per_sm=2048,
max_regs_per_thread=255,
l2_bytes=60 * 1024 * 1024,
hbm_bytes=96 * 1024**3,
hbm_bandwidth_gbs=4000.0,
fp16_tflops=148.0,
clock_ghz=0.0,
supports_cooperative=True,
wddm_tdr=False,
measured_bw_gbs=3712.3,
note=(
"NVIDIA H20, Hopper sm_90, 96GB HBM3. "
"78 SMs, 60 MiB L2, and SMEM limits observed on real H20 silicon. "
"Spec HBM bandwidth/FP16 throughput are retained as target parameters; "
"measured_bw_gbs=3712.3 from eval/peak_bandwidth.py "
"(median of three independent peak_gbs runs)."
),
),
"h100": GpuTarget(
name="h100", sm_arch=90, num_sms=132, smem_bytes_per_sm=233472,
smem_bytes_per_block_optin=232448, regs_per_sm=65536, max_threads_per_sm=2048,
Expand Down
25 changes: 25 additions & 0 deletions tests/test_h20_target.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
from schedule.ir import TARGETS


def test_h20_target_profile():
target = TARGETS["h20"]

assert target.name == "h20"
assert target.sm_arch == 90
assert target.num_sms == 78

assert target.smem_bytes_per_sm == 233472
assert target.smem_bytes_per_block_optin == 232448

assert target.regs_per_sm == 65536
assert target.max_threads_per_sm == 2048
assert target.max_regs_per_thread == 255

assert target.l2_bytes == 60 * 1024 * 1024
assert target.hbm_bytes == 96 * 1024**3

assert target.hbm_bandwidth_gbs == 4000.0
assert target.measured_bw_gbs == 3712.3

assert target.supports_cooperative is True
assert target.wddm_tdr is False