perf: reuse owned shell Jet Hessians in accumulation
This commit is contained in:
@@ -65,3 +65,30 @@ T2의 무가드 단일 외적 후보는 unmasked 최초 INVALID/OVERFLOW 순서
|
||||
전치 성분과 276개 상삼각 scratch를 재사용한다. Unmasked 환경과 외적 거부는 기존 두 호출,
|
||||
576개 reverse 배열과 row-major 결합을 유지한다. Masked snapshot과 별도 원본/후보 SEH
|
||||
관측을 함께 확인하며, 정상 경로의 임시 쓰기 감소를 전체 stack 예약 감소로 보고하지 않는다.
|
||||
|
||||
T3 누적 검사는 기존 T1/T2 snapshot을 확장하지 않고 별도 파일을 쓴다. 원본 source와
|
||||
보존 archive의 출처를 확인한 실행물에서만 새 경로에 생성한다. 실제 CMake 경로는
|
||||
원본 source staging을 CMake로 configure/build한 실행물과 구분해 연결한다.
|
||||
|
||||
```bat
|
||||
<original-fixture.exe> --accumulation-write <new-immutable-accumulation-snapshot>
|
||||
<candidate-fixture.exe> --accumulation-compare <immutable-accumulation-snapshot>
|
||||
<candidate-fixture.exe> --accumulation-compare <immutable-accumulation-snapshot> --reassociate
|
||||
<original-fixture.exe> --accumulation-write <new-immutable-alias-snapshot> --unique-alias
|
||||
<candidate-fixture.exe> --accumulation-compare <immutable-alias-snapshot> --unique-alias
|
||||
<candidate-fixture.exe> --accumulation-compare <immutable-alias-snapshot> --unique-alias --overwrite-input
|
||||
<candidate-fixture.exe> --accumulation-bench
|
||||
```
|
||||
|
||||
일반 그룹은 12개 경계 × 4 rounding × 2 FTZ/DAZ × 2 초기 sticky의 192개 조합으로
|
||||
Dot·Cross·3×3 matrix/vector·일반/고정 frame·energy 형태 누적·상수 Jet/scalar를
|
||||
검사한다. 별도 8개 alias 그룹은 유일한 materialized Hessian을 가진 동일 객체,
|
||||
surviving copy와 공유 rvalue를 검사한다. `--reassociate`와 `--overwrite-input`는
|
||||
fixture 전용 음성 대조이며 exit 1이 기대값이다. 모든 비교는 651개 채널·provenance·
|
||||
implicit Hessian·FP 상태를 포함한다. 상수 Jet와 scalar를 서로 같은 연산으로 가정하지 않는다.
|
||||
|
||||
`--accumulation-bench`는 여섯 연산 종류마다 3,000회, 전체 결과 채널 checksum을
|
||||
소비한다. Fixture 준비는 제외하고 연산의 할당·해제와 checksum은 포함한다. 이 일반
|
||||
실행물의 시간과 별도 복사 source의 Hessian materialization 계측을 구분한다.
|
||||
Unmasked 최초 trap은 별도 SEH/process 관측으로, 곱셈 단계와 실제 덧셈 단계의
|
||||
검증을 구분한다. 전체 모델 시간·stack 예약 감소를 뜻하지 않는다.
|
||||
|
||||
Reference in New Issue
Block a user