Sobes.tech
Senior

GPUда LLMнин инференсин профилирлөө (nsight, torch profiler)?

sobes.tech AI

AIден жооп

GPU үстүндө чоң тил моделдеринин (LLM) inference профилин түзүү үчүн көбүнчө NVIDIA Nsight Systems жана PyTorch Profiler сыяктуу инструменттер колдонулат.

NVIDIA Nsight Systems GPU жүктөмү, ядро иштөө убактысы, эс тутум колдонуу жана CPU-GPU өз ара аракеттенүүсү тууралуу кеңири маалымат берет. LLM inference профилин түзүү үчүн:

  1. Nsightке оролгон буйрук менен inference баштаңыз, мисалы:
nsys profile --trace=cuda,nvtx python inference_script.py
  1. Жыйналган маалыматтарды Nsight Systems GUIсында анализдеңиз, көңүл буруңуз:
    • CUDA ядролорунун иштөө убактысы
    • Чалуу аралыгындагы кечигүүлөр
    • GPU эс тутумунун колдонулушу

PyTorch Profiler моделдин ичинде операцияларды деталдуу профилирлөөгө мүмкүндүк берет:

import torch
from torch.profiler import profile, record_function, ProfilerActivity

def inference(model, input):
    with profile(activities=[ProfilerActivity.CPU, ProfilerActivity.CUDA], record_shapes=True) as prof:
        with record_function("model_inference"):
            output = model(input)
    print(prof.key_averages().table(sort_by="cuda_time_total"))
    return output

Бул эсептөөлөрдөгү тыгындарды аныктоого жардам берет, мисалы, жай операциялар же эс тутумду натыйжалуу колдонбошу.

Жыйынтыктап айтканда, системалык профилирлөөнү (Nsight) жана фреймворк деңгээлиндеги профилирлөөнү (PyTorch Profiler) бириктирүү менен GPUда LLM inferenceнин иштөө көрсөткүчтөрүнүн толук сүрөтүн алууга жана тыгындарды оптималдаштырууга болот.