[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:
co-authored by
Singhal, Shubham
parent
548f505cc5
commit
5134dcdcab
@@ -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
@@ -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",
|
||||
],
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user