| { |
| "schemaVersion": 1, |
| "kind": "pp-doclayout-v3-precision-experiment", |
| "generatedAt": "2026-07-12T05:58:00Z", |
| "runtime": { |
| "name": "jaxjs-wasm", |
| "threads": 1, |
| "wasmLinearMemoryBytes": 536870912, |
| "processRssBudgetBytes": 805306368, |
| "isolation": "fresh process per cold fixture; same detector and process for warm probe" |
| }, |
| "artifacts": { |
| "fp32": { |
| "id": "pp-doclayout-v3-jaxjs", |
| "weightsSha256": "13492ac1f96d5340caa0f75e8c894a3b7d8e95d7c2e485fd5b671bee9a3df6f3", |
| "weightsSizeBytes": 130847572, |
| "status": "selected" |
| }, |
| "fp16": { |
| "id": "pp-doclayout-v3-fp16-jaxjs", |
| "parentId": "pp-doclayout-v3-jaxjs", |
| "weightsSha256": "da8613530ea128d8e85d00be530fe02a29830e59308f6dc6c67e12fdb03e6a8f", |
| "weightsSizeBytes": 65459939, |
| "sizeRatio": 0.5002762985926862, |
| "status": "rejected-runtime" |
| } |
| }, |
| "conversion": { |
| "report": "fp16-conversion-audit.json", |
| "byteReproducible": true, |
| "floatingTensorCount": 738, |
| "retainedFloat32TensorCount": 0, |
| "retainedNativeTensorCount": 1, |
| "mixedPrecisionTensorCount": 0, |
| "normalizationSensitiveTensorCount": 464, |
| "overflowCount": 0, |
| "underflowToZeroCount": 1445, |
| "maxAbsError": 1.197265625, |
| "rmse": 0.0006262482094378353 |
| }, |
| "qualityThresholds": { |
| "classExact": true, |
| "maximumThresholdCrossings": 0, |
| "relativeOrderExact": true, |
| "minimumBoxIou": 0.995, |
| "minimumPolygonIou": 0.95, |
| "minimumMaskIou": 0.995, |
| "maximumScoreAbsError": 0.003, |
| "minimumPositiveClassRecall": 1 |
| }, |
| "quality": { |
| "fp16Academic": { |
| "report": "fp16-academic.json", |
| "classExact": true, |
| "thresholdCrossingCount": 0, |
| "relativeOrderExact": true, |
| "maximumAbsoluteOrderDelta": 2, |
| "minimumBoxIou": 0.9991102898194166, |
| "minimumPolygonIou": 0.9642857142857143, |
| "minimumMaskIou": 0.9962546816479401, |
| "meanMaskIou": 0.9998196085124901, |
| "maximumScoreAbsError": 0.0004281950245667021, |
| "formulaRecall": 1, |
| "formulaNumberRecall": 1, |
| "tableRecall": null, |
| "tableRecallStatus": "not-evaluable-no-table-positive-in-frozen-v3-oracle" |
| }, |
| "fp16Curved": { |
| "report": "fp16-curved.json", |
| "classExact": true, |
| "thresholdCrossingCount": 0, |
| "relativeOrderExact": true, |
| "maximumAbsoluteOrderDelta": 2, |
| "minimumBoxIou": 0.9978265928684884, |
| "minimumPolygonIou": 0.9645151633776222, |
| "minimumMaskIou": 0.9982293050022134, |
| "meanMaskIou": 0.9997030696791581, |
| "maximumScoreAbsError": 0.0024748477961731297 |
| }, |
| "fp32Academic": { |
| "report": "fp32-academic-warm.json", |
| "classExact": true, |
| "thresholdCrossingCount": 0, |
| "relativeOrderExact": true, |
| "maximumAbsoluteOrderDelta": 2, |
| "minimumBoxIou": 0.9990843017788482, |
| "minimumPolygonIou": 0.9642857142857143, |
| "minimumMaskIou": 0.9962546816479401, |
| "meanMaskIou": 0.9998269382768598, |
| "maximumScoreAbsError": 0.00038713593536376933, |
| "formulaRecall": 1, |
| "formulaNumberRecall": 1 |
| }, |
| "page4Ownership": { |
| "fixture": "../1512.00809v4/page-4-formula-ownership.json", |
| "layoutFormulaLabelsExact": true, |
| "inlineFormulaRecall": 1, |
| "displayFormulaRecall": 1, |
| "formulaNumberRecall": 1, |
| "normalizedDuplicateCandidateCount": 0, |
| "nestedInlineDisplayConflictCount": 0, |
| "materialTextFormulaOverlapCount": 0, |
| "oneToOneOwnership": true, |
| "projectionConsistency": true |
| } |
| }, |
| "performance": { |
| "fp32": { |
| "coldLatencyMs": 343516.373041, |
| "warmLatencyMs": 303129.631833, |
| "coldParameterUploadMs": 29.407006999719556, |
| "warmParameterUploadMs": 32.0894330003066, |
| "artifactFetchMs": 63.44441599999993, |
| "weightsParseMs": 1.22362499999997, |
| "peakRssBytes": 737345536, |
| "warmCompleted": true |
| }, |
| "fp16": { |
| "coldAcademicLatencyMs": 345001.211625, |
| "coldCurvedLatencyMs": 346552.886208, |
| "coldAcademicParameterUploadMs": 1937.737654999974, |
| "coldCurvedParameterUploadMs": 1909.9433300003657, |
| "artifactFetchMs": 35.69737499999985, |
| "weightsParseMs": 11.531665999999973, |
| "maximumColdPeakRssBytes": 778125312, |
| "warmCompleted": false, |
| "warmStopReport": "fp16-warm-stop.json", |
| "warmStopPeakRssBytes": 805961728 |
| } |
| }, |
| "gates": { |
| "conversionReproducible": true, |
| "tensorPolicyExplainable": true, |
| "qualityPassed": true, |
| "coldRssPassed": true, |
| "warmRssPassed": false, |
| "runtimeMemoryImprovedOverFp32": false, |
| "parameterUploadImprovedOverFp32": false, |
| "artifactSizeImproved": true, |
| "webgpuRequired": false, |
| "webgpuAttempted": false |
| }, |
| "decision": { |
| "selectedArtifactId": "pp-doclayout-v3-jaxjs", |
| "selectedPrecision": "float32", |
| "fp16Candidate": "reject", |
| "reason": "FP16 storage preserves semantics and halves download bytes, but JAXJS/WASM widens parameters during upload, increases cold peak RSS and upload time, and fails the bounded same-process warm run while FP32 completes both cold and warm runs.", |
| "candidateIntegrationAllowed": false, |
| "publicationAllowed": false, |
| "dependentTasksMustConsume": "pp-doclayout-v3-jaxjs" |
| }, |
| "safety": { |
| "webgpuAttempted": false, |
| "reason": "WASM gates fully determine rejection and prior machine-safety policy prohibits unbounded WebGPU work", |
| "liveResourcesAfterExperiment": 0 |
| } |
| } |
|
|