docs(performance): retain integrated Hex8 timeout and profile evidence
This commit is contained in:
@@ -9,7 +9,8 @@ MKL 경계 수치 소스는 `71e08169ecfc3eee8372cd831b799b87aa47c78b`에서
|
||||
아래 선택적 paired Hessian의 준비 수명을 바꾼 소스다. `a08df0f`는 동시 호출
|
||||
검사의 시작 대기 조건만 추가했고 같은 production을 새 Debug/Release로 검증했다.
|
||||
후속 병합 `45aac19`에는 root의 공통 finite classifier `47d2a81`이 포함된다.
|
||||
이 병합 뒤의 실행은 아직 없으며 이전 검사 결과를 새 소스의 통과로 대입하지 않는다.
|
||||
이 병합 뒤의 소비자 재빌드와 동적 개발 실행은 문서 commit `decd959`에서 수행했다.
|
||||
이전 검사 결과를 새 소스의 통과로 대입하지 않는다.
|
||||
공식 기준 Release 소스와 이 개발용 Debug 대조 소스를 혼용하지 않는다.
|
||||
|
||||
## 실제 병목에 대응하는 변경
|
||||
@@ -151,6 +152,7 @@ parallel buffer 소유권도 변경하지 않았다.
|
||||
| 동일 TU의 원본/현재 Debug 진단 대조 | 60 finite-input 조합, 출력 306행 동일, 각각 native 0 | [Native](../../.harness/performance/t3/diagnostic-native.json), [comparison](../../.harness/performance/t3/diagnostic-comparison.json), [original manifest](../../.harness/performance/t3/original-debug/manifest.json) |
|
||||
| `a08df0f` 선택적 준비 수명 | Fresh Debug configure/build 0, Hex8·paired state/kinematics·serial/TBB 59/59 PASS, native 0 | [Native](../../.harness/performance/t3/lazy-native.json), [검사](../../.harness/performance/t3/lazy-checks.txt), [dependencies](../../.harness/performance/t3/lazy-dependencies.txt) |
|
||||
| 같은 TU의 원본/current pair snapshot | Flat/warped, linear/nonlinear 전체 response의 raw bits 9,804행 동일, 양쪽 compile/run native 0 | [Native](../../.harness/performance/t3/pair-snapshot-native.json), [대조](../../.harness/performance/t3/pair-snapshot-comparison.json) |
|
||||
| `decd959` 공통 finite classifier 통합 | Correct-prefix Debug configure/build/deps 0, HighLowArithmetic·Hex8·paired·serial/TBB 68/68 PASS, native 0 | [Native](../../.harness/performance/t3/postmerge-debug-native.json), [검사](../../.harness/performance/t3/postmerge-debug-checks.txt) |
|
||||
|
||||
Pair oracle는 고정된 원래 산술 header를 사용하여 raw high/low bits를 비교한다.
|
||||
Signed zero·half-ulp·invalid·최소 subnormal·최대값·overflow·underflow 경계,
|
||||
@@ -209,15 +211,43 @@ library를 사용한다. 같은 probe TU와 Debug flags를 쓰되 두 executable
|
||||
변경으로 ABI가 맞지 않으므로 이 조합은 사용하지 않았다.
|
||||
|
||||
Root의 별도 `47d2a81` finite bit-classification 소스는 `45aac19`에서 통합했다.
|
||||
Root의 독립 검토와 62개 검사는 별도 공통 산술 자료다. 아직 이 병합 소스의
|
||||
Debug/Release 소비자 재컴파일과 Hex8 실행은 하지 않았으며 이전 개발 시간이나
|
||||
snapshot을 이 병합 소스의 결과로 소급하지 않는다.
|
||||
Root의 독립 검토와 62개 검사는 별도 공통 산술 자료다. 이 병합 뒤 올바른 include
|
||||
prefix metadata를 가진 기존 fresh tree에서 Debug 15개, Release 8개 build edge로
|
||||
실제 header 소비자를 재컴파일했다. Hex8 high+low dependencies 15개를 다시 확인했다.
|
||||
[Release 재빌드](../../.harness/performance/t3/postmerge-release-native.json)의
|
||||
configure/build/deps 모두 native 0이다. 이전 개발 시간이나 snapshot을 이 병합
|
||||
소스의 결과로 소급하지 않는다.
|
||||
|
||||
다음 동적 개발 실행은 재컴파일한 고정 소스의 원본 `hexa_dynnonlinear.inp`를
|
||||
워밍업 없이 한 번 실행하고 전체 경과 시간을 잰다. 제한은 150초이며 완료하면
|
||||
기존 전체 101-frame U 비교를 수행한다. 100초 초과 또는 timeout이면 같은 소스로
|
||||
30초 제한 VTune software sampling을 한 번 수집하는 범위가 승인되어 있다.
|
||||
현재 이 동적 실행은 미실행이며 실행 권한과 직렬 CPU 순서를 기다리고 있다.
|
||||
실제 `decd959` 실행은 150.0362372초에서 timeout으로 종료했다. 외부 측정기와
|
||||
종료시킨 target native는 각각 1이며 결과 HDF5가 없어 101-frame 비교는 미실행이다.
|
||||
입력 원본/scratch 바이트와 실행 전후 source/header/binary/build/DLL identity는
|
||||
같았다. [실행 자료](../../.harness/performance/t3/development-dynamic-lazy.json)와
|
||||
[실제 target 기록](../../.harness/performance/t3/development-dynamic-lazy/run-1/native.json)을
|
||||
보존한다. 100초 목표 미달이며 timeout을 완료된 표본으로 처리하지 않는다.
|
||||
|
||||
후속 software sampling은 같은 binary로 30초 한 번만 수집했다. PowerShell이
|
||||
VTune의 정상 stderr를 `NativeCommandError`로 처리하여 wrapper native 1로
|
||||
끝났고 collector/target의 actual exit는 포착하지 못했다. 해당 값은 unknown이다.
|
||||
[실패 기록](../../.harness/performance/t3/vtune-dynamic-lazy-wrapper-failure.json)을
|
||||
보존하고 수집을 반복하지 않았다. 기존 raw 자료만 finalize/export했으며 두 export와
|
||||
그 wrapper는 native 0이다. 수집과 export 후 관련 프로세스가 모두 끝났음을 확인했다.
|
||||
[함수 자료](../../.harness/performance/t3/vtune-dynamic-lazy-functions.csv),
|
||||
[호출 경로](../../.harness/performance/t3/vtune-dynamic-lazy-callstacks.csv),
|
||||
[export native](../../.harness/performance/t3/vtune-dynamic-lazy-export-native.json)는
|
||||
부분 구간의 개발 profile이며 전체 실행 시간 자료가 아니다.
|
||||
|
||||
최신 sampled CPU는 LowestBitExponent 51.037592초, TwoSum 27.917520초,
|
||||
TwoProduct 13.335204초, Multiply 10.732785초, MultiplyPair 7.678654초다.
|
||||
LowestBitExponent에서 TwoProduct·Multiply·MultiplyPair를 거쳐 nonlinear
|
||||
EvaluateHighLow와 EvaluateSolids로 이어지는 경로가 확인된다. 여러 inline 함수가
|
||||
같은 주소의 서로 다른 attribution으로 표시되어 IsFiniteBinary64의 행들을 단순
|
||||
합산하지 않는다. 이전 source/profile의 sampled CPU와 이 부분 자료를 직접
|
||||
성능 비율로 비교하지 않는다. 공통 최하위 bit 검색의 정확한 같은 결과를 유지하면서
|
||||
비용을 줄이는 후보를 root 소유 범위의 후속 검토로 전달했다.
|
||||
|
||||
84개 실행과 추가 두 검사 실행은 서로 다른 검사 범위다. 이를 하나의 최종 전체
|
||||
검사 실행으로 표시하지 않는다. 최종 전체 Debug/CTest, Hex8 필수 원본 5개 비교,
|
||||
|
||||
Reference in New Issue
Block a user