[Intel XPU] Initially add nightly GSM8K accuracy tests for Llama-3.1-8B (TP=2) and Qwen3-32B (TP=4) (#28908)

Co-authored-by: Singhal, Shubham <shubham.singhal@intel.com>
This commit is contained in:
ashwini rathi
2026-07-01 16:27:24 +08:00
committed by GitHub
co-authored by Singhal, Shubham
parent 548f505cc5
commit 5134dcdcab
8 changed files with 422 additions and 12 deletions
@@ -0,0 +1,39 @@
"""Llama-3.1-8B-Instruct GSM8K accuracy on Intel XPU (TP=2).
TP=4 wedges the Level Zero driver during the first prefill batch on Arc/BMG;
TP=2 runs cleanly with the same model and serves at ~18 tok/s.
Scored by ``simple_eval_gsm8k.GSM8KEval`` (the same evaluator AMD and
NVIDIA nightlies use); threshold mirrors theirs.
"""
import unittest
import torch
from sglang.test.ci.ci_register import register_xpu_ci
from sglang.test.test_utils import CustomTestCase
from sglang.test.xpu.simple_eval_gsm8k_xpu_mixin import SimpleEvalGSM8KXPUMixin
register_xpu_ci(est_time=1200, suite="nightly-xpu-2-gpu", nightly=True)
@unittest.skipUnless(
torch.xpu.is_available(),
"Intel XPU not available (torch.xpu.is_available() returned False)",
)
class TestLlama31_8BInstructXPU(SimpleEvalGSM8KXPUMixin, CustomTestCase):
model = "meta-llama/Llama-3.1-8B-Instruct"
tp_size = 2
accuracy = 0.80
other_args = SimpleEvalGSM8KXPUMixin.other_args + [
"--max-total-tokens",
"65536",
"--mem-fraction-static",
"0.8",
]
if __name__ == "__main__":
unittest.main()
@@ -0,0 +1,40 @@
"""Qwen3-32B GSM8K accuracy on Intel XPU (TP=4).
Scored by ``simple_eval_gsm8k.GSM8KEval`` (the same evaluator AMD and
NVIDIA nightlies use).
"""
import unittest
import torch
from sglang.test.ci.ci_register import register_xpu_ci
from sglang.test.test_utils import CustomTestCase
from sglang.test.xpu.simple_eval_gsm8k_xpu_mixin import SimpleEvalGSM8KXPUMixin
register_xpu_ci(est_time=1800, suite="nightly-xpu-4-gpu", nightly=True)
@unittest.skipUnless(
torch.xpu.is_available(),
"Intel XPU not available (torch.xpu.is_available() returned False)",
)
class TestQwen3_32BXPU(SimpleEvalGSM8KXPUMixin, CustomTestCase):
model = "Qwen/Qwen3-32B"
tp_size = 4
accuracy = 0.85
# 64GB BF16 weights split across 4 ranks take ~9 min to load on Intel
# Arc Pro B60; the default 600s timeout fires mid-startup. Mirror the
# XPU 70B test's 1-hour budget.
timeout_for_server_launch = 3600
other_args = SimpleEvalGSM8KXPUMixin.other_args + [
"--max-total-tokens",
"65536",
"--mem-fraction-static",
"0.8",
]
if __name__ == "__main__":
unittest.main()
+5 -1
View File
@@ -169,7 +169,11 @@ NIGHTLY_SUITES = {
"full-8-npu-a3",
"full-16-npu-a3",
],
HWBackend.XPU: [],
HWBackend.XPU: [
"nightly-xpu-1-gpu",
"nightly-xpu-2-gpu",
"nightly-xpu-4-gpu",
],
}