Toolverse
Wszystkie skille

benchmark-kernel

autor: flashinfer-ai

Precyzyjne pomiary wydajności jąder GPU FlashInfer z profilowaniem sprzętowym CUPTI

Instalacja

Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.

Instalacja

Szybkie info

Kategoria
Backend

O skillu

Skill do benchmarkowania jąder FlashInfer z dokładnym pomiarem czasu wykonania na GPU. Obsługuje dwie metody timingu: CUPTI (sprzętowe profilowanie dla najwyższej precyzji) oraz CUDA Events (rezerwowe). Pozwala porównać wydajność różnych backendów (FlashAttention2/3, cuDNN, CUTLASS, TensorRT-LLM) i zapisać wyniki do CSV. Automatycznie wybiera CUPTI jeśli jest dostępny, w przeciwnym razie przechodzi na CUDA Events. Wymaga CUDA 13+ dla pełnej funkcjonalności.

Jak używać

  1. Zainstaluj CUPTI dla najdokładniejszych pomiarów: uruchom pip install -U cupti-python. Wymaga CUDA 13 lub nowszej. Jeśli CUPTI nie jest dostępny, skill automatycznie przejdzie na CUDA Events i wyświetli ostrzeżenie.
  2. Wybierz rutynę testową z dostępnych opcji: Attention (BatchDecodeWithPagedKVCacheWrapper, BatchPrefillWithPagedKVCacheWrapper, BatchPrefillWithRaggedKVCacheWrapper, BatchMLAPagedAttentionWrapper), GEMM (bmm_fp8, gemm_fp8_nt_groupwise, group_gemm_fp8_nt_groupwise, mm_fp4) lub MOE (trtllm_fp4_block_scale_moe, trtllm_fp8_block_scale_moe, trtllm_fp8_per_tensor_scale_moe, cutlass_fused_moe).
  3. Uruchom benchmark dla wybranej rutyny za pomocą skryptu flashinfer_benchmark.py z parametrami określającymi typ testu i konfigurację.
  4. Skill zmierzy czysty czas wykonania jądra GPU bez narzutu komunikacji host-device (CUPTI) lub z minimalnym narzutem (CUDA Events).
  5. Wyniki będą zapisane w formacie CSV do analizy i porównania wydajności między różnymi backendami.

Podobne skille