JuliaGPU/CUDA.jl

Consider maximizing grid utilization

Open

#1.321 aberto em 13 de jan. de 2022

Ver no GitHub
 (1 comment) (0 reactions) (0 assignees)Julia (274 forks)batch import
good first issueperformance

Métricas do repositório

Stars
 (1.408 stars)
Métricas de merge de PR
 (Mesclagem média 5d 5h) (16 fundiu PRs em 30d)

Description

We currently maximize block utilization (taking the max threads), which may leave SMs underutilized. We should consider first selecting an optimal amount of blocks, before maximizing the thread could:

    config = launch_configuration(kernel.fun)
    threads = min(length(ps), config.threads)
    # XXX: this kernel performs much better with all blocks active
    blocks = max(cld(length(ps), threads), config.blocks)
    threads = cld(length(ps), blocks)

I'm sure this will lead to some kernels performing worse, though, but it's probably a good thing to test.

Guia do colaborador