GPU-нодтар және ML-есептеулер
Қысқаша түйіндеме
GPU-дағы табысты ML-стек - бұл темір, софт, жоспарлау, деректер және бақылау бойынша шешімдердің жиынтығы. Кластер бірдей жақсы білуі тиіс:1. үлгілерді үйрету (жоғары кәдеге жарату, жылдам чек ойындары, үзілуге төзімділік),
2. инференске қызмет көрсету (жоғары конверсия кезінде төмен p95-латенттілік),
3. болжамды ақша құнын (FinOps, квоталар, мульти-тенанттық),
4. қауіпсіз болуы тиіс (оқшаулау, supply chain, таразыларды/датасеттерді бақылау).
Темір және топологиялар
ГПУ және жады
HBM-көлемі мен жолағы LLM/RecSys үшін «шикі TFLOPS» -тен маңызды.
Көптеген ұсақ сұраулар үшін - кіріктірілген жадының басымдығы (KV-cache) және жоғары clocks/power limit.
Байланыс
NVLink/NVSwitch - жылдам all-reduce үшін тораптың ішінде.
InfiniBand/RoCE - DDP/FSDP үшін торапаралық алмасу (≥ 100-200 Gb/s).
PCIe-ағаш: NIC және GPU бір NUMA түйінінде отыруға тырысыңыз; «ыстық» PCIe-switch bottleneck болдырмаңыз.
BIOS/тораптың базалық тюнингі
Performance режимдері, C-states өшіру (немесе жоғарылатылған минималды), NUMA awareness, ASPM off критикалық PCIe.
Қуат: тұрақты профильдер, агрессивті емес power-save - әйтпесе p99 «дірілдейді».
Базалық софт-стек
Сыйысымдылық матрицасы бойынша келісілген NVIDIA + CUDA + cuDNN/TensorRT драйверлері.
Контейнерлердің ішіндегі GPU үшін NVIDIA Container Toolkit.
NCCL (ұжымдар), UCX (көлік), Apex/xFormers/Flash-Attention - жылдамдық үшін.
Қосымша GDS (GPUDirect Storage) жылдам NVMe/IB - деректер ағынын жылдамдатады.
GPU үшін Kubernetes
Негізгі компоненттер
NVIDIA GPU Operator (драйверлер, DCGM, device-plugin).
NVIDIA Device Plugin - nvidia ресурстарын экспорттау. com/gpu`.
MIG (A100/H100) - бір физикалық GPU-ны оқшауланған профильдерге бөлу (мысалы, '1g. 10gb`).
Time-slicing - инференстің ұсақ міндеттері үшін GPU-ны уақыт бойынша логикалық бөлшектеу.
Node Feature Discovery - GPU/топология түрлері бойынша белгілер.
Жоспарлау және оқшаулау
Taints/Tolerations/NodeSelectors тренингті/инференсті/эксперименттерді бөлуге арналған.
NUMA теңестіру үшін Topology Manager және CPU Manager (static).
Volcano/Slurm on K8s/Ray - үлкен джобтарға арналған кезектер, басымдықтар, preemption.
yaml resources:
limits:
nvidia. com/gpu: 1 # or MIG profile: nvidia. com/mig-1g. 10gb: 1 requests:
nvidia. com/gpu: 1
Таңдалған жаттығу пулына арналған taint/affinity үлгісі:
yaml tolerations:
- key: "gpu-train"
operator: "Exists"
effect: "NoSchedule"
nodeSelector:
gpu. pool: "train"
Оқыту: ауқымы және тұрақтылығы
Параллелизм
DDP - стандартты дата-параллелизм.
FSDP/ZeRO - параметрлерді/бұршақтарды/оптимайзерлерді шардалау, жадты азайтады.
Tensor/Pipeline Parallel - өте ірі LLM үшін; NVLink/IB талап етеді.
Gradient Accumulation - жады шыңының өсуінсіз тиімді batch ұлғайтады.
Аралас дәлдік және жады оңтайландыру
AMP (bf16/fp16) + loss scaling; Н100/жаңалары үшін - мүмкін болған жерде FP8.
Activation/Gradient Checkpointing, Flash-Attention.
Инференске дайындалу үшін Paged/Chunked KV-cache.
Чекпойнттар және істен шығуға төзімділік
Жылдам NVMe/ретеншн объектісіне жиі инкрементальды чекпойнттар.
Идемпотенттік джобтар (қайталанатын ран-сәйкестендіргіштер).
Spot-тұрақтылығы: SIGTERM ұстап, тез state ағызу; жоспарлаушы джобаны кезекке қайтарады.
Маңызды NCCL/желі айнымалылары (мысал)
bash
NCCL_IB_HCA=mlx5_0
NCCL_SOCKET_IFNAME=eth1
NCCL_P2P_LEVEL=NVL
NCCL_MIN_NRINGS=8
NCCL_NET_GDR_LEVEL=SYS
Инференс: төмен жасырындылық, жоғары қайтарымдылық
Сервинг-фреймворк
Triton Inference Server - TensorRT/ONNX/TS/PyTorch үшін бірыңғай сервер.
vLLM/TGI/TensorRT-LLM - LLM-мамандар (paged-attention, тиімді KV-cache, continuous batching).
Жеделдету тәсілдері
Quantization: INT8/FP8/квант. -aware (AWQ, GPTQ) - VRAM азаюы, TPS өсуі.
Batching/Continuous batching: p95 өсімінсіз сұраулар бумасына қызмет көрсету.
KV-cache pinning HBM, мәтінмәндерді кішірейту; speculative decoding (draft-моделі).
GPU concurrency: MIG/time-slice кезінде бірнеше ағындар/үлгілер.
Мақсат профильдері (SLO мысалы)
p95 префикс/токенге 300 мс ≤ чат моделінің жауабының латенттілігі;
Throughput ≥ мақсатты профильде 200 ток/с/GPU;
p99 қалдықтарын шедулингпен бақылаймыз (QoS кластары мен контекстер лимиттері).
Triton deployment (үзік)
yaml env:
- name: CUDA_VISIBLE_DEVICES value: "0"
- name: TRITONSERVER_MODEL_CONTROL value: "explicit"
args: ["--backend-config=tensorrt,output_memory_pool_size=1024"]
Деректер мен пайплайндар
Пішімдер: Parquet/Arrow, webdataset (tar-шарды) ағындық оқу үшін.
Prefetch/Async I/O: DataLoader-ы с pin-memory, prefetch-pipelines, GDS.
Онлайн-фич (антифрод/ұсынымдар) үшін Feature Store.
DVC/LakeFS/MLflow Model Registry; датасеттерді, кодты және гиперпараметрлерді белгілеңіз.
Бақылау және SLO
DCGM/Prometheus метрикасы (минимум)
`dcgm_sm_util`, `dcgm_fb_used`, `dcgm_power_usage`, `dcgm_pcie_rx/tx`, `dcgm_dram_bw`
Температура/жиілік және ECC errors (өсуге қауіп).
Achieved Occupancy және stall reasons (ядроның тар қабаты).
Сервистік метриктер
Генеративті модельдер: токендер/сек, p50/p95/p99, queue depth, жады бойынша істен шығу.
Тренинг: қадамдар/сек, дәуір уақыты, тиімділігі all-reduce,% уақыт I/O.
SLO панелі: p95 комплаенс, «қателер бюджеті» (≥ 99. 5% «табысты» инференсі).
Алертинг (идеялар)
`fb_used / fb_total > 0. 95` 5 мин → throttle/scale-out.
Сол кәдеге жарату кезінде TPS-тің N% -ға құлдырауы - модельдің/кодтың тозуы.
ЕСС/температураның өсуі → темір көші-қоны/инцидент.
Қауіпсіздік және оқшаулау
Мульти-тенанттық: MIG-профильдер немесе «per-team», namespaces/quotas.
IOMMU/PSP, cgroups, артықшылықты контейнерлерге тыйым салу, 'CAP _' шектеу.
MPS (multi-process service) - ұқыпты: кәдеге жарату жоғары, бірақ бөліну MIG-ге қарағанда әлсіз.
Supply chain: контейнерлердің қолтаңбалары (cosign), артефактілерді тексеру, үлгілерді түсіруді бақылау.
Деректер/салмақтар: дискідегі шифрлау, кіруді бақылау (ABAC/RBAC), «су белгілері »/модельдер хэш-тізілімдері.
FinOps: құны, квота, автоскейл
Тораптардың пулдары: 'train' (on-demand/резервтер), 'infer' (on-demand + spot микс), 'exp' (spot-heavy).
Орнықтылық: жиі тексерілетін орындар, жылдам қайта іске қосылатын логика, басымдықтары бар Volcano кезектері.
Тұрақты базаға арналған/RI/Savings Plans резервтері; бос тораптарды автоматты өшіру.
Right-sizing модельдері: кванталау/LoRA-адаптерлер орнына «толық» модель; SLA үшін MIG профильдерін таңдау.
Бюджеттер контуры: GPU-сағат per-team квоталары, «1k сұрау салулар/токендер үшін құны».
YAML үлгілері мен артефактілері
1) MIG профилі (тұжырымдамалық)
yaml apiVersion: nvidia. com/v1 kind: MigStrategy metadata: { name: mig-a100-1g10gb }
spec:
deviceFilter: "a100"
mode: single resources:
- profile: "1g. 10gb"
count: 7
2) Volcano тренинг үшін кезек
yaml apiVersion: scheduling. volcano. sh/v1beta1 kind: Queue metadata: { name: train-q }
spec:
weight: 100 reclaimable: true capability:
resources:
- name: nvidia. com/gpu quantity: 64
3) Автоскейл инференс үшін KEDA кезек тереңдігі бойынша
yaml apiVersion: keda. sh/v1alpha1 kind: ScaledObject metadata: { name: llm-infer }
spec:
scaleTargetRef: { name: llm-deploy }
pollingInterval: 5 minReplicaCount: 2 maxReplicaCount: 80 triggers:
- type: rabbitmq metadata:
queueName: infer-queue mode: QueueLength value: "200"
GPU кластерін іске қосу
- NVLink/IB топология картасы; NIC/GPU бір NUMA-да.
- Драйверлер/CUDA келісілген, Operator/Device-plugin орнатылған.
- MIG/time-slicing бейіндері мен неймспейстерге арналған квоталар.
- DDP/FSDP pipeline стейджингте өңделген; чек ойындары жылдам.
- Triton/vLLM с continuous batching; p95 және TPS мақсаттары берілген.
- DCGM/Prometheus/Grafana + ECC/температура/жады/TPS.
- Қауіпсіздік саясаты (PSP, cosign, өлшеу/бақылау).
- FinOps: пулы spot/ri, есеп «$/1k токендер», авто-шутдаун idle.
Типтік қателер
Тренинг пен инференсі taints → бір-бірін GPU/IO-сыз араластырады.
Чекпойнттар мен preemption-логика жоқ → spot бойынша прогресті жоғалту.
DCGM-метриктің жоқтығы → «соқыр» кәдеге жарату және қызып кету.
NUMA/PCIe топологиясының инноры → NCCL төмен жолағы.
MIG/time-slice → p99 және «Out of Memory» дұрыс емес профильдері.
TPS/жасырын орнына CPU бойынша HPA → кеш скейл.
iGaming/финтех ерекшелігі
Антифрод/скоринг: сындарлы жолдарда SLA инференса ≤ 50 мс p95 (төлемдер/қорытындылар); «fallback» жеңіл моделін ұстаңыз.
Ұсыныстар/дербестендіру: on-policy/off-policy түнде оқыту, online-features - төмен жасырын.
Чат көмекшілері/RAG: мазмұн кэші, сұрауларды дедеупликациялау, guardrails; векторлық іздеу индекстерін шардалау.
Пиктер (матчтар/турнирлер): алдын ала қыздыру модельдері/kv-cache, ұлғайту minReplicas, QoS-сыныптар үшін VIP.
Жиынтығы
GPU-есептеу стегі темір (HBM/NVLink/IB), софталық матрица (CUDA/NCCL), жоспарлау (MIG, кезек, taints), деректер (жылдам пайплайн/GDS), бақылау (DCGM/SLO) және құн (FinOps/квоталар) келісіліп жұмыс істейді. Мұны IaC және кластерлік саясатта бекітіңіз - сіз болжамды оқу жылдамдығын, p95-жасырындылығы төмен тұрақты инференсін және GPU-сағаттың мөлдір экономикасын аласыз.