로컬 추론 요청을 시작할 때 GPU 전력이 급증하는 이유는 무엇인가요?

에바 왕 는 기술 작가 그리고 이자 ZimaSpace의 상주 장인입니다. 평생을 기술에 열정을 가진 사람으로서 홈랩과 오픈소스 소프트웨어에 열정을 가지고 있으며,복잡한 기술 개념을 쉽게 이해할 수 있는 실습 가이드로 번역하는 데 전문성을 가지고 있습니다.에바는 셀프 호스팅이 어렵지 않고 재미있어야 한다고 믿습니다. 그녀의 튜토리얼을 통해 커뮤니티가 하드웨어 설정의 신비를 풀도록돕고 있습니다. 첫 NAS 구축부터 Docker 컨테이너 마스터링까지.

GPU 전력은 요청이 시작될 때 클록 상승과 토큰 단위 디코딩보다 한 번에 더 많은 연산을 활성화하는 고도로 병렬화된 프롬프트 프리필 때문에 급증하는 경우가 많습니다.

홈 서버는 조용히 유휴 상태로 있다가 짧은 시간 동안 GPU 전력 제한에 가까워질 수 있으며, 모델이 토큰을 스트리밍하는 동안 다시 안정됩니다. 이 전환에는 디바이스 전력 상태 변화, 메모리 할당, 커널 초기화, 프롬프트 전체에 대한 프리필이 함께 작용합니다. 모델 크기, 프롬프트 길이, 배치 크기, 클록 정책, 양자화, 측정 간격 및 기타 가속기 작업 부하가 관찰되는 스파이크의 높이와 지속 시간을 결정합니다.

작업이 도착하면 GPU가 유휴 상태를 벗어납니다

최신 GPU는 사용량이 적을 때 클록과 전압을 낮췄다가 커널과 메모리 트래픽이 발생하면 이를 높입니다. 첫 요청에서는 디바이스 컨텍스트를 생성하고, 라이브러리를 초기화하고, 버퍼를 할당하고, 커널을 로드해야 할 수도 있어 일회성 작업이 시작 시점에 집중됩니다.

요청 시작 시 전력 스파이크는 LLM 작업 부하의 전력 관리 기회를 특성화하고 추론 요청 시작 시 발생하는 전력 스파이크를 보고합니다. 이 연구는 이러한 스파이크를 연산 집약적인 프리필 단계와 연결하고 GPU 주파수가 지연 시간과 전력에 미치는 영향을 분석합니다.

모니터링 샘플은 스파이크의 형태를 과장하거나 숨길 수 있습니다. 1초 평균은 클록 상승, 프리필 및 초기 디코딩을 하나의 지점으로 합칠 수 있으며, 느린 스마트 플러그는 GPU 이벤트를 완전히 놓치거나 지연된 전체 시스템 응답만 보고할 수 있습니다.

프리필은 디코드와 다른 방식으로 병렬 연산을 사용합니다

프리필은 프롬프트 토큰을 함께 처리해 KV 캐시를 생성하며, 많은 GPU 코어를 점유할 수 있는 행렬 곱셈을 발생시킵니다. 디코드는 시퀀스마다 한 번에 하나의 토큰을 진행하며, 특히 배치 크기가 1일 때 메모리 이동과 순차적 의존성에 더 크게 제약되는 경우가 많습니다.

단계 정렬 전력 측정은 각 요청의 프리필 및 디코드 단계에 맞춰 GPU, 노드 및 시스템 전력 샘플을 정렬합니다. 이 단계 인식 방식은 단일 에너지 총량만으로는 최대 전력이 언제 발생했는지 또는 어떤 프롬프트와 서빙 변수가 이를 유발했는지 설명할 수 없는 이유를 보여줍니다.

프롬프트가 길어지거나 배치가 커지면 높은 사용률 구간이 길어질 수 있으며, 양자화와 융합 커널은 연산량과 메모리 요구량을 모두 바꿉니다. 최대 와트, 평균 와트 및 완료된 토큰당 줄은 서로 다른 질문에 답하므로 서로 대신 사용해서는 안 됩니다.

전력 제한은 작업을 없애기보다 스파이크의 형태를 바꿉니다

전력 또는 주파수 제한을 낮추면 순간 최대 전력은 줄어들 수 있지만 프리필에 더 오래 걸릴 수 있습니다. 총 에너지는 선택한 작동 지점의 효율과 느려진 요청이 대기 중인 다른 작업을 지연시키는지에 따라 감소하거나 비슷하게 유지되거나 증가할 수 있습니다.

단계 인식 주파수 제어는 지연 시간 목표를 보호하면서 프리필과 디코드의 주파수를 পৃথ도로 제어합니다. 보고된 에너지 절감 결과는 단계 인식 제어가 하나의 고정 정책보다 뛰어날 수 있음을 보여주지만, 결과는 작업 부하 유형과 서비스 수준 제약 조건에 따라 달라집니다.

실패의 경계는 짧은 GPU 스파이크를 위험한 벽면 전력과 동일시하는 데 있습니다. PSU는 CPU, 드라이브, 팬 및 변환 손실을 포함한 전체 시스템을 처리하는 반면, 소프트웨어 센서는 각자의 주기로 칩 전력을 보고합니다. 전기 안전 판단에는 벽면 수준의 측정과 과도 상태 여유가 필요합니다.

-15% OFF

전력 샘플을 추론 단계에 맞춰 정렬하세요

입력 토큰 32개, 512개, 2K개 및 8K개로 고정된 프롬프트를 사용하고 출력 길이를 일정하게 유지한 다음, 두 가지 배치 크기에서 반복하세요. GPU 전력, 클록, 사용률, 온도, 호스트 벽면 전력, 요청 도착, 모델 준비 완료, 프리필 시작 및 종료, 첫 토큰, 디코드 완료를 기록하세요.

홈 서버 시작 전력의 단계 구분을 사용해 최대 와트, 프리필 줄, 디코드 줄, 토큰당 줄, TTFT 및 p95 토큰 간 지연 시간을 계산하세요. 전력 제한을 적용한 상태에서 한 번, 긴 유휴 간격 후에 한 번 반복하세요.

벽면 전력 여유, 온도 및 지연 시간을 모두 충족하는 경우에만 전력 정책을 유지하세요. 최대 전력을 낮추는 대신 프리필이 충분히 길어져 에너지나 대기열 지연이 증가한다면, 더 매끄러워진 그래프를 효율 향상이 아닌 외관상의 개선으로 간주하세요.

기술 및 AI 허브

더 읽어보기

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.