Skip to content
KernelIndex
Search⌘K

submission 554642

idanbeck · python · License unknown

Use it

Vendorable · source mirrored · license unknownView source →

No package. Vendor the mirrored source: 21 lines, June 9 Researcher Reciprocity License v1.0.

popcorn_conv2d_v2_probe_channels_last.py
curl "https://kernelindex.com/api/v1/implementations/kernelbot-conv2d-v2-554642?include=source"
interfacepython
Compatibility
measured onNVIDIA A100
declared hardwareNVIDIA A100
architecturessm_80
dtypesfp32

Benchmark evidence

1 measurement across 1 GPU, fastest first.

Operation / workload
Hardware
Latency
Rank
Observed
2D convolutionsuite of 5 cases
NVIDIA A100
2.56s
#35 of 40
2026-03-14

Reported · How evidence levels are derived →

Source and license

sourceavailable
revision digestsha256:9b97290fc916c2697b2b694b408d5523555aa349f90225865dd449445fd0cf79
license declaredunknown
license concludedunknown
authorsidanbeck
imported2026-08-15

Kernel source

popcorn_conv2d_v2_probe_channels_last.py21 lines
#!POPCORN leaderboard conv2d_v2
#!POPCORN gpu A100
from task import input_t, output_t
import torch
import torch.nn.functional as F

@torch.inference_mode()
def custom_kernel(data: input_t) -> output_t:
    x, w, out = data
    torch.use_deterministic_algorithms(True)
    torch.set_float32_matmul_precision('highest')
    torch.backends.cudnn.benchmark = False
    torch.backends.cudnn.deterministic = True
    torch.backends.cuda.matmul.allow_tf32 = False
    torch.backends.cudnn.allow_tf32 = False
    x_cl = x.contiguous(memory_format=torch.channels_last)
    w_cl = w.contiguous(memory_format=torch.channels_last)
    y = F.conv2d(x_cl, w_cl, stride=1, padding=0)
    out[...] = y.contiguous()
    return out

Source code from GPU Mode and the KernelBot dataset · June 9 Researcher Reciprocity License v1.0

Changes from previous submission

Against this author's previous submission submission 554193.

⋯ 5 unchanged lines
@torch.inference_mode()
def custom_kernel(data: input_t) -> output_t:
- input_tensor, kernel, output = data
+ x, w, out = data
torch.use_deterministic_algorithms(True)
- torch.set_float32_matmul_precision("highest")
+ torch.set_float32_matmul_precision('highest')
torch.backends.cudnn.benchmark = False
torch.backends.cudnn.deterministic = True
torch.backends.cuda.matmul.allow_tf32 = False
torch.backends.cudnn.allow_tf32 = False
- output[...] = F.conv2d(input_tensor, kernel, stride=1, padding=0)
- return output
+ x_cl = x.contiguous(memory_format=torch.channels_last)
+ w_cl = w.contiguous(memory_format=torch.channels_last)
+ y = F.conv2d(x_cl, w_cl, stride=1, padding=0)
+ out[...] = y.contiguous()
+ return out

Best evidence level for this revision: reported

JSON