| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
ci: replace upstream Pool with self-managed per-file scheduler - Add npu_scheduler.py: ThreadPoolExecutor + DevicePool (acquire/release model, no wrap-around conflict), per-file run_test.py -i invocation, subprocess timeout (3600s), real-time progress output, sys.exit(1) on failure so CI step turns red - test-npu.sh: call npu_scheduler.py instead of single run_test.py; capture exit code via $?; add pytest-timeout plugin (600s/case) - npu_poisoning_plugin.py: remove fcntl device binding (moved to scheduler), pytest_configure now only logs visible devices, pytest_unconfigure no longer forces os._exit(70) - _test-exec-new.yml: switch to heredoc << 'PYEOF' to avoid bash quote-escaping issues with ${{ }} expressions | 19 天前 | |
ci: support up to 3 poisonings per file (max_attempts=4) | 15 天前 | |
ci: add disabled/running-skip testcase filtering for nightly workflow - Add disabled_testcases.json (9848 entries) and running_skiped_testcases.json (4004 entries) to .github/config/ - Modify collect_all_cases.py: - load_skip_list() returns Dict[str, Dict] instead of set, preserving per-nodeid metadata (reason, category, source filename) - Support new JSON format: {nodeid: {reason, category, ...}} - --skip-list changed to action='append' for multiple files - filter_skipped_cases() returns (filtered, skipped) tuple, recording skipped cases with nodeid, file, skip_reason, skip_category, skip_source - main() accumulates skipped cases and saves skipped_cases.json to output directory, included in cases-shards artifact - cases_collection_summary.json adds total_skipped field - Add extra_skip_lists input to _test.yml and _test-collect.yml (default empty, does not affect receive-trigger.yml) - nightly.yml passes extra_skip_lists with both config files and reverts upstream to pytorch/pytorch main - _test-report.yml copies skipped_cases.json from cases-shards artifact into npu-full-test-summary artifact - receive-trigger.yml unchanged; pr_skip_list.jsonl filtering now also recorded in skipped_cases.json automatically | 5 天前 | |
add missing test script dependencies: collect_all_cases, discover_test_files, parse_test_results | 1 个月前 | |
ci: remove patch-count, rename torch-npu-whl arg, centralize docker_image - Remove --patch-count parameter from generate_npu_full_test_report.py and _test-report.yml (unused, always 0) - Rename --torch-npu-whl to --torch-npu-short to match actual input (short SHA, not wheel URL); update JSON output field name accordingly - Add DOCKER_IMAGE env var to nightly.yml and receive-trigger.yml, pass to _test.yml via docker_image input (single source of truth) | 8 天前 | |
ci: refactor test sharding to business-category-driven model Replace the distributed/regular two-way sharding with five business categories (core, tensor, distributed, graph, others) configured via YAML. Introduce a unified _test-category.yml workflow replacing _test-distributed.yml and _test-regular.yml. Shard count is now threshold-driven (ceil(cases/threshold)) instead of hardcoded. Key changes: - collect_all_cases.py: load categories from YAML config, dynamic sharding by threshold, emit per-category workers/execution metadata - _test-collect.yml / _test.yml: propagate per-category matrix, num_shards, workers, and has_* outputs to downstream jobs - _test-category.yml: unified execution workflow with bash prefix dispatch (no Python module dependency) - generate_npu_full_test_report.py: read new summary structure (categories dict), support all 7 prefix types in shard discovery - parse_test_results.py: centralized _TYPE_TO_PREFIX map for all category types - run_npu_test_shard.py / retry_failed_cases.py: complete prefix dict with regular/custom entries - nightly.yml: remove deprecated distributed_shards/regular_shards inputs - Config files: reorganize whitelist into category-driven format | 26 天前 | |
ci: add hw_classification + full-scan mode, remove retry step - Add hw_classification input to _test.yml/_test-collect.yml (default ACCELERATOR), passed through to pytest --collect-only. nightly uses 'GENERIC ACCELERATOR', receive-trigger uses 'ACCELERATOR'. - Add full-scan mode to collect_all_cases.py: --full-scan flag scans all test_*.py and uses config as categorization mapping (paths + files) instead of whitelist. 3-pass classification ported from v3. - Rename nightly_test_whitelist.yml -> nightly_test_categories.yml, simplified from 300 to 89 lines using paths for directory-level scanning. nightly.yml sets full_scan: true. - Remove 'Retry failed cases' step from _test-category.yml and delete retry_failed_cases.py (405 lines). Clean up retry_count/retry_history/ suffix params from save_case_log in run_npu_test_shard.py. - PR mode (receive-trigger.yml) unchanged: full_scan defaults to false, pr_test_whitelist.yml used as whitelist. | 15 天前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 19 天前 | ||
| 15 天前 | ||
| 5 天前 | ||
| 1 个月前 | ||
| 8 天前 | ||
| 26 天前 | ||
| 15 天前 |