BMOA: 컴파일러 유발 수치 편차에 대한 기준-메커니즘-결과 귀속 (Baseline-Mechanism-Outcome Attribution)
요약
컴파일러로 인한 부동 소수점 수치 편차를 체계적으로 분석하기 위한 진단 프레임워크인 BMOA를 제안합니다. BMOA는 기준, 메커니즘, 결과를 분리하여 수치적 불일치의 원인을 명확히 규명하고 감사 가능한 레코드를 생성합니다.
핵심 포인트
- BMOA 프레임워크를 통한 컴파일러 유발 수치 편차의 정형화된 진단
- 기준(Baseline), 메커니즘(Mechanism), 결과(Outcome)의 분리 분석
- ARM64 환경 및 과학 계산 커널을 통한 프레임워크 검증
- 수치적 편차가 반드시 정확도 손실로 이어지지는 않음을 입증
- 향후 컴파일러 수치 정확성 정형 명세를 위한 경험적 토대 제공
컴파일러를 인지하는 수치적 정확성 (numerical correctness)을 정형화하려면 관찰된 부동 소수점 차이가 무엇을 의미하는지, 해당 증거가 어떤 컴파일러 동작을 뒷받침하는지, 그리고 어떤 수치적 결과가 뒤따르는지를 구분해야 합니다. 기존의 테스트 워크플로우는 종종 이러한 질문들을 단순히 통과/실패 (pass/fail) 불일치로 축소하여 처리합니다. 우리는 비교 관계와 시스템 경계, 증거로 뒷받침되는 컴파일러 메커니즘, 그리고 참조 자격이 부여된 정확도 결과 (accuracy outcome)를 분리하는 진단 프레임워크인 Baseline--Mechanism--Outcome Attribution (BMOA)를 소개합니다. BMOA는 운영상의 엄격한 부동 소수점 (strict floating-point), 변환 국소적 (transformation-local), 재현성 (reproducibility), 교차 컴파일러 (cross-compiler), 그리고 더 높은 정밀도 (higher-precision) 비교를 결합하는 동시에, 증거가 불충분할 경우 혼합되거나 모호하거나 알 수 없는 귀속 (attribution) 상태를 보존합니다. 각 레코드는 감사를 위해 입력값, 설정, 수치적 지표 및 지원 아티팩트를 유지합니다. 우리는 ARM64 환경에서 6개의 과학 계산 커널 (scientific-computing kernels), 결정론적 스트레스 입력 (deterministic stress-input) 제품군, 그리고 제어된 Clang 설정을 통해 BMOA를 평가합니다. 1,276개의 레코드로 구성된 귀속 코퍼스 (attribution corpus)와 162개의 인스턴스로 구성된 제어된 메커니즘 매트릭스 (mechanism matrix)를 통해, 기준 (baseline) 선택이 진단을 변화시킨다는 점, 컴파일러 유발 편차 (compiler-induced deviation)가 반드시 정확도 손실을 의미하지는 않는다는 점, 그리고 상쇄 (cancellation) 및 큰 동적 범위 (large dynamic range)가 대상 매트릭스 내에서 가장 강력한 효과를 드러낸다는 것을 보여줍니다. BMOA는 가공되지 않은 불일치를 명시적이고 감사 가능하며 증거에 의해 경계가 정해진 레코드로 변환합니다. BMOA 자체가 증명 시스템 (proof system)은 아니지만, 이러한 레코드들은 향후 컴파일러를 인지하는 수치적 정확성을 위한 정형 명세 (formal specifications) 및 증명 의무 (proof obligations)를 위한 경험적 토대를 제공합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv cs.PL (Programming Languages)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기