SGLang ನ RadixAttention, dual-RTX 3090 ವ್ಯವಸ್ಥೆಯಲ್ಲಿ warm-up time-to-first-token ಅನ್ನು 68 ms ಗೆ ಇಳಿಸಿದೆ, ಆದರೆ vLLM ನ PagedAttention 184 ms ನಲ್ಲಿ ಉಳಿದಿದೆ—ಇದು 82.9 % ವಿಳಂಬದ (latency) ಅಂತರವಾಗಿದ್ದು, ಇದು ಮಲ್ಟಿ-ಟರ್ನ್ ಏಜೆಂಟ್ ಸಂವಹನಗಳನ್ನು (multi-turn agent interactions) ಗಮನಾರ್ಹವಾಗಿ ಸುಗಮಗೊಳಿಸುತ್ತದೆ.
ಎರಡೂ ಯೋಜನೆಗಳು ಲಾರ್ಜ್ ಲ್ಯಾಂಗ್ವೇಜ್ ಮಾಡೆಲ್ (LLM) ಇನ್ಫರೆನ್ಸ್ (inference) ವೇಗಗೊಳಿಸಲು ಪ್ರಯತ್ನಿಸುತ್ತವೆ, ಆದರೆ ಈ ಬೆಂಚ್ಮಾರ್ಕ್ ಸ್ವಾಯತ್ತ ಸಹಾಯಕರಿಗೆ (autonomous assistants) ಶಕ್ತಿ ನೀಡುವ ಕೆಲಸದ ಹೊರೆಯನ್ನು (workloads) ಗುರಿಯಾಗಿಸಿಕೊಂಡಿದೆ: ದೀರ್ಘವಾದ ಸಿಸ್ಟಮ್ ಪ್ರಾಂಪ್ಟ್ಗಳು, ಟೂಲ್-ಕಲಿಂಗ್ ಸ್ಕೀಮಾಗಳು ಮತ್ತು ಬಳಕೆದಾರ-ಸಹಾಯಕ ಸಂಭಾಷಣೆಯ ಇತಿಹಾಸ. ಆ ಪುನರಾವರ್ತಿತ ಟೋಕನ್ಗಳು GPU ಮೆಮೊರಿಯಲ್ಲಿರುತ್ತವೆ; ಒಂದು ವೇಳೆ ಕ್ಯಾಶ್ ಅನ್ನು ಪರಿಣಾಮಕಾರಿಯಾಗಿ ನಿರ್ವಹಿಸದಿದ್ದರೆ, ಅವು ಸಂಭಾಷಣೆಯನ್ನು ಕುಂಠಿತಗೊಳಿಸುವ ಕಂಪ್ಯೂಟ್ ಬಾಟಲ್ನೆಕ್ (compute bottleneck) ಆಗುತ್ತವೆ.
ಫಲಿತಾಂಶವನ್ನು ಬದಲಿಸಿದ ವರ್ಕ್ಲೋಡ್
ಸಾಂಪ್ರದಾಯಿಕ LLM ಸರ್ವರ್ಗಳು ಕೇವಲ ಒಂದು ವಿನಿಮಯಕ್ಕಾಗಿ—ಬಳಕೆದಾರರ ಪ್ರಾಂಪ್ಟ್, ಮಾಡೆಲ್ ಪ್ರತಿಕ್ರಿಯೆ, ಮುಕ್ತಾಯ—ಆಪ್ಟಿಮೈಸ್ ಆಗಿರುತ್ತವೆ. ಆದರೆ, ಆಧುನಿಕ ಏಜೆಂಟ್ಗಳು ಡಜನ್ಗಟ್ಟಲೆ ಟರ್ನ್ಗಳನ್ನು ಒಳಗೊಂಡಿರುವ "ಸಂಭಾಷಣೆಯ ಸ್ಥಿತಿಯನ್ನು" (conversation state) ಕಾಯ್ದುಕೊಳ್ಳುತ್ತವೆ, ಪ್ರತಿಯೊಂದು ಟರ್ನ್ ಕ್ಯಾಶ್ಗೆ ನೂರಾರು ಟೋಕನ್ಗಳನ್ನು ಸೇರಿಸುತ್ತದೆ. ಈ ಟೆಸ್ಟ್ ಸೂಟ್ ಎರಡು RTX 3090 ಕಾರ್ಡ್ಗಳ ಮೇಲೆ ಅಂತಹ ಮಲ್ಟಿ-ಟರ್ನ್ ಲೂಪ್ ಅನ್ನು ಮರುಪ್ರದರ್ಶಿಸಿ, ಈ ಕೆಳಗಿನವುಗಳನ್ನು ಅಳೆಯಿತು:
- Warm time-to-first-token (TTFT) – ಹೊಸ ಟರ್ನ್ ಪ್ರಾರಂಭವಾದ ನಂತರ ಮೊದಲ ಟೋಕನ್ ಕಾಣಿಸಿಕೊಳ್ಳುವ ಮೊದಲು ಆಗುವ ವಿಳಂಬ.
- Overall latency – ಇಡೀ ಲೂಪ್ನಲ್ಲಿ ಪ್ರತಿ ಟೋಕನ್ಗೆ ತಗಲುವ ಸರಾಸರಿ ಸಮಯ.
- Sustained throughput – ಲೂಪ್ ನಿರಂತರವಾಗಿ ಚಲಿಸಿದಾಗ ಪ್ರತಿ ಸೆಕೆಂಡಿಗೆ ಪ್ರೊಸೆಸ್ ಆಗುವ ಟೋಕನ್ಗಳು.
- Cache-hit ratio – ಮರು-ಲೆಕ್ಕಾಚಾರ ಮಾಡುವ ಬದಲು ಕೀ-ವ್ಯಾಲ್ಯೂ (KV) ಕ್ಯಾಶ್ನಿಂದ ಮರುಬಳಕೆ ಮಾಡಲಾದ ಟೋಕನ್ಗಳ ಪ್ರಮಾಣ.
SGLang ಪ್ರತಿಯೊಂದು ಮಾನದಂಡದಲ್ಲೂ vLLM ಅನ್ನು ಸೋಲಿಸಿದೆ: 68 ms vs 184 ms TTFT, 82.9 % ವಿಳಂಬದ ಕಡಿತ, 39.8 % ಹೆಚ್ಚಿನ ಥ್ರೂಪುಟ್ ಮತ್ತು vLLM ನ 84.2 % ಕ್ಕೆ ಹೋಲಿಸಿದರೆ 96.8 % ಕ್ಯಾಶ್-ಹಿಟ್ ರೇಶಿಯೋ.
PagedAttention vs RadixAttention
ಎರಡೂ ಎಂಜಿನ್ಗಳು ಮಧ್ಯಂತರ KV ಜೋಡಿಗಳನ್ನು (KV pairs) GPU ಮೆಮೊರಿಯಲ್ಲಿ ಸಂಗ್ರಹಿಸುತ್ತವೆ, ಆದರೆ ಅವು ಆ ಮೆಮೊರಿಯನ್ನು ವಿಭಿನ್ನವಾಗಿ ಸಂಘಟಿಸುತ್ತವೆ.
- PagedAttention (vLLM) ಕ್ಯಾಶ್ ಅನ್ನು ನಿಗದಿತ ಗಾತ್ರದ ಬ್ಲಾಕ್ಗಳಾಗಿ ವಿಭಜಿಸುತ್ತದೆ. ಒಂದು ಪ್ರಾಂಪ್ಟ್ ಬ್ಲಾಕ್ನ ಮಧ್ಯದಲ್ಲಿ ಕೊನೆಗೊಂಡರೆ, ಆ ಬ್ಲಾಕ್ ಅನ್ನು ಭಾಗಶಃ ಮರುಬಳಕೆ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲದ ಕಾರಣ, ಉಳಿದ ಟೋಕನ್ಗಳನ್ನು ಪ್ರತಿ ಟರ್ನ್ನಲ್ಲಿ ಮರು-ಲೆಕ್ಕಾಚಾರ ಮಾಡಬೇಕಾಗುತ್ತದೆ. ಈ ವಿಧಾನವು ಸರಳವಾಗಿದೆ ಮತ್ತು ಪ್ರಾಂಪ್ಟ್ಗಳು ಬ್ಲಾಕ್ ಗಡಿಗಳೊಂದಿಗೆ ಹೊಂದಿಕೆಯಾದಾಗ ಕೆಲಸ ಮಾಡುತ್ತದೆ, ಆದರೆ ಏಜೆಂಟ್ ಲೂಪ್ಗಳಲ್ಲಿ ಪದೇ ಪದೇ ಬದಲಾಗುವ "ಎಡ್ಜ್" (edge) ಟೋಕನ್ಗಳ ಮೇಲೆ ಇದು ಸೈಕಲ್ಗಳನ್ನು ವ್ಯರ್ಥ ಮಾಡುತ್ತದೆ.
- RadixAttention (SGLang) ಕ್ಯಾಶ್ ಅನ್ನು ಒಂದು ಮರದಂತೆ (tree) ಪರಿಗಣಿಸುತ್ತದೆ. ಇದು ಬ್ಲಾಕ್ ಮಿತಿಗಳನ್ನು ಲೆಕ್ಕಿಸದೆ, ಪ್ರಸ್ತುತ ಪ್ರಾಂಪ್ಟ್ ಮತ್ತು ಈಗಾಗಲೇ ಕ್ಯಾಶ್ನಲ್ಲಿರುವ ನಡುವಿನ ಅತಿ ಉದ್ದದ ಸಾಮಾನ್ಯ ಪ್ರಿಫಿಕ್ಸ್ ಅನ್ನು (longest common prefix) ಪತ್ತೆಹಚ್ಚುತ್ತದೆ ಮತ್ತು ಬಳಕೆಯಾಗದ ಎಲೆಗಳನ್ನು (leaves) ತೆಗೆದುಹಾಕುತ್ತದೆ. ಇದು ಬೃಹತ್ ಸಿಸ್ಟಮ್ ಪ್ರಾಂಪ್ಟ್ ಅನ್ನು GPU ಮೆಮೊರಿಯಲ್ಲಿಯೇ ಇರಿಸಲು way ಮಾಡುತ್ತದೆ, ಮತ್ತು ಕೇವಲ ಹೊಸ ಟರ್ನ್ ಅನ್ನು ಮಾತ್ರ ಪ್ರೊಸೆಸ್ ಮಾಡುತ್ತದೆ, ಇದರಿಂದ ಕ್ಯಾಶ್-ಹಿಟ್ ರೇಶಿಯೋ ಹೆಚ್ಚಾಗುತ್ತದೆ ಮತ್ತು ಅನಗತ್ಯ ಕೆಲಸ ಕಡಿಮೆಯಾಗುತ್ತದೆ.
ಪ್ರತಿ ಎಂಜಿನ್ ಯಾವಾಗ ಉತ್ತಮವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ
| ಸನ್ನಿವೇಶ (Scenario) | ಆದ್ಯತೆಯ ಎಂಜಿನ್ (Preferred engine) |
|---|---|
| ಮಲ್ಟಿ-ಟರ್ನ್ ಸ್ವಾಯತ್ತ ಏಜೆಂಟ್ಗಳು, ಹೆಚ್ಚಿನ ಟೂಲ್ ಕಲಿಂಗ್, ಟ್ರೀ-ಆಫ್-ಥಾಟ್ ರೀಸನಿಂಗ್ | SGLang (RadixAttention) |
| ವ್ಯಾಪಕವಾದ ಹಾರ್ಡ್ವೇರ್ ಬೆಂಬಲ (AMD ಮತ್ತು Gaudi ಅಕ್ಸೆಲರೇಟರ್ಗಳು ಸೇರಿದಂತೆ), ಸ್ಪೆಕ್ಯುಲೇಟಿವ್ ಡಿಕೋಡಿಂಗ್, ವಿಷನ್-ಲ್ಯಾಂಗ್ವೇಜ್ ಮಾಡೆಲ್ಗಳು | vLLM (PagedAttention) |
ವ್ಯತ್ಯಾಸವು ಕೇವಲ ಕಾರ್ಯಕ್ಷಮತೆಯಲ್ಲ; ಇದು ಪರಿಸರ ವ್ಯವಸ್ಥೆಯೂ (ecosystem) ಆಗಿದೆ. vLLM ನ ವ್ಯಾಪಕವಾದ ಹಾರ್ಡ್ವೇರ್ ಹೊಂದಾಣಿಕೆಯು ವಿಭಿನ್ನ ಕಂಪ್ಯೂಟ್ ಕ್ಲಸ್ಟರ್ಗಳನ್ನು ಹೊಂದಿರುವ ಸಂಸ್ಥೆಗಳಿಗೆ ಸುರಕ್ಷಿತ ಆಯ್ಕೆಯಾಗಿದೆ. ಅದರ ಸ್ಪೆಕ್ಯುಲೇಟಿವ್ ಡಿಕೋಡಿಂಗ್ ವೈಶಿಷ್ಟ್ಯವು—ಸಮಾನಾಂತರವಾಗಿ ಹಲವಾರು ಟೋಕನ್ ಅಭ್ಯರ್ಥಿಗಳನ್ನು ತಯಾರಿಸುವುದು—ಸಿಂಗಲ್-ಟರ್ನ್ ಜನರೇಷನ್ ಅನ್ನು ವೇಗಗೊಳಿಸಬಹುದು, ಇದು RadixAttention ನ ಟ್ರೀ-ಆಧಾರಿತ ಕ್ಯಾಶಿಂಗ್ ಕಡಿಮೆ ಪ್ರಯೋಜನವನ್ನು ನೀಡುವ ಕ್ಷೇತ್ರವಾಗಿದೆ.
ತೀರ್ಮಾನ
ದೀರ್ಘ ಪ್ರಾಂಪ್ಟ್ಗಳು ಮತ್ತು ಇನ್ಕ್ರಿಮೆಂಟಲ್ ಅಪ್ಡೇಟ್ಗಳನ್ನು ನಿರ್ವಹಿಸುವ ಮಲ್ಟಿ-ಟರ್ನ್ ಏಜೆಂಟ್ಗಳನ್ನು ನಿರ್ಮಿಸುವ ಡೆವಲಪರ್ಗಳಿಗೆ, SGLang ನ RadixAttention ಗ್ರಾಹಕ GPU ಗಳಲ್ಲಿ ಗಮನಾರ್ಹವಾಗಿ ವೇಗವಾದ ಮತ್ತು ಹೆಚ್ಚು ಕ್ಯಾಶ್-ಎಫಿಷಿಯೆಂಟ್ ಅನುಭವವನ್ನು ನೀಡುತ್ತದೆ. ವ್ಯಾಪಕವಾದ ಹಾರ್ಡ್ವೇರ್ ಕವರೇಜ್ ಬೇಕಾದ ಅಥವಾ ಸಿಂಗಲ್-ಟರ್ನ್ ಜನರೇಷನ್ನಲ್ಲಿ ಪರಿಣತಿ ಹೊಂದಿರುವ ತಂಡಗಳು ಇಂದಿಗೂ vLLM ಅನ್ನು ಅವಲಂಬಿಸಬಹುದು. ಆಯ್ಕೆಯು ಈಗ ವರ್ಕ್ಲೋಡ್ "ಏಜೆಂಟ್-ಹೆವಿ" (agent-heavy) ಅಥವಾ "ಹಾರ್ಡ್ವೇರ್-ಡೈವರ್ಸ್" (hardware-diverse) ಆಗಿದೆಯೇ ಎಂಬುದರ ಮೇಲೆ ಅವಲಂಬಿತವಾಗಿದೆ.
