Skip to content

APITest 测试修复:🐛 过滤 cudaVersion sanitizer 报错#658

Merged
cangtianhuang merged 2 commits into
PFCCLab:mainfrom
cangtianhuang:fix/cudaVersion
Jun 22, 2026
Merged

APITest 测试修复:🐛 过滤 cudaVersion sanitizer 报错#658
cangtianhuang merged 2 commits into
PFCCLab:mainfrom
cangtianhuang:fix/cudaVersion

Conversation

@cangtianhuang

Copy link
Copy Markdown
Collaborator

🧭 背景

compute-sanitizer 会将 cudaVersion 与 driver 版本不匹配输出为 CUDA API Error,干扰用例日志和错误分类

🛠️ 实现方案

  • 按 compute-sanitizer 输出块解析日志;使用临时文件保存完整子进程输出,内存中只保留 crash tail
  • 单独过滤 cudaVersion 版本不匹配及对应的 cuGetProcAddress_v2 报错;仅当剩余输出不存在其他 sanitizer error 时忽略 sanitizer error exitcode

🔧 主要变更

1. sanitizer 输出分析

  • 新增统一分析结果,返回过滤后输出和是否忽略 sanitizer exitcode
  • 识别 CUDA API Error:Program hitERROR SUMMARY: 输出块
  • 保留普通测试日志和其他 sanitizer 错误

2. worker 结果处理

  • 子进程结束后统一分析 sanitizer 输出
  • 仅对 cudaVersion 相关报错走忽略逻辑
  • 其他 sanitizer error 继续归类为 cuda_error

3. 输出缓存优化

  • 使用临时文件暂存完整 stdout
  • 保留最后 40 行作为 crash tail

📁 改动文件

PaddleAPITest-worktrees/fix-cudaVersion/
└── engineV4.py  # sanitizer 输出过滤与 worker 返回码处理

@cangtianhuang cangtianhuang enabled auto-merge (squash) June 22, 2026 16:01
@cangtianhuang cangtianhuang merged commit 3e5ba30 into PFCCLab:main Jun 22, 2026
1 check passed
@cangtianhuang cangtianhuang deleted the fix/cudaVersion branch June 22, 2026 16:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant