算子感知的混合精度容差校准应用于张量核
本文提出了一种基于算子感知的混合精度容差校准方法,通过挖掘累积的云GPU运行数据,自动确定张量核正确性测试的最佳绝对容差,相比手工选择的容差更严格,并显著提高了错误检测召回率。
大多数张量核的正确性测试依赖于固定的“全接近”风格检查,并使用手工选取的绝对和相对容差。这些阈值在测试库中被复制粘贴,很少重新审视。这种实践可能导致测试过于宽松或过于严格,从而影响错误检测的准确性。例如,对于不同的算子,手工选取的容差可能无法反映实际数值误差的分布,导致许多潜在的bug被漏检。
为了改进这一现状,研究人员提出了一种算子感知的混合精度容差校准方法。他们从26个gpuemu测试条目的累积云GPU运行中收集了每个测试用例的逐元素误差分布,涵盖了2种数据类型(fp16和fp32),共计8076个结果行。这些数据来源于实际云环境中的大量GPU运算,能够真实反映不同算子在不同精度下的数值行为。基于这些数据,他们提出了一个实证问题:在正确实现下,该张量核本身会证明多大的绝对容差?
答案表明,自动校准的容差比当前手工选取的容差严格得多。最大的收紧发生在attention_triton的fp16操作上,达到了2184倍。这意味着手工选取的容差可能比实际需要的宽松了2000多倍,从而掩盖了大量潜在的数值错误。在gpuemu测试库中,有7个LLM风格的错误变体具有对应的正确实现。通过在这些变体上应用每操作每数据类型的校准容差,错误检测召回率从73.2%(2467个中的1805个)提升到82.4%(2467个中的2034个),绝对提高了9.3个百分点,新增了229个检测。同时,在1882个正确对照案例中,误报数量从0增加到20,仅增加1.1个百分点,说明校准方法在提高灵敏度的同时保持了极低的误报率。
这一方法不仅提高了错误检测的灵敏度,还保持了极低的误报率,为张量核的测试提供了更可靠的容差设定方式。研究团队计划在本周内发布更多配套论文(P3和P4),进一步扩展这一框架。相关论文P1(arXiv:2606.20128)已经发布,更多细节将在后续版本中补充。这项工作有望改变深度学习库中张量核测试的容差选择实践,使其更加数据驱动和自动化,从而减少人工干预和潜在错误。