JuliaGPU/CUDA.jl

Consider maximizing grid utilization

Open

#1321 aperta il 13 gen 2022

Vedi su GitHub
 (1 commento) (0 reazioni) (0 assegnatari)Julia (274 fork)batch import
good first issueperformance

Metriche repository

Star
 (1408 star)
Metriche merge PR
 (Merge medio 5g 5h) (16 PR mergiate in 30 g)

Descrizione

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.

Guida contributor