제 설정에 맞춰 최적화한 결과는 다음과 같습니다:
최적화 벤치마크 결과는 TG T/S(Token Generation Tokens Per Second)가 22.7에서 21.3으로, PP T/S(Prompt Processing Tokens Per Second)가 1105에서 927로 나타났습니다. 테스트 범위는 Prompt Processing(프롬프트 처리) 8192 토큰에서 65536 토큰까지이며, unified KV 없음, memory map 없음, n-cpu-moe 37 설정의 MoE(Mixture of Experts)로 설정되었습니다.
제 설정:
X870 AORUS ELITE WIFI7 AMD Ryzen 9 9900X3D (24) @ 4.40 GHz NVIDIA GeForce RTX 5090 [Discrete] DDR5 RAM: 18.80 GiB / 125.39 GiB (15%) OS: Bazzite(bazzite-dx-nvidia-gnome:testing)
이것은 다음 포크(fork)를 사용하여 가능했습니다: https://github.com/fairydreaming/llama.cpp/tree/dsv4
빌드 스크립트:
cmake -B build \ -DGGML_CUDA=ON \ -DCMAKE_CUDA_ARCHITECTURES="120" \ -DGGML_CCACHE=OFF -DGGML_NATIVE=ON \ -DCMAKE_BUILD_TYPE=Release \ -DLLAMA_OPENSSL=ON cmake --build build --config Release -j$(nproc)
벤치마크 명령:
lama-batched-bench -hf tarruda/DeepSeek-V4-Flash-GGUF:Q2_K -b 8192 -ub 8192 -npl 1 -npp 8192,16384,32768,65536 -ntg 128 -fa 1 --no-repack -no-kvu --ctx-size 70000 --no-mmap --n-cpu-moe 37
일상 사용 명령:
lama-server -hf tarruda/DeepSeek-V4-Flash-GGUF:Q2_K -fa 1 --ctx-size 1048576 -ub 512 -b 512 -np 1 -no-kvu --host 0.0.0.0 --port 8099 -t 12 --temp 1 --top-p 1.00 --metrics --perf
네, 100만 컨텍스트(context)가 ub 512로 들어갑니다. 심지어 활용할 수 있는 VRAM이 아주 조금 남아 있습니다. OS 자원을 정말 타이트하게 관리한다면 --n-cpu-moe 37 또는 36까지도 설정할 수 있습니다.
Q2_K 모델을 제공해주고 이것을 실행하기 위한 모든 수정 사항을 파헤치는 데 도움을 준 u/tarruda에게 감사드립니다!
locallama 커뮤니티의 모든 분이 멋지다는 것을 알려주기 위해 llama-cpp webui 프롬프팅을 해보았는데, DeepSeek flash가 145 토큰과 21.14 t/s를 사용하여 응답했습니다.
submitted by /u/H_DANILO
[link] [comments]