test(npu): add GSM8K accuracy test for CAMAsync token split on DP3TP2+EP2#154
Draft
ShwStone wants to merge 1 commit into
Draft
test(npu): add GSM8K accuracy test for CAMAsync token split on DP3TP2+EP2#154ShwStone wants to merge 1 commit into
ShwStone wants to merge 1 commit into
Conversation
…+EP2 Add tests/e2e/accuracy/test_gsm8k_npu_async_cam.py, mirroring the existing test_gsm8k_npu.py infrastructure but targeting CAMAsyncAFDConnector on an 8-NPU non-PCP DP+TP/SP topology: - Attention: DP=3, TP=2 (6 ranks) - FFN: DP=2, EP=2 (2 ranks) The test is parameterized over async_moe_split='request' and 'token' so the token-balanced ubatch split path can be validated against the legacy request-boundary path via lm-eval GSM8K accuracy. Extend tests/e2e/conftest.py::_launch_afd_server with optional parameters for connector selection, per-role TP sizes, async mode, gate-on-attention, and connector_extra_config so it can launch CAMAsync topologies in addition to the default synchronous connectors.
Collaborator
|
Great. I will merge until test e2e pass. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add GSM8K accuracy E2E coverage for
CAMAsyncAFDConnectoron Ascend NPU.This PR introduces
tests/e2e/accuracy/test_gsm8k_npu_async_cam.py, which mirrors the existing synchronous-connector GSM8K accuracy test (test_gsm8k_npu.py) but targets the asynchronous CAM connector.What changed
New test:
tests/e2e/accuracy/test_gsm8k_npu_async_cam.pytest_gsm8k_lm_eval_async_cam_1a1f: a minimal 1-Attention + 1-FFN (2 NPU) GSM8K accuracy baseline. This runs by default when the test file is executed.test_gsm8k_lm_eval_async_cam_dp3tp2_ep2: an 8-NPU non-PCP DP+TP/SP topology test parameterized overasync_moe_split="request"and"token". This test is opt-in viaAFD_NPU_ASYNC_CAM_RUN_DP3TP2=1so the heavy 8-card run is not triggered by default.tests/e2e/conftest.pyextensions_launch_afd_servernow accepts optional parameters for:connector: override the default connector (e.g.CAMAsyncAFDConnector).attention_tp_size/ffn_tp_size: per-role tensor parallelism.afd_async: setadditional_config['afd']['async']=true.compute_gate_on_attention: required by CAMAsync.afd_connector_extra_config: passconnector_extra_configsuch asasync_moe_ubatching,async_moe_num_ubatches, andasync_moe_split.Topology under test
1A1F baseline (default)
async_moe_split="request"DP3TP2 + EP2 token-split validation (opt-in)
async_moe_split∈ {"request", "token"}How to run
A staged offline GSM8K task dir is required, same as
test_gsm8k_npu.py. SetAFD_NPU_GSM8K_TASK_DIRif it is not at the default sibling location.Status
This is a draft PR. NPU E2E validation is still pending. I will mark it ready for review once the 1A1F baseline and the DP3TP2+EP2
request/tokensplit comparison have been verified on real Ascend hardware.