diff --git a/README.md b/README.md index 2bbd65a..c808c87 100644 --- a/README.md +++ b/README.md @@ -60,6 +60,10 @@ Repeated physical-device reference runs can be captured with post-run memory and thermal snapshots from sampled peaks and power measurements. The first retained 10-run capture is summarized in the [Samsung SM-A356E repeated-device report](reports/android_sm_a356e_reference_10_run_v0_1_4.md). +The APK/JNI reference path was also executed for 10 cold launches on an Android +15 ARM64 emulator whose runtime reported `PAGE_SIZE=16384`; the raw evidence and +claim boundaries are summarized in the +[Android 16 KB runtime report](reports/android_16kb_emulator_reference_v0_1_7.md). Every successful CI run also assembles a versioned end-to-end release-evidence bundle containing native baseline/fused benchmark JSON, the verified APK, the 16 KiB alignment report, a Git revision, and SHA-256 checksums. The acceptance diff --git a/docs/end_to_end_acceptance.md b/docs/end_to_end_acceptance.md index 8f15a6a..79e20c2 100644 --- a/docs/end_to_end_acceptance.md +++ b/docs/end_to_end_acceptance.md @@ -44,6 +44,11 @@ for reviewers. checks; - all retained files are bound to a Git revision with SHA-256 digests. +The tracked Android 16 KB evidence separately demonstrates that the v0.1.7 +reference APK/JNI path launches and completes repeated benchmarks on an API 35 +ARM64 emulator reporting `PAGE_SIZE=16384`. It is runtime-compatibility proof, +not physical-device performance, QNN placement, thermal, or power evidence. + ## What requires a physical device CI does not claim NPU placement, thermals, or power. Attach physical-device diff --git a/reports/android_16kb_emulator_reference_v0_1_7.md b/reports/android_16kb_emulator_reference_v0_1_7.md new file mode 100644 index 0000000..b2ac97b --- /dev/null +++ b/reports/android_16kb_emulator_reference_v0_1_7.md @@ -0,0 +1,67 @@ +# Android 16 KB runtime evidence: API 35 ARM64 emulator + +Captured on 2026-08-27 from EdgeGenBench Android v0.1.7 (version code 8) +using `scripts/profile_android_reference.sh` for 10 automated cold launches. + +## Provenance and scope + +| Field | Observed value | +|---|---| +| Environment | Google Android Emulator `sdk_gphone16k_arm64` | +| Android / SDK | Android 15 / SDK 35 | +| ABI | `arm64-v8a` | +| Runtime page size | **16,384 bytes** | +| App version | 0.1.7 (code 8) | +| Backend | Deterministic reference backend, **not QNN** | +| QNN/NPU placement | Not tested | +| Power | Not measured | + +The runtime page size was read from the booted environment with +`adb shell getconf PAGE_SIZE`. Every retained machine-readable benchmark result +also records `runtime_page_size_bytes=16384`. Before installation, Android SDK +`zipalign -c -P 16 -v 4` passed and all `PT_LOAD` segments in both packaged +native libraries reported `0x4000` alignment. + +This closes the Android 16 KB **runtime compatibility** gap for the reference +APK/JNI path. An emulator is not physical-device performance evidence, and +these timings must not be compared with the Samsung or Qualcomm measurements. + +## Ten-run results + +Each outer run force-stopped and cold-launched the activity. The native +benchmark then performed 100 measured iterations. + +| Metric | Mean | Median | Minimum | Maximum | +|---|---:|---:|---:|---:| +| Native cold latency (ms) | 0.022621 | 0.014333 | 0.011500 | 0.060667 | +| Native warm mean (ms) | 0.002608 | 0.002440 | 0.002259 | 0.003924 | +| Native warm p95 (ms) | 0.003333 | 0.002667 | 0.002458 | 0.006250 | +| Baseline preprocessing (ms) | 26.361593 | 23.912975 | 21.260857 | 38.929105 | +| Fused preprocessing (ms) | 12.570465 | 12.233062 | 11.625028 | 14.820786 | +| Preprocessing speedup | 2.092613x | 1.951007x | 1.772588x | 2.852528x | +| Android launch total (ms) | 4032.9 | 3948.0 | 3190 | 5258 | +| Post-run PSS (KiB) | 60,623 | 60,698 | 60,233 | 60,853 | +| Post-run RSS (KiB) | 157,038 | 157,096 | 156,608 | 157,232 | + +All ten runs reported zero preprocessing drift and zero downstream output +drift. PSS and RSS are post-run process snapshots, not sampled peaks. + +## Thermal and power boundaries + +The emulator reported thermal status 0 and a constant synthetic test sensor. +Those values are emulator diagnostics, not physical thermal measurements. +Power remains `not measured`; no energy or power-savings claim is made. + +## Retained evidence + +The complete capture is stored under +`reports/device/android-16kb-api35-reference-10-runs/` and includes: + +- device/app identity and the observed runtime page size; +- ten activity-start, logcat, memory, and thermal records; +- the aggregate latency/memory CSV; +- pre/post thermal snapshots and the final screenshot; +- explicit reference-backend, QNN, memory, thermal, and power claim boundaries. + +The remaining hardware-only gaps are an end-to-end QNN APK run on a supported +Snapdragon device and a calibrated physical power measurement. diff --git a/reports/device/android-16kb-api35-reference-10-runs/device-report.txt b/reports/device/android-16kb-api35-reference-10-runs/device-report.txt new file mode 100644 index 0000000..2551309 --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/device-report.txt @@ -0,0 +1,9 @@ +captured_at=2026-08-27T20:01:33Z +manufacturer=Google +model=sdk_gphone16k_arm64 +android=15 +sdk=35 +abi=arm64-v8a +page_size=16384 + versionCode=8 minSdk=28 targetSdk=35 + versionName=0.1.7 diff --git a/reports/device/android-16kb-api35-reference-10-runs/final-screen.png b/reports/device/android-16kb-api35-reference-10-runs/final-screen.png new file mode 100644 index 0000000..9b2f8a0 Binary files /dev/null and b/reports/device/android-16kb-api35-reference-10-runs/final-screen.png differ diff --git a/reports/device/android-16kb-api35-reference-10-runs/latency-memory.csv b/reports/device/android-16kb-api35-reference-10-runs/latency-memory.csv new file mode 100644 index 0000000..2342aaf --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/latency-memory.csv @@ -0,0 +1,11 @@ +run,cold_ms,warm_mean_ms,warm_p95_ms,baseline_preprocess_mean_ms,fused_preprocess_mean_ms,preprocess_speedup_x,preprocess_max_abs_drift,output_max_abs_drift,launch_total_ms,total_pss_kib,total_rss_kib +1,0.033250,0.002658,0.002667,38.929105,13.647231,2.852528,0.000000,0.000000,4575,60548,156992 +2,0.013958,0.002545,0.002750,21.260857,11.686140,1.819322,0.000000,0.000000,4036,60695,157104 +3,0.011500,0.002315,0.002584,23.230263,12.460185,1.864359,0.000000,0.000000,3190,60247,156688 +4,0.020083,0.002310,0.002667,25.604844,12.850200,1.992564,0.000000,0.000000,5258,60701,157088 +5,0.012625,0.002312,0.002583,23.244588,12.173451,1.909449,0.000000,0.000000,3484,60717,157168 +6,0.060667,0.002259,0.002458,30.244593,14.820786,2.040688,0.000000,0.000000,4001,60788,157232 +7,0.035708,0.003924,0.006250,21.789849,12.292673,1.772588,0.000000,0.000000,4840,60233,156608 +8,0.014709,0.002855,0.006041,21.970452,12.135276,1.810462,0.000000,0.000000,3804,60853,157232 +9,0.011625,0.002335,0.002708,32.760015,11.625028,2.818059,0.000000,0.000000,3895,60642,157056 +10,0.012084,0.002570,0.002625,24.581362,12.013676,2.046115,0.000000,0.000000,3246,60807,157216 diff --git a/reports/device/android-16kb-api35-reference-10-runs/measurement-status.txt b/reports/device/android-16kb-api35-reference-10-runs/measurement-status.txt new file mode 100644 index 0000000..99c63ee --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/measurement-status.txt @@ -0,0 +1,5 @@ +backend=reference +qnn-npu-placement=not-tested +power=not-measured +memory=post-run-snapshots-not-sampled-peaks +thermal=platform-sensor-snapshots-not-calibrated-power diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-001/activity-start.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-001/activity-start.txt new file mode 100644 index 0000000..9269250 --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-001/activity-start.txt @@ -0,0 +1,7 @@ +Starting: Intent { cmp=dev.edgegenbench/.MainActivity (has extras) } +Status: ok +LaunchState: COLD +Activity: dev.edgegenbench/.MainActivity +TotalTime: 4575 +WaitTime: 4837 +Complete diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-001/logcat.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-001/logcat.txt new file mode 100644 index 0000000..3836976 --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-001/logcat.txt @@ -0,0 +1,20 @@ +--------- beginning of main +08-27 16:01:35.017 7683 7683 I EdgeGenBench: MainActivity.onCreate: rendering high-contrast benchmark UI +08-27 16:01:36.400 7683 7683 I EdgeGenBench: MainActivity.onCreate: content view attached +08-27 16:01:36.401 7683 7683 I EdgeGenBench: MainActivity.onCreate: auto_run requested +08-27 16:01:44.154 7683 7705 I EdgeGenBench: backend=reference +08-27 16:01:44.154 7683 7705 I EdgeGenBench: CPU fallback=false +08-27 16:01:44.154 7683 7705 I EdgeGenBench: cold_ms=0.033250 +08-27 16:01:44.154 7683 7705 I EdgeGenBench: warm_mean_ms=0.002658 +08-27 16:01:44.154 7683 7705 I EdgeGenBench: warm_p95_ms=0.002667 +08-27 16:01:44.154 7683 7705 I EdgeGenBench: runs=100 +08-27 16:01:44.154 7683 7705 I EdgeGenBench: baseline_preprocess_mean_ms=38.929105 +08-27 16:01:44.154 7683 7705 I EdgeGenBench: fused_preprocess_mean_ms=13.647231 +08-27 16:01:44.154 7683 7705 I EdgeGenBench: preprocess_elements=262144 +08-27 16:01:44.154 7683 7705 I EdgeGenBench: preprocess_speedup_x=2.852528 +08-27 16:01:44.154 7683 7705 I EdgeGenBench: preprocess_max_abs_drift=0.000000 +08-27 16:01:44.154 7683 7705 I EdgeGenBench: output_max_abs_drift=0.000000 +08-27 16:01:44.154 7683 7705 I EdgeGenBench: output=0.156160 +08-27 16:01:44.154 7683 7705 I EdgeGenBench: power=not measured +08-27 16:01:44.154 7683 7705 I EdgeGenBench: placement={"backend":"reference","operators":{"ReferenceLinear":1},"cpu_fallback":false,"hardware_measurement":false} +08-27 16:01:44.221 7683 7683 I EdgeGenBench: benchmark_json={"schema_version":1,"backend":"reference","cpu_fallback":false,"cold_ms":0.03325,"warm_mean_ms":0.00265791,"warm_p95_ms":0.002667,"runs":100,"baseline_preprocess_mean_ms":38.9291046,"fused_preprocess_mean_ms":13.6472313,"preprocess_elements":262144,"preprocess_speedup_x":2.852527648,"preprocess_max_abs_drift":0,"output_max_abs_drift":0,"output":0.156159997,"runtime_page_size_bytes":16384,"power":"not measured","captured_at_epoch_ms":1787860904166} diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-001/meminfo.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-001/meminfo.txt new file mode 100644 index 0000000..25364a4 --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-001/meminfo.txt @@ -0,0 +1,50 @@ +Applications Memory Usage (in Kilobytes): +Uptime: 16882397 Realtime: 16882397 + +** MEMINFO in pid 7683 [dev.edgegenbench] ** + Pss Private Private SwapPss Rss Heap Heap Heap + Total Dirty Clean Dirty Total Size Alloc Free + ------ ------ ------ ------ ------ ------ ------ ------ + Native Heap 17258 17216 0 77 18080 24384 17314 1938 + Dalvik Heap 4283 4160 32 333 5168 6687 3344 3343 + Dalvik Other 6454 2464 0 169 10688 + Stack 928 928 0 0 928 + Ashmem 65 0 0 0 608 + Other dev 80 0 32 0 688 + .so mmap 4299 528 384 21 34032 + .jar mmap 3489 0 400 0 40352 + .apk mmap 8869 64 8560 0 10224 + .ttf mmap 266 0 0 0 1024 + .dex mmap 22 0 0 0 912 + .oat mmap 69 0 0 0 1664 + .art mmap 10466 9312 512 113 25808 + Other mmap 2143 16 0 0 5152 + Unknown 1130 1024 80 14 1664 + TOTAL 60548 35712 10000 727 156992 31071 20658 5281 + + App Summary + Pss(KB) Rss(KB) + ------ ------ + Java Heap: 13984 30976 + Native Heap: 17216 18080 + Code: 9968 96208 + Stack: 928 928 + Graphics: 0 0 + Private Other: 3616 + System: 14836 + Unknown: 10800 + + TOTAL PSS: 60548 TOTAL RSS: 156992 TOTAL SWAP PSS: 727 + + Objects + Views: 13 ViewRootImpl: 1 + AppContexts: 7 Activities: 1 + Assets: 20 AssetManagers: 0 + Local Binders: 14 Proxy Binders: 55 + Parcel memory: 5 Parcel count: 20 + Death Recipients: 0 WebViews: 0 + + SQL + MEMORY_USED: 0 + PAGECACHE_OVERFLOW: 0 MALLOC_SIZE: 0 + diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-001/thermal.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-001/thermal.txt new file mode 100644 index 0000000..3c8a2fb --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-001/thermal.txt @@ -0,0 +1,23 @@ +IsStatusOverride: false +ThermalEventListeners: + callbacks: 5 + killed: false + broadcasts count: -1 +ThermalStatusListeners: + callbacks: 3 + killed: false + broadcasts count: -1 +Thermal Status: 0 +Cached temperatures: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +HAL Ready: true +HAL connection: + ThermalHAL 2.0 connected: yes +Current temperatures from HAL: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +Current cooling devices from HAL: + CoolingDevice{mValue=100, mType=0, mName=test cooling device} +Temperature static thresholds from HAL: + TemperatureThreshold{mType=3, mName=test temperature sensor, mHotThrottlingThresholds=[NaN, NaN, NaN, 48.0, NaN, NaN, 60.0], mColdThrottlingThresholds=[NaN, NaN, NaN, NaN, NaN, NaN, NaN]} +Temperature headroom thresholds: +[NaN, NaN, NaN, NaN, NaN, NaN, 1.4] diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-002/activity-start.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-002/activity-start.txt new file mode 100644 index 0000000..2efed0f --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-002/activity-start.txt @@ -0,0 +1,7 @@ +Starting: Intent { cmp=dev.edgegenbench/.MainActivity (has extras) } +Status: ok +LaunchState: COLD +Activity: dev.edgegenbench/.MainActivity +TotalTime: 4036 +WaitTime: 4042 +Complete diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-002/logcat.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-002/logcat.txt new file mode 100644 index 0000000..afe177e --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-002/logcat.txt @@ -0,0 +1,20 @@ +--------- beginning of main +08-27 16:01:48.212 7797 7797 I EdgeGenBench: MainActivity.onCreate: rendering high-contrast benchmark UI +08-27 16:01:49.011 7797 7797 I EdgeGenBench: MainActivity.onCreate: content view attached +08-27 16:01:49.012 7797 7797 I EdgeGenBench: MainActivity.onCreate: auto_run requested +08-27 16:01:54.321 7797 7814 I EdgeGenBench: backend=reference +08-27 16:01:54.321 7797 7814 I EdgeGenBench: CPU fallback=false +08-27 16:01:54.321 7797 7814 I EdgeGenBench: cold_ms=0.013958 +08-27 16:01:54.321 7797 7814 I EdgeGenBench: warm_mean_ms=0.002545 +08-27 16:01:54.321 7797 7814 I EdgeGenBench: warm_p95_ms=0.002750 +08-27 16:01:54.321 7797 7814 I EdgeGenBench: runs=100 +08-27 16:01:54.321 7797 7814 I EdgeGenBench: baseline_preprocess_mean_ms=21.260857 +08-27 16:01:54.321 7797 7814 I EdgeGenBench: fused_preprocess_mean_ms=11.686140 +08-27 16:01:54.321 7797 7814 I EdgeGenBench: preprocess_elements=262144 +08-27 16:01:54.321 7797 7814 I EdgeGenBench: preprocess_speedup_x=1.819322 +08-27 16:01:54.321 7797 7814 I EdgeGenBench: preprocess_max_abs_drift=0.000000 +08-27 16:01:54.321 7797 7814 I EdgeGenBench: output_max_abs_drift=0.000000 +08-27 16:01:54.321 7797 7814 I EdgeGenBench: output=0.156160 +08-27 16:01:54.321 7797 7814 I EdgeGenBench: power=not measured +08-27 16:01:54.321 7797 7814 I EdgeGenBench: placement={"backend":"reference","operators":{"ReferenceLinear":1},"cpu_fallback":false,"hardware_measurement":false} +08-27 16:01:54.375 7797 7797 I EdgeGenBench: benchmark_json={"schema_version":1,"backend":"reference","cpu_fallback":false,"cold_ms":0.013958,"warm_mean_ms":0.00254542,"warm_p95_ms":0.00275,"runs":100,"baseline_preprocess_mean_ms":21.26085666,"fused_preprocess_mean_ms":11.68614039,"preprocess_elements":262144,"preprocess_speedup_x":1.819322373,"preprocess_max_abs_drift":0,"output_max_abs_drift":0,"output":0.156159997,"runtime_page_size_bytes":16384,"power":"not measured","captured_at_epoch_ms":1787860914336} diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-002/meminfo.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-002/meminfo.txt new file mode 100644 index 0000000..5d1bf3c --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-002/meminfo.txt @@ -0,0 +1,50 @@ +Applications Memory Usage (in Kilobytes): +Uptime: 16892536 Realtime: 16892536 + +** MEMINFO in pid 7797 [dev.edgegenbench] ** + Pss Private Private SwapPss Rss Heap Heap Heap + Total Dirty Clean Dirty Total Size Alloc Free + ------ ------ ------ ------ ------ ------ ------ ------ + Native Heap 17258 17216 0 78 18080 24384 17303 2055 + Dalvik Heap 4267 4144 32 333 5152 6687 3344 3343 + Dalvik Other 6726 2752 0 169 10944 + Stack 880 880 0 0 880 + Ashmem 65 0 0 0 608 + Other dev 80 0 32 0 688 + .so mmap 4291 528 384 21 34016 + .jar mmap 3488 0 400 0 40352 + .apk mmap 8864 64 8560 0 10208 + .ttf mmap 266 0 0 0 1024 + .dex mmap 22 0 0 0 912 + .oat mmap 69 0 0 0 1664 + .art mmap 10466 9312 512 113 25808 + Other mmap 2143 16 0 0 5152 + Unknown 1082 1024 32 14 1616 + TOTAL 60695 35936 9952 728 157104 31071 20647 5398 + + App Summary + Pss(KB) Rss(KB) + ------ ------ + Java Heap: 13968 30960 + Native Heap: 17216 18080 + Code: 9984 96160 + Stack: 880 880 + Graphics: 0 0 + Private Other: 3840 + System: 14807 + Unknown: 11024 + + TOTAL PSS: 60695 TOTAL RSS: 157104 TOTAL SWAP PSS: 728 + + Objects + Views: 13 ViewRootImpl: 1 + AppContexts: 7 Activities: 1 + Assets: 20 AssetManagers: 0 + Local Binders: 14 Proxy Binders: 55 + Parcel memory: 4 Parcel count: 16 + Death Recipients: 0 WebViews: 0 + + SQL + MEMORY_USED: 0 + PAGECACHE_OVERFLOW: 0 MALLOC_SIZE: 0 + diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-002/thermal.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-002/thermal.txt new file mode 100644 index 0000000..3c8a2fb --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-002/thermal.txt @@ -0,0 +1,23 @@ +IsStatusOverride: false +ThermalEventListeners: + callbacks: 5 + killed: false + broadcasts count: -1 +ThermalStatusListeners: + callbacks: 3 + killed: false + broadcasts count: -1 +Thermal Status: 0 +Cached temperatures: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +HAL Ready: true +HAL connection: + ThermalHAL 2.0 connected: yes +Current temperatures from HAL: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +Current cooling devices from HAL: + CoolingDevice{mValue=100, mType=0, mName=test cooling device} +Temperature static thresholds from HAL: + TemperatureThreshold{mType=3, mName=test temperature sensor, mHotThrottlingThresholds=[NaN, NaN, NaN, 48.0, NaN, NaN, 60.0], mColdThrottlingThresholds=[NaN, NaN, NaN, NaN, NaN, NaN, NaN]} +Temperature headroom thresholds: +[NaN, NaN, NaN, NaN, NaN, NaN, 1.4] diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-003/activity-start.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-003/activity-start.txt new file mode 100644 index 0000000..8ba09a6 --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-003/activity-start.txt @@ -0,0 +1,7 @@ +Starting: Intent { cmp=dev.edgegenbench/.MainActivity (has extras) } +Status: ok +LaunchState: COLD +Activity: dev.edgegenbench/.MainActivity +TotalTime: 3190 +WaitTime: 3454 +Complete diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-003/logcat.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-003/logcat.txt new file mode 100644 index 0000000..fa67338 --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-003/logcat.txt @@ -0,0 +1,20 @@ +--------- beginning of main +08-27 16:01:57.633 7896 7896 I EdgeGenBench: MainActivity.onCreate: rendering high-contrast benchmark UI +08-27 16:01:58.442 7896 7896 I EdgeGenBench: MainActivity.onCreate: content view attached +08-27 16:01:58.442 7896 7896 I EdgeGenBench: MainActivity.onCreate: auto_run requested +08-27 16:02:03.924 7896 7914 I EdgeGenBench: backend=reference +08-27 16:02:03.924 7896 7914 I EdgeGenBench: CPU fallback=false +08-27 16:02:03.924 7896 7914 I EdgeGenBench: cold_ms=0.011500 +08-27 16:02:03.924 7896 7914 I EdgeGenBench: warm_mean_ms=0.002315 +08-27 16:02:03.924 7896 7914 I EdgeGenBench: warm_p95_ms=0.002584 +08-27 16:02:03.924 7896 7914 I EdgeGenBench: runs=100 +08-27 16:02:03.924 7896 7914 I EdgeGenBench: baseline_preprocess_mean_ms=23.230263 +08-27 16:02:03.924 7896 7914 I EdgeGenBench: fused_preprocess_mean_ms=12.460185 +08-27 16:02:03.924 7896 7914 I EdgeGenBench: preprocess_elements=262144 +08-27 16:02:03.924 7896 7914 I EdgeGenBench: preprocess_speedup_x=1.864359 +08-27 16:02:03.924 7896 7914 I EdgeGenBench: preprocess_max_abs_drift=0.000000 +08-27 16:02:03.924 7896 7914 I EdgeGenBench: output_max_abs_drift=0.000000 +08-27 16:02:03.924 7896 7914 I EdgeGenBench: output=0.156160 +08-27 16:02:03.924 7896 7914 I EdgeGenBench: power=not measured +08-27 16:02:03.924 7896 7914 I EdgeGenBench: placement={"backend":"reference","operators":{"ReferenceLinear":1},"cpu_fallback":false,"hardware_measurement":false} +08-27 16:02:03.982 7896 7896 I EdgeGenBench: benchmark_json={"schema_version":1,"backend":"reference","cpu_fallback":false,"cold_ms":0.0115,"warm_mean_ms":0.00231455,"warm_p95_ms":0.002584,"runs":100,"baseline_preprocess_mean_ms":23.23026294,"fused_preprocess_mean_ms":12.46018544,"preprocess_elements":262144,"preprocess_speedup_x":1.864359327,"preprocess_max_abs_drift":0,"output_max_abs_drift":0,"output":0.156159997,"runtime_page_size_bytes":16384,"power":"not measured","captured_at_epoch_ms":1787860923937} diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-003/meminfo.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-003/meminfo.txt new file mode 100644 index 0000000..592c744 --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-003/meminfo.txt @@ -0,0 +1,50 @@ +Applications Memory Usage (in Kilobytes): +Uptime: 16902219 Realtime: 16902219 + +** MEMINFO in pid 7896 [dev.edgegenbench] ** + Pss Private Private SwapPss Rss Heap Heap Heap + Total Dirty Clean Dirty Total Size Alloc Free + ------ ------ ------ ------ ------ ------ ------ ------ + Native Heap 17178 17136 0 87 18000 24384 17282 2023 + Dalvik Heap 4219 4096 32 333 5104 6687 3344 3343 + Dalvik Other 6358 2352 0 169 10608 + Stack 848 848 0 0 848 + Ashmem 65 0 0 0 608 + Other dev 64 0 16 0 672 + .so mmap 4300 528 384 21 34032 + .jar mmap 3488 0 400 0 40352 + .apk mmap 8864 64 8560 0 10208 + .ttf mmap 317 0 32 0 1088 + .dex mmap 22 0 0 0 912 + .oat mmap 69 0 0 0 1664 + .art mmap 10466 9312 512 113 25808 + Other mmap 2154 16 16 0 5152 + Unknown 1098 1040 32 14 1632 + TOTAL 60247 35392 9984 737 156688 31071 20626 5366 + + App Summary + Pss(KB) Rss(KB) + ------ ------ + Java Heap: 13920 30912 + Native Heap: 17136 18000 + Code: 10000 96288 + Stack: 848 848 + Graphics: 0 0 + Private Other: 3472 + System: 14871 + Unknown: 10640 + + TOTAL PSS: 60247 TOTAL RSS: 156688 TOTAL SWAP PSS: 737 + + Objects + Views: 13 ViewRootImpl: 1 + AppContexts: 7 Activities: 1 + Assets: 20 AssetManagers: 0 + Local Binders: 14 Proxy Binders: 55 + Parcel memory: 3 Parcel count: 14 + Death Recipients: 0 WebViews: 0 + + SQL + MEMORY_USED: 0 + PAGECACHE_OVERFLOW: 0 MALLOC_SIZE: 0 + diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-003/thermal.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-003/thermal.txt new file mode 100644 index 0000000..3c8a2fb --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-003/thermal.txt @@ -0,0 +1,23 @@ +IsStatusOverride: false +ThermalEventListeners: + callbacks: 5 + killed: false + broadcasts count: -1 +ThermalStatusListeners: + callbacks: 3 + killed: false + broadcasts count: -1 +Thermal Status: 0 +Cached temperatures: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +HAL Ready: true +HAL connection: + ThermalHAL 2.0 connected: yes +Current temperatures from HAL: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +Current cooling devices from HAL: + CoolingDevice{mValue=100, mType=0, mName=test cooling device} +Temperature static thresholds from HAL: + TemperatureThreshold{mType=3, mName=test temperature sensor, mHotThrottlingThresholds=[NaN, NaN, NaN, 48.0, NaN, NaN, 60.0], mColdThrottlingThresholds=[NaN, NaN, NaN, NaN, NaN, NaN, NaN]} +Temperature headroom thresholds: +[NaN, NaN, NaN, NaN, NaN, NaN, 1.4] diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-004/activity-start.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-004/activity-start.txt new file mode 100644 index 0000000..46b5132 --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-004/activity-start.txt @@ -0,0 +1,7 @@ +Starting: Intent { cmp=dev.edgegenbench/.MainActivity (has extras) } +Status: ok +LaunchState: COLD +Activity: dev.edgegenbench/.MainActivity +TotalTime: 5258 +WaitTime: 5395 +Complete diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-004/logcat.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-004/logcat.txt new file mode 100644 index 0000000..3b13045 --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-004/logcat.txt @@ -0,0 +1,20 @@ +--------- beginning of main +08-27 16:02:08.954 8001 8001 I EdgeGenBench: MainActivity.onCreate: rendering high-contrast benchmark UI +08-27 16:02:09.725 8001 8001 I EdgeGenBench: MainActivity.onCreate: content view attached +08-27 16:02:09.725 8001 8001 I EdgeGenBench: MainActivity.onCreate: auto_run requested +08-27 16:02:15.444 8001 8021 I EdgeGenBench: backend=reference +08-27 16:02:15.444 8001 8021 I EdgeGenBench: CPU fallback=false +08-27 16:02:15.444 8001 8021 I EdgeGenBench: cold_ms=0.020083 +08-27 16:02:15.444 8001 8021 I EdgeGenBench: warm_mean_ms=0.002310 +08-27 16:02:15.444 8001 8021 I EdgeGenBench: warm_p95_ms=0.002667 +08-27 16:02:15.444 8001 8021 I EdgeGenBench: runs=100 +08-27 16:02:15.444 8001 8021 I EdgeGenBench: baseline_preprocess_mean_ms=25.604844 +08-27 16:02:15.444 8001 8021 I EdgeGenBench: fused_preprocess_mean_ms=12.850200 +08-27 16:02:15.444 8001 8021 I EdgeGenBench: preprocess_elements=262144 +08-27 16:02:15.444 8001 8021 I EdgeGenBench: preprocess_speedup_x=1.992564 +08-27 16:02:15.444 8001 8021 I EdgeGenBench: preprocess_max_abs_drift=0.000000 +08-27 16:02:15.444 8001 8021 I EdgeGenBench: output_max_abs_drift=0.000000 +08-27 16:02:15.444 8001 8021 I EdgeGenBench: output=0.156160 +08-27 16:02:15.444 8001 8021 I EdgeGenBench: power=not measured +08-27 16:02:15.444 8001 8021 I EdgeGenBench: placement={"backend":"reference","operators":{"ReferenceLinear":1},"cpu_fallback":false,"hardware_measurement":false} +08-27 16:02:15.485 8001 8001 I EdgeGenBench: benchmark_json={"schema_version":1,"backend":"reference","cpu_fallback":false,"cold_ms":0.020083,"warm_mean_ms":0.00230957,"warm_p95_ms":0.002667,"runs":100,"baseline_preprocess_mean_ms":25.60484414,"fused_preprocess_mean_ms":12.85020045,"preprocess_elements":262144,"preprocess_speedup_x":1.992563792,"preprocess_max_abs_drift":0,"output_max_abs_drift":0,"output":0.156159997,"runtime_page_size_bytes":16384,"power":"not measured","captured_at_epoch_ms":1787860935453} diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-004/meminfo.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-004/meminfo.txt new file mode 100644 index 0000000..f913b79 --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-004/meminfo.txt @@ -0,0 +1,50 @@ +Applications Memory Usage (in Kilobytes): +Uptime: 16913785 Realtime: 16913785 + +** MEMINFO in pid 8001 [dev.edgegenbench] ** + Pss Private Private SwapPss Rss Heap Heap Heap + Total Dirty Clean Dirty Total Size Alloc Free + ------ ------ ------ ------ ------ ------ ------ ------ + Native Heap 17210 17168 0 83 18032 24128 17296 1861 + Dalvik Heap 4251 4128 32 333 5136 6687 3344 3343 + Dalvik Other 6758 2800 0 169 10960 + Stack 864 864 0 0 864 + Ashmem 65 0 0 0 608 + Other dev 80 0 32 0 688 + .so mmap 4292 528 384 21 34016 + .jar mmap 3488 0 400 0 40352 + .apk mmap 8869 64 8560 0 10224 + .ttf mmap 266 0 0 0 1024 + .dex mmap 22 0 0 0 912 + .oat mmap 69 0 0 0 1664 + .art mmap 10466 9312 512 113 25808 + Other mmap 2154 16 16 0 5152 + Unknown 1114 1024 64 14 1648 + TOTAL 60701 35904 10000 733 157088 30815 20640 5204 + + App Summary + Pss(KB) Rss(KB) + ------ ------ + Java Heap: 13952 30944 + Native Heap: 17168 18032 + Code: 10016 96176 + Stack: 864 864 + Graphics: 0 0 + Private Other: 3904 + System: 14797 + Unknown: 11072 + + TOTAL PSS: 60701 TOTAL RSS: 157088 TOTAL SWAP PSS: 733 + + Objects + Views: 13 ViewRootImpl: 1 + AppContexts: 7 Activities: 1 + Assets: 20 AssetManagers: 0 + Local Binders: 14 Proxy Binders: 55 + Parcel memory: 4 Parcel count: 16 + Death Recipients: 0 WebViews: 0 + + SQL + MEMORY_USED: 0 + PAGECACHE_OVERFLOW: 0 MALLOC_SIZE: 0 + diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-004/thermal.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-004/thermal.txt new file mode 100644 index 0000000..3c8a2fb --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-004/thermal.txt @@ -0,0 +1,23 @@ +IsStatusOverride: false +ThermalEventListeners: + callbacks: 5 + killed: false + broadcasts count: -1 +ThermalStatusListeners: + callbacks: 3 + killed: false + broadcasts count: -1 +Thermal Status: 0 +Cached temperatures: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +HAL Ready: true +HAL connection: + ThermalHAL 2.0 connected: yes +Current temperatures from HAL: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +Current cooling devices from HAL: + CoolingDevice{mValue=100, mType=0, mName=test cooling device} +Temperature static thresholds from HAL: + TemperatureThreshold{mType=3, mName=test temperature sensor, mHotThrottlingThresholds=[NaN, NaN, NaN, 48.0, NaN, NaN, 60.0], mColdThrottlingThresholds=[NaN, NaN, NaN, NaN, NaN, NaN, NaN]} +Temperature headroom thresholds: +[NaN, NaN, NaN, NaN, NaN, NaN, 1.4] diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-005/activity-start.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-005/activity-start.txt new file mode 100644 index 0000000..7fad886 --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-005/activity-start.txt @@ -0,0 +1,7 @@ +Starting: Intent { cmp=dev.edgegenbench/.MainActivity (has extras) } +Status: ok +LaunchState: COLD +Activity: dev.edgegenbench/.MainActivity +TotalTime: 3484 +WaitTime: 3508 +Complete diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-005/logcat.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-005/logcat.txt new file mode 100644 index 0000000..aaa2eba --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-005/logcat.txt @@ -0,0 +1,20 @@ +--------- beginning of main +08-27 16:02:18.186 8105 8105 I EdgeGenBench: MainActivity.onCreate: rendering high-contrast benchmark UI +08-27 16:02:19.318 8105 8105 I EdgeGenBench: MainActivity.onCreate: content view attached +08-27 16:02:19.318 8105 8105 I EdgeGenBench: MainActivity.onCreate: auto_run requested +08-27 16:02:25.274 8105 8122 I EdgeGenBench: backend=reference +08-27 16:02:25.274 8105 8122 I EdgeGenBench: CPU fallback=false +08-27 16:02:25.274 8105 8122 I EdgeGenBench: cold_ms=0.012625 +08-27 16:02:25.274 8105 8122 I EdgeGenBench: warm_mean_ms=0.002312 +08-27 16:02:25.274 8105 8122 I EdgeGenBench: warm_p95_ms=0.002583 +08-27 16:02:25.274 8105 8122 I EdgeGenBench: runs=100 +08-27 16:02:25.274 8105 8122 I EdgeGenBench: baseline_preprocess_mean_ms=23.244588 +08-27 16:02:25.274 8105 8122 I EdgeGenBench: fused_preprocess_mean_ms=12.173451 +08-27 16:02:25.274 8105 8122 I EdgeGenBench: preprocess_elements=262144 +08-27 16:02:25.274 8105 8122 I EdgeGenBench: preprocess_speedup_x=1.909449 +08-27 16:02:25.274 8105 8122 I EdgeGenBench: preprocess_max_abs_drift=0.000000 +08-27 16:02:25.274 8105 8122 I EdgeGenBench: output_max_abs_drift=0.000000 +08-27 16:02:25.274 8105 8122 I EdgeGenBench: output=0.156160 +08-27 16:02:25.274 8105 8122 I EdgeGenBench: power=not measured +08-27 16:02:25.274 8105 8122 I EdgeGenBench: placement={"backend":"reference","operators":{"ReferenceLinear":1},"cpu_fallback":false,"hardware_measurement":false} +08-27 16:02:25.328 8105 8105 I EdgeGenBench: benchmark_json={"schema_version":1,"backend":"reference","cpu_fallback":false,"cold_ms":0.012625,"warm_mean_ms":0.00231206,"warm_p95_ms":0.002583,"runs":100,"baseline_preprocess_mean_ms":23.24458831,"fused_preprocess_mean_ms":12.17345126,"preprocess_elements":262144,"preprocess_speedup_x":1.909449327,"preprocess_max_abs_drift":0,"output_max_abs_drift":0,"output":0.156159997,"runtime_page_size_bytes":16384,"power":"not measured","captured_at_epoch_ms":1787860945287} diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-005/meminfo.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-005/meminfo.txt new file mode 100644 index 0000000..3866989 --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-005/meminfo.txt @@ -0,0 +1,50 @@ +Applications Memory Usage (in Kilobytes): +Uptime: 16923575 Realtime: 16923575 + +** MEMINFO in pid 8105 [dev.edgegenbench] ** + Pss Private Private SwapPss Rss Heap Heap Heap + Total Dirty Clean Dirty Total Size Alloc Free + ------ ------ ------ ------ ------ ------ ------ ------ + Native Heap 17274 17232 0 77 18096 24384 17302 2020 + Dalvik Heap 4235 4112 32 333 5120 6687 3344 3343 + Dalvik Other 6742 2736 0 169 10992 + Stack 880 880 0 0 880 + Ashmem 65 0 0 0 608 + Other dev 80 0 32 0 688 + .so mmap 4300 528 384 21 34032 + .jar mmap 3486 0 400 0 40352 + .apk mmap 8869 64 8560 0 10224 + .ttf mmap 266 0 0 0 1024 + .dex mmap 22 0 0 0 912 + .oat mmap 69 0 0 0 1664 + .art mmap 10466 9312 512 113 25808 + Other mmap 2154 16 16 0 5152 + Unknown 1082 1024 32 14 1616 + TOTAL 60717 35904 9968 727 157168 31071 20646 5363 + + App Summary + Pss(KB) Rss(KB) + ------ ------ + Java Heap: 13936 30928 + Native Heap: 17232 18096 + Code: 9968 96240 + Stack: 880 880 + Graphics: 0 0 + Private Other: 3856 + System: 14845 + Unknown: 11024 + + TOTAL PSS: 60717 TOTAL RSS: 157168 TOTAL SWAP PSS: 727 + + Objects + Views: 13 ViewRootImpl: 1 + AppContexts: 7 Activities: 1 + Assets: 20 AssetManagers: 0 + Local Binders: 14 Proxy Binders: 55 + Parcel memory: 4 Parcel count: 16 + Death Recipients: 0 WebViews: 0 + + SQL + MEMORY_USED: 0 + PAGECACHE_OVERFLOW: 0 MALLOC_SIZE: 0 + diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-005/thermal.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-005/thermal.txt new file mode 100644 index 0000000..3c8a2fb --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-005/thermal.txt @@ -0,0 +1,23 @@ +IsStatusOverride: false +ThermalEventListeners: + callbacks: 5 + killed: false + broadcasts count: -1 +ThermalStatusListeners: + callbacks: 3 + killed: false + broadcasts count: -1 +Thermal Status: 0 +Cached temperatures: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +HAL Ready: true +HAL connection: + ThermalHAL 2.0 connected: yes +Current temperatures from HAL: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +Current cooling devices from HAL: + CoolingDevice{mValue=100, mType=0, mName=test cooling device} +Temperature static thresholds from HAL: + TemperatureThreshold{mType=3, mName=test temperature sensor, mHotThrottlingThresholds=[NaN, NaN, NaN, 48.0, NaN, NaN, 60.0], mColdThrottlingThresholds=[NaN, NaN, NaN, NaN, NaN, NaN, NaN]} +Temperature headroom thresholds: +[NaN, NaN, NaN, NaN, NaN, NaN, 1.4] diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-006/activity-start.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-006/activity-start.txt new file mode 100644 index 0000000..7321442 --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-006/activity-start.txt @@ -0,0 +1,7 @@ +Starting: Intent { cmp=dev.edgegenbench/.MainActivity (has extras) } +Status: ok +LaunchState: COLD +Activity: dev.edgegenbench/.MainActivity +TotalTime: 4001 +WaitTime: 4008 +Complete diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-006/logcat.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-006/logcat.txt new file mode 100644 index 0000000..fcbfdaa --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-006/logcat.txt @@ -0,0 +1,20 @@ +--------- beginning of main +08-27 16:02:28.218 8205 8205 I EdgeGenBench: MainActivity.onCreate: rendering high-contrast benchmark UI +08-27 16:02:29.659 8205 8205 I EdgeGenBench: MainActivity.onCreate: content view attached +08-27 16:02:29.659 8205 8205 I EdgeGenBench: MainActivity.onCreate: auto_run requested +08-27 16:02:36.015 8205 8228 I EdgeGenBench: backend=reference +08-27 16:02:36.015 8205 8228 I EdgeGenBench: CPU fallback=false +08-27 16:02:36.015 8205 8228 I EdgeGenBench: cold_ms=0.060667 +08-27 16:02:36.015 8205 8228 I EdgeGenBench: warm_mean_ms=0.002259 +08-27 16:02:36.015 8205 8228 I EdgeGenBench: warm_p95_ms=0.002458 +08-27 16:02:36.015 8205 8228 I EdgeGenBench: runs=100 +08-27 16:02:36.015 8205 8228 I EdgeGenBench: baseline_preprocess_mean_ms=30.244593 +08-27 16:02:36.015 8205 8228 I EdgeGenBench: fused_preprocess_mean_ms=14.820786 +08-27 16:02:36.015 8205 8228 I EdgeGenBench: preprocess_elements=262144 +08-27 16:02:36.015 8205 8228 I EdgeGenBench: preprocess_speedup_x=2.040688 +08-27 16:02:36.015 8205 8228 I EdgeGenBench: preprocess_max_abs_drift=0.000000 +08-27 16:02:36.015 8205 8228 I EdgeGenBench: output_max_abs_drift=0.000000 +08-27 16:02:36.015 8205 8228 I EdgeGenBench: output=0.156160 +08-27 16:02:36.015 8205 8228 I EdgeGenBench: power=not measured +08-27 16:02:36.015 8205 8228 I EdgeGenBench: placement={"backend":"reference","operators":{"ReferenceLinear":1},"cpu_fallback":false,"hardware_measurement":false} +08-27 16:02:36.070 8205 8205 I EdgeGenBench: benchmark_json={"schema_version":1,"backend":"reference","cpu_fallback":false,"cold_ms":0.060667,"warm_mean_ms":0.00225875,"warm_p95_ms":0.002458,"runs":100,"baseline_preprocess_mean_ms":30.2445934,"fused_preprocess_mean_ms":14.82078586,"preprocess_elements":262144,"preprocess_speedup_x":2.040687564,"preprocess_max_abs_drift":0,"output_max_abs_drift":0,"output":0.156159997,"runtime_page_size_bytes":16384,"power":"not measured","captured_at_epoch_ms":1787860956028} diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-006/meminfo.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-006/meminfo.txt new file mode 100644 index 0000000..77e3702 --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-006/meminfo.txt @@ -0,0 +1,50 @@ +Applications Memory Usage (in Kilobytes): +Uptime: 16934334 Realtime: 16934334 + +** MEMINFO in pid 8205 [dev.edgegenbench] ** + Pss Private Private SwapPss Rss Heap Heap Heap + Total Dirty Clean Dirty Total Size Alloc Free + ------ ------ ------ ------ ------ ------ ------ ------ + Native Heap 17258 17216 0 76 18080 24384 17300 1996 + Dalvik Heap 4251 4128 32 333 5136 6687 3344 3343 + Dalvik Other 6758 2784 0 169 10976 + Stack 848 848 0 0 848 + Ashmem 65 0 0 0 608 + Other dev 81 0 32 0 688 + .so mmap 4346 528 384 21 34032 + .jar mmap 3486 0 400 0 40352 + .apk mmap 8869 64 8560 0 10224 + .ttf mmap 306 0 16 0 1136 + .dex mmap 22 0 0 0 912 + .oat mmap 69 0 0 0 1664 + .art mmap 10466 9312 512 113 25808 + Other mmap 2155 16 16 0 5152 + Unknown 1082 1024 32 14 1616 + TOTAL 60788 35920 9984 726 157232 31071 20644 5339 + + App Summary + Pss(KB) Rss(KB) + ------ ------ + Java Heap: 13952 30944 + Native Heap: 17216 18080 + Code: 10000 96304 + Stack: 848 848 + Graphics: 0 0 + Private Other: 3888 + System: 14884 + Unknown: 11056 + + TOTAL PSS: 60788 TOTAL RSS: 157232 TOTAL SWAP PSS: 726 + + Objects + Views: 13 ViewRootImpl: 1 + AppContexts: 7 Activities: 1 + Assets: 20 AssetManagers: 0 + Local Binders: 14 Proxy Binders: 55 + Parcel memory: 4 Parcel count: 16 + Death Recipients: 0 WebViews: 0 + + SQL + MEMORY_USED: 0 + PAGECACHE_OVERFLOW: 0 MALLOC_SIZE: 0 + diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-006/thermal.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-006/thermal.txt new file mode 100644 index 0000000..3c8a2fb --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-006/thermal.txt @@ -0,0 +1,23 @@ +IsStatusOverride: false +ThermalEventListeners: + callbacks: 5 + killed: false + broadcasts count: -1 +ThermalStatusListeners: + callbacks: 3 + killed: false + broadcasts count: -1 +Thermal Status: 0 +Cached temperatures: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +HAL Ready: true +HAL connection: + ThermalHAL 2.0 connected: yes +Current temperatures from HAL: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +Current cooling devices from HAL: + CoolingDevice{mValue=100, mType=0, mName=test cooling device} +Temperature static thresholds from HAL: + TemperatureThreshold{mType=3, mName=test temperature sensor, mHotThrottlingThresholds=[NaN, NaN, NaN, 48.0, NaN, NaN, 60.0], mColdThrottlingThresholds=[NaN, NaN, NaN, NaN, NaN, NaN, NaN]} +Temperature headroom thresholds: +[NaN, NaN, NaN, NaN, NaN, NaN, 1.4] diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-007/activity-start.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-007/activity-start.txt new file mode 100644 index 0000000..b9e1726 --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-007/activity-start.txt @@ -0,0 +1,7 @@ +Starting: Intent { cmp=dev.edgegenbench/.MainActivity (has extras) } +Status: ok +LaunchState: COLD +Activity: dev.edgegenbench/.MainActivity +TotalTime: 4840 +WaitTime: 4842 +Complete diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-007/logcat.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-007/logcat.txt new file mode 100644 index 0000000..73b056b --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-007/logcat.txt @@ -0,0 +1,20 @@ +--------- beginning of main +08-27 16:02:41.672 8318 8318 I EdgeGenBench: MainActivity.onCreate: rendering high-contrast benchmark UI +08-27 16:02:42.225 8318 8318 I EdgeGenBench: MainActivity.onCreate: content view attached +08-27 16:02:42.225 8318 8318 I EdgeGenBench: MainActivity.onCreate: auto_run requested +08-27 16:02:47.786 8318 8336 I EdgeGenBench: backend=reference +08-27 16:02:47.786 8318 8336 I EdgeGenBench: CPU fallback=false +08-27 16:02:47.786 8318 8336 I EdgeGenBench: cold_ms=0.035708 +08-27 16:02:47.786 8318 8336 I EdgeGenBench: warm_mean_ms=0.003924 +08-27 16:02:47.786 8318 8336 I EdgeGenBench: warm_p95_ms=0.006250 +08-27 16:02:47.786 8318 8336 I EdgeGenBench: runs=100 +08-27 16:02:47.786 8318 8336 I EdgeGenBench: baseline_preprocess_mean_ms=21.789849 +08-27 16:02:47.786 8318 8336 I EdgeGenBench: fused_preprocess_mean_ms=12.292673 +08-27 16:02:47.786 8318 8336 I EdgeGenBench: preprocess_elements=262144 +08-27 16:02:47.786 8318 8336 I EdgeGenBench: preprocess_speedup_x=1.772588 +08-27 16:02:47.786 8318 8336 I EdgeGenBench: preprocess_max_abs_drift=0.000000 +08-27 16:02:47.786 8318 8336 I EdgeGenBench: output_max_abs_drift=0.000000 +08-27 16:02:47.786 8318 8336 I EdgeGenBench: output=0.156160 +08-27 16:02:47.786 8318 8336 I EdgeGenBench: power=not measured +08-27 16:02:47.786 8318 8336 I EdgeGenBench: placement={"backend":"reference","operators":{"ReferenceLinear":1},"cpu_fallback":false,"hardware_measurement":false} +08-27 16:02:47.841 8318 8318 I EdgeGenBench: benchmark_json={"schema_version":1,"backend":"reference","cpu_fallback":false,"cold_ms":0.035708,"warm_mean_ms":0.00392369,"warm_p95_ms":0.00625,"runs":100,"baseline_preprocess_mean_ms":21.78984912,"fused_preprocess_mean_ms":12.2926725,"preprocess_elements":262144,"preprocess_speedup_x":1.772588436,"preprocess_max_abs_drift":0,"output_max_abs_drift":0,"output":0.156159997,"runtime_page_size_bytes":16384,"power":"not measured","captured_at_epoch_ms":1787860967799} diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-007/meminfo.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-007/meminfo.txt new file mode 100644 index 0000000..f253db5 --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-007/meminfo.txt @@ -0,0 +1,50 @@ +Applications Memory Usage (in Kilobytes): +Uptime: 16946104 Realtime: 16946104 + +** MEMINFO in pid 8318 [dev.edgegenbench] ** + Pss Private Private SwapPss Rss Heap Heap Heap + Total Dirty Clean Dirty Total Size Alloc Free + ------ ------ ------ ------ ------ ------ ------ ------ + Native Heap 17226 17184 0 78 18048 24384 17290 2043 + Dalvik Heap 4235 4112 32 333 5120 6687 3344 3343 + Dalvik Other 6246 2272 0 169 10464 + Stack 848 848 0 0 848 + Ashmem 65 0 0 0 608 + Other dev 81 0 32 0 688 + .so mmap 4339 528 384 21 34016 + .jar mmap 3486 0 400 0 40352 + .apk mmap 8864 64 8560 0 10208 + .ttf mmap 317 0 32 0 1088 + .dex mmap 22 0 0 0 912 + .oat mmap 69 0 0 0 1664 + .art mmap 10466 9312 512 113 25808 + Other mmap 2155 16 16 0 5152 + Unknown 1086 1008 48 14 1632 + TOTAL 60233 35344 10016 728 156608 31071 20634 5386 + + App Summary + Pss(KB) Rss(KB) + ------ ------ + Java Heap: 13936 30928 + Native Heap: 17184 18048 + Code: 10016 96224 + Stack: 848 848 + Graphics: 0 0 + Private Other: 3376 + System: 14873 + Unknown: 10560 + + TOTAL PSS: 60233 TOTAL RSS: 156608 TOTAL SWAP PSS: 728 + + Objects + Views: 13 ViewRootImpl: 1 + AppContexts: 7 Activities: 1 + Assets: 20 AssetManagers: 0 + Local Binders: 14 Proxy Binders: 55 + Parcel memory: 3 Parcel count: 14 + Death Recipients: 0 WebViews: 0 + + SQL + MEMORY_USED: 0 + PAGECACHE_OVERFLOW: 0 MALLOC_SIZE: 0 + diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-007/thermal.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-007/thermal.txt new file mode 100644 index 0000000..3c8a2fb --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-007/thermal.txt @@ -0,0 +1,23 @@ +IsStatusOverride: false +ThermalEventListeners: + callbacks: 5 + killed: false + broadcasts count: -1 +ThermalStatusListeners: + callbacks: 3 + killed: false + broadcasts count: -1 +Thermal Status: 0 +Cached temperatures: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +HAL Ready: true +HAL connection: + ThermalHAL 2.0 connected: yes +Current temperatures from HAL: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +Current cooling devices from HAL: + CoolingDevice{mValue=100, mType=0, mName=test cooling device} +Temperature static thresholds from HAL: + TemperatureThreshold{mType=3, mName=test temperature sensor, mHotThrottlingThresholds=[NaN, NaN, NaN, 48.0, NaN, NaN, 60.0], mColdThrottlingThresholds=[NaN, NaN, NaN, NaN, NaN, NaN, NaN]} +Temperature headroom thresholds: +[NaN, NaN, NaN, NaN, NaN, NaN, 1.4] diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-008/activity-start.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-008/activity-start.txt new file mode 100644 index 0000000..8f36475 --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-008/activity-start.txt @@ -0,0 +1,7 @@ +Starting: Intent { cmp=dev.edgegenbench/.MainActivity (has extras) } +Status: ok +LaunchState: COLD +Activity: dev.edgegenbench/.MainActivity +TotalTime: 3804 +WaitTime: 3875 +Complete diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-008/logcat.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-008/logcat.txt new file mode 100644 index 0000000..ba1d470 --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-008/logcat.txt @@ -0,0 +1,20 @@ +--------- beginning of main +08-27 16:02:52.219 8436 8436 I EdgeGenBench: MainActivity.onCreate: rendering high-contrast benchmark UI +08-27 16:02:52.638 8436 8436 I EdgeGenBench: MainActivity.onCreate: content view attached +08-27 16:02:52.638 8436 8436 I EdgeGenBench: MainActivity.onCreate: auto_run requested +08-27 16:02:58.318 8436 8454 I EdgeGenBench: backend=reference +08-27 16:02:58.318 8436 8454 I EdgeGenBench: CPU fallback=false +08-27 16:02:58.318 8436 8454 I EdgeGenBench: cold_ms=0.014709 +08-27 16:02:58.318 8436 8454 I EdgeGenBench: warm_mean_ms=0.002855 +08-27 16:02:58.318 8436 8454 I EdgeGenBench: warm_p95_ms=0.006041 +08-27 16:02:58.318 8436 8454 I EdgeGenBench: runs=100 +08-27 16:02:58.318 8436 8454 I EdgeGenBench: baseline_preprocess_mean_ms=21.970452 +08-27 16:02:58.318 8436 8454 I EdgeGenBench: fused_preprocess_mean_ms=12.135276 +08-27 16:02:58.318 8436 8454 I EdgeGenBench: preprocess_elements=262144 +08-27 16:02:58.318 8436 8454 I EdgeGenBench: preprocess_speedup_x=1.810462 +08-27 16:02:58.318 8436 8454 I EdgeGenBench: preprocess_max_abs_drift=0.000000 +08-27 16:02:58.318 8436 8454 I EdgeGenBench: output_max_abs_drift=0.000000 +08-27 16:02:58.318 8436 8454 I EdgeGenBench: output=0.156160 +08-27 16:02:58.318 8436 8454 I EdgeGenBench: power=not measured +08-27 16:02:58.318 8436 8454 I EdgeGenBench: placement={"backend":"reference","operators":{"ReferenceLinear":1},"cpu_fallback":false,"hardware_measurement":false} +08-27 16:02:58.377 8436 8436 I EdgeGenBench: benchmark_json={"schema_version":1,"backend":"reference","cpu_fallback":false,"cold_ms":0.014709,"warm_mean_ms":0.00285543,"warm_p95_ms":0.006041,"runs":100,"baseline_preprocess_mean_ms":21.97045166,"fused_preprocess_mean_ms":12.13527629,"preprocess_elements":262144,"preprocess_speedup_x":1.810461594,"preprocess_max_abs_drift":0,"output_max_abs_drift":0,"output":0.156159997,"runtime_page_size_bytes":16384,"power":"not measured","captured_at_epoch_ms":1787860978328} diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-008/meminfo.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-008/meminfo.txt new file mode 100644 index 0000000..3f7eb2d --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-008/meminfo.txt @@ -0,0 +1,50 @@ +Applications Memory Usage (in Kilobytes): +Uptime: 16956671 Realtime: 16956671 + +** MEMINFO in pid 8436 [dev.edgegenbench] ** + Pss Private Private SwapPss Rss Heap Heap Heap + Total Dirty Clean Dirty Total Size Alloc Free + ------ ------ ------ ------ ------ ------ ------ ------ + Native Heap 17258 17216 0 77 18080 24384 17305 1999 + Dalvik Heap 4267 4144 32 333 5152 6687 3344 3343 + Dalvik Other 6726 2768 0 169 10928 + Stack 928 928 0 0 928 + Ashmem 65 0 0 0 608 + Other dev 81 0 32 0 688 + .so mmap 4346 528 384 21 34032 + .jar mmap 3486 0 400 0 40352 + .apk mmap 8864 64 8560 0 10208 + .ttf mmap 295 0 16 0 1088 + .dex mmap 22 0 0 0 912 + .oat mmap 69 0 0 0 1664 + .art mmap 10466 9312 512 113 25808 + Other mmap 2155 16 16 0 5152 + Unknown 1098 1040 32 14 1632 + TOTAL 60853 36016 9984 727 157232 31071 20649 5342 + + App Summary + Pss(KB) Rss(KB) + ------ ------ + Java Heap: 13968 30960 + Native Heap: 17216 18080 + Code: 10016 96224 + Stack: 928 928 + Graphics: 0 0 + Private Other: 3872 + System: 14853 + Unknown: 11040 + + TOTAL PSS: 60853 TOTAL RSS: 157232 TOTAL SWAP PSS: 727 + + Objects + Views: 13 ViewRootImpl: 1 + AppContexts: 7 Activities: 1 + Assets: 20 AssetManagers: 0 + Local Binders: 14 Proxy Binders: 54 + Parcel memory: 5 Parcel count: 20 + Death Recipients: 0 WebViews: 0 + + SQL + MEMORY_USED: 0 + PAGECACHE_OVERFLOW: 0 MALLOC_SIZE: 0 + diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-008/thermal.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-008/thermal.txt new file mode 100644 index 0000000..3c8a2fb --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-008/thermal.txt @@ -0,0 +1,23 @@ +IsStatusOverride: false +ThermalEventListeners: + callbacks: 5 + killed: false + broadcasts count: -1 +ThermalStatusListeners: + callbacks: 3 + killed: false + broadcasts count: -1 +Thermal Status: 0 +Cached temperatures: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +HAL Ready: true +HAL connection: + ThermalHAL 2.0 connected: yes +Current temperatures from HAL: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +Current cooling devices from HAL: + CoolingDevice{mValue=100, mType=0, mName=test cooling device} +Temperature static thresholds from HAL: + TemperatureThreshold{mType=3, mName=test temperature sensor, mHotThrottlingThresholds=[NaN, NaN, NaN, 48.0, NaN, NaN, 60.0], mColdThrottlingThresholds=[NaN, NaN, NaN, NaN, NaN, NaN, NaN]} +Temperature headroom thresholds: +[NaN, NaN, NaN, NaN, NaN, NaN, 1.4] diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-009/activity-start.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-009/activity-start.txt new file mode 100644 index 0000000..faa8233 --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-009/activity-start.txt @@ -0,0 +1,7 @@ +Starting: Intent { cmp=dev.edgegenbench/.MainActivity (has extras) } +Status: ok +LaunchState: COLD +Activity: dev.edgegenbench/.MainActivity +TotalTime: 3895 +WaitTime: 3908 +Complete diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-009/logcat.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-009/logcat.txt new file mode 100644 index 0000000..d5840ec --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-009/logcat.txt @@ -0,0 +1,20 @@ +--------- beginning of main +08-27 16:03:01.281 8544 8544 I EdgeGenBench: MainActivity.onCreate: rendering high-contrast benchmark UI +08-27 16:03:02.118 8544 8544 I EdgeGenBench: MainActivity.onCreate: content view attached +08-27 16:03:02.119 8544 8544 I EdgeGenBench: MainActivity.onCreate: auto_run requested +08-27 16:03:08.642 8544 8564 I EdgeGenBench: backend=reference +08-27 16:03:08.642 8544 8564 I EdgeGenBench: CPU fallback=false +08-27 16:03:08.642 8544 8564 I EdgeGenBench: cold_ms=0.011625 +08-27 16:03:08.642 8544 8564 I EdgeGenBench: warm_mean_ms=0.002335 +08-27 16:03:08.642 8544 8564 I EdgeGenBench: warm_p95_ms=0.002708 +08-27 16:03:08.642 8544 8564 I EdgeGenBench: runs=100 +08-27 16:03:08.642 8544 8564 I EdgeGenBench: baseline_preprocess_mean_ms=32.760015 +08-27 16:03:08.642 8544 8564 I EdgeGenBench: fused_preprocess_mean_ms=11.625028 +08-27 16:03:08.642 8544 8564 I EdgeGenBench: preprocess_elements=262144 +08-27 16:03:08.642 8544 8564 I EdgeGenBench: preprocess_speedup_x=2.818059 +08-27 16:03:08.642 8544 8564 I EdgeGenBench: preprocess_max_abs_drift=0.000000 +08-27 16:03:08.642 8544 8564 I EdgeGenBench: output_max_abs_drift=0.000000 +08-27 16:03:08.642 8544 8564 I EdgeGenBench: output=0.156160 +08-27 16:03:08.642 8544 8564 I EdgeGenBench: power=not measured +08-27 16:03:08.642 8544 8564 I EdgeGenBench: placement={"backend":"reference","operators":{"ReferenceLinear":1},"cpu_fallback":false,"hardware_measurement":false} +08-27 16:03:08.695 8544 8544 I EdgeGenBench: benchmark_json={"schema_version":1,"backend":"reference","cpu_fallback":false,"cold_ms":0.011625,"warm_mean_ms":0.00233504,"warm_p95_ms":0.002708,"runs":100,"baseline_preprocess_mean_ms":32.7600154,"fused_preprocess_mean_ms":11.62502804,"preprocess_elements":262144,"preprocess_speedup_x":2.818059044,"preprocess_max_abs_drift":0,"output_max_abs_drift":0,"output":0.156159997,"runtime_page_size_bytes":16384,"power":"not measured","captured_at_epoch_ms":1787860988655} diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-009/meminfo.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-009/meminfo.txt new file mode 100644 index 0000000..c093564 --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-009/meminfo.txt @@ -0,0 +1,50 @@ +Applications Memory Usage (in Kilobytes): +Uptime: 16966725 Realtime: 16966725 + +** MEMINFO in pid 8544 [dev.edgegenbench] ** + Pss Private Private SwapPss Rss Heap Heap Heap + Total Dirty Clean Dirty Total Size Alloc Free + ------ ------ ------ ------ ------ ------ ------ ------ + Native Heap 17322 17280 0 77 18144 24384 17323 2056 + Dalvik Heap 4283 4160 32 333 5168 6687 3408 3279 + Dalvik Other 6454 2464 0 169 10688 + Stack 960 960 0 0 960 + Ashmem 65 0 0 0 608 + Other dev 81 0 32 0 688 + .so mmap 4339 528 384 21 34016 + .jar mmap 3486 0 400 0 40352 + .apk mmap 8848 64 8544 0 10192 + .ttf mmap 295 0 16 0 1088 + .dex mmap 22 0 0 0 912 + .oat mmap 69 0 0 0 1664 + .art mmap 10466 9312 512 113 25808 + Other mmap 2155 16 16 0 5152 + Unknown 1070 1008 32 14 1616 + TOTAL 60642 35792 9968 727 157056 31071 20731 5335 + + App Summary + Pss(KB) Rss(KB) + ------ ------ + Java Heap: 13984 30976 + Native Heap: 17280 18144 + Code: 9968 96224 + Stack: 960 960 + Graphics: 0 0 + Private Other: 3568 + System: 14882 + Unknown: 10752 + + TOTAL PSS: 60642 TOTAL RSS: 157056 TOTAL SWAP PSS: 727 + + Objects + Views: 13 ViewRootImpl: 1 + AppContexts: 7 Activities: 1 + Assets: 20 AssetManagers: 0 + Local Binders: 14 Proxy Binders: 52 + Parcel memory: 5 Parcel count: 22 + Death Recipients: 0 WebViews: 0 + + SQL + MEMORY_USED: 0 + PAGECACHE_OVERFLOW: 0 MALLOC_SIZE: 0 + diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-009/thermal.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-009/thermal.txt new file mode 100644 index 0000000..3c8a2fb --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-009/thermal.txt @@ -0,0 +1,23 @@ +IsStatusOverride: false +ThermalEventListeners: + callbacks: 5 + killed: false + broadcasts count: -1 +ThermalStatusListeners: + callbacks: 3 + killed: false + broadcasts count: -1 +Thermal Status: 0 +Cached temperatures: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +HAL Ready: true +HAL connection: + ThermalHAL 2.0 connected: yes +Current temperatures from HAL: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +Current cooling devices from HAL: + CoolingDevice{mValue=100, mType=0, mName=test cooling device} +Temperature static thresholds from HAL: + TemperatureThreshold{mType=3, mName=test temperature sensor, mHotThrottlingThresholds=[NaN, NaN, NaN, 48.0, NaN, NaN, 60.0], mColdThrottlingThresholds=[NaN, NaN, NaN, NaN, NaN, NaN, NaN]} +Temperature headroom thresholds: +[NaN, NaN, NaN, NaN, NaN, NaN, 1.4] diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-010/activity-start.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-010/activity-start.txt new file mode 100644 index 0000000..5617259 --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-010/activity-start.txt @@ -0,0 +1,7 @@ +Starting: Intent { cmp=dev.edgegenbench/.MainActivity (has extras) } +Status: ok +LaunchState: COLD +Activity: dev.edgegenbench/.MainActivity +TotalTime: 3246 +WaitTime: 3348 +Complete diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-010/logcat.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-010/logcat.txt new file mode 100644 index 0000000..a8e53ae --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-010/logcat.txt @@ -0,0 +1,20 @@ +--------- beginning of main +08-27 16:03:11.092 8650 8650 I EdgeGenBench: MainActivity.onCreate: rendering high-contrast benchmark UI +08-27 16:03:12.432 8650 8650 I EdgeGenBench: MainActivity.onCreate: content view attached +08-27 16:03:12.432 8650 8650 I EdgeGenBench: MainActivity.onCreate: auto_run requested +08-27 16:03:17.740 8650 8668 I EdgeGenBench: backend=reference +08-27 16:03:17.740 8650 8668 I EdgeGenBench: CPU fallback=false +08-27 16:03:17.740 8650 8668 I EdgeGenBench: cold_ms=0.012084 +08-27 16:03:17.740 8650 8668 I EdgeGenBench: warm_mean_ms=0.002570 +08-27 16:03:17.740 8650 8668 I EdgeGenBench: warm_p95_ms=0.002625 +08-27 16:03:17.740 8650 8668 I EdgeGenBench: runs=100 +08-27 16:03:17.740 8650 8668 I EdgeGenBench: baseline_preprocess_mean_ms=24.581362 +08-27 16:03:17.740 8650 8668 I EdgeGenBench: fused_preprocess_mean_ms=12.013676 +08-27 16:03:17.740 8650 8668 I EdgeGenBench: preprocess_elements=262144 +08-27 16:03:17.740 8650 8668 I EdgeGenBench: preprocess_speedup_x=2.046115 +08-27 16:03:17.740 8650 8668 I EdgeGenBench: preprocess_max_abs_drift=0.000000 +08-27 16:03:17.740 8650 8668 I EdgeGenBench: output_max_abs_drift=0.000000 +08-27 16:03:17.740 8650 8668 I EdgeGenBench: output=0.156160 +08-27 16:03:17.740 8650 8668 I EdgeGenBench: power=not measured +08-27 16:03:17.740 8650 8668 I EdgeGenBench: placement={"backend":"reference","operators":{"ReferenceLinear":1},"cpu_fallback":false,"hardware_measurement":false} +08-27 16:03:17.792 8650 8650 I EdgeGenBench: benchmark_json={"schema_version":1,"backend":"reference","cpu_fallback":false,"cold_ms":0.012084,"warm_mean_ms":0.00257002,"warm_p95_ms":0.002625,"runs":100,"baseline_preprocess_mean_ms":24.58136208,"fused_preprocess_mean_ms":12.01367589,"preprocess_elements":262144,"preprocess_speedup_x":2.04611497,"preprocess_max_abs_drift":0,"output_max_abs_drift":0,"output":0.156159997,"runtime_page_size_bytes":16384,"power":"not measured","captured_at_epoch_ms":1787860997751} diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-010/meminfo.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-010/meminfo.txt new file mode 100644 index 0000000..d6aed3d --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-010/meminfo.txt @@ -0,0 +1,50 @@ +Applications Memory Usage (in Kilobytes): +Uptime: 16975922 Realtime: 16975922 + +** MEMINFO in pid 8650 [dev.edgegenbench] ** + Pss Private Private SwapPss Rss Heap Heap Heap + Total Dirty Clean Dirty Total Size Alloc Free + ------ ------ ------ ------ ------ ------ ------ ------ + Native Heap 17306 17264 0 78 18128 24384 17297 2071 + Dalvik Heap 4251 4128 32 333 5136 6687 3344 3343 + Dalvik Other 6750 2736 0 169 11008 + Stack 864 864 0 0 864 + Ashmem 65 0 0 0 608 + Other dev 81 0 32 0 688 + .so mmap 4339 528 384 21 34016 + .jar mmap 3486 0 400 0 40352 + .apk mmap 8869 64 8560 0 10224 + .ttf mmap 266 0 0 0 1024 + .dex mmap 22 0 0 0 912 + .oat mmap 69 0 0 0 1664 + .art mmap 10466 9312 512 113 25808 + Other mmap 2163 16 16 0 5168 + Unknown 1082 1024 32 14 1616 + TOTAL 60807 35936 9968 728 157216 31071 20641 5414 + + App Summary + Pss(KB) Rss(KB) + ------ ------ + Java Heap: 13952 30944 + Native Heap: 17264 18128 + Code: 9968 96240 + Stack: 864 864 + Graphics: 0 0 + Private Other: 3856 + System: 14903 + Unknown: 11040 + + TOTAL PSS: 60807 TOTAL RSS: 157216 TOTAL SWAP PSS: 728 + + Objects + Views: 13 ViewRootImpl: 1 + AppContexts: 7 Activities: 1 + Assets: 20 AssetManagers: 0 + Local Binders: 14 Proxy Binders: 55 + Parcel memory: 4 Parcel count: 16 + Death Recipients: 0 WebViews: 0 + + SQL + MEMORY_USED: 0 + PAGECACHE_OVERFLOW: 0 MALLOC_SIZE: 0 + diff --git a/reports/device/android-16kb-api35-reference-10-runs/runs/run-010/thermal.txt b/reports/device/android-16kb-api35-reference-10-runs/runs/run-010/thermal.txt new file mode 100644 index 0000000..3c8a2fb --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/runs/run-010/thermal.txt @@ -0,0 +1,23 @@ +IsStatusOverride: false +ThermalEventListeners: + callbacks: 5 + killed: false + broadcasts count: -1 +ThermalStatusListeners: + callbacks: 3 + killed: false + broadcasts count: -1 +Thermal Status: 0 +Cached temperatures: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +HAL Ready: true +HAL connection: + ThermalHAL 2.0 connected: yes +Current temperatures from HAL: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +Current cooling devices from HAL: + CoolingDevice{mValue=100, mType=0, mName=test cooling device} +Temperature static thresholds from HAL: + TemperatureThreshold{mType=3, mName=test temperature sensor, mHotThrottlingThresholds=[NaN, NaN, NaN, 48.0, NaN, NaN, 60.0], mColdThrottlingThresholds=[NaN, NaN, NaN, NaN, NaN, NaN, NaN]} +Temperature headroom thresholds: +[NaN, NaN, NaN, NaN, NaN, NaN, 1.4] diff --git a/reports/device/android-16kb-api35-reference-10-runs/thermal-after.txt b/reports/device/android-16kb-api35-reference-10-runs/thermal-after.txt new file mode 100644 index 0000000..3c8a2fb --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/thermal-after.txt @@ -0,0 +1,23 @@ +IsStatusOverride: false +ThermalEventListeners: + callbacks: 5 + killed: false + broadcasts count: -1 +ThermalStatusListeners: + callbacks: 3 + killed: false + broadcasts count: -1 +Thermal Status: 0 +Cached temperatures: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +HAL Ready: true +HAL connection: + ThermalHAL 2.0 connected: yes +Current temperatures from HAL: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +Current cooling devices from HAL: + CoolingDevice{mValue=100, mType=0, mName=test cooling device} +Temperature static thresholds from HAL: + TemperatureThreshold{mType=3, mName=test temperature sensor, mHotThrottlingThresholds=[NaN, NaN, NaN, 48.0, NaN, NaN, 60.0], mColdThrottlingThresholds=[NaN, NaN, NaN, NaN, NaN, NaN, NaN]} +Temperature headroom thresholds: +[NaN, NaN, NaN, NaN, NaN, NaN, 1.4] diff --git a/reports/device/android-16kb-api35-reference-10-runs/thermal-before.txt b/reports/device/android-16kb-api35-reference-10-runs/thermal-before.txt new file mode 100644 index 0000000..3c8a2fb --- /dev/null +++ b/reports/device/android-16kb-api35-reference-10-runs/thermal-before.txt @@ -0,0 +1,23 @@ +IsStatusOverride: false +ThermalEventListeners: + callbacks: 5 + killed: false + broadcasts count: -1 +ThermalStatusListeners: + callbacks: 3 + killed: false + broadcasts count: -1 +Thermal Status: 0 +Cached temperatures: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +HAL Ready: true +HAL connection: + ThermalHAL 2.0 connected: yes +Current temperatures from HAL: + Temperature{mValue=30.8, mType=3, mName=test temperature sensor, mStatus=0} +Current cooling devices from HAL: + CoolingDevice{mValue=100, mType=0, mName=test cooling device} +Temperature static thresholds from HAL: + TemperatureThreshold{mType=3, mName=test temperature sensor, mHotThrottlingThresholds=[NaN, NaN, NaN, 48.0, NaN, NaN, 60.0], mColdThrottlingThresholds=[NaN, NaN, NaN, NaN, NaN, NaN, NaN]} +Temperature headroom thresholds: +[NaN, NaN, NaN, NaN, NaN, NaN, 1.4] diff --git a/reports/portfolio_acceptance.json b/reports/portfolio_acceptance.json index 405878f..d3f3033 100644 --- a/reports/portfolio_acceptance.json +++ b/reports/portfolio_acceptance.json @@ -76,8 +76,12 @@ "claim": "Build/JNI/capture paths exist; requires a supported Snapdragon APK run." }, "android_16kb_runtime": { - "status": "packaging_validated_runtime_pending", - "claim": "ELF/APK alignment passes; runtime PAGE_SIZE=16384 evidence is pending." + "status": "validated_16kb_emulator_runtime", + "environment": "Android 15 API 35 ARM64 16 KB emulator", + "page_size_bytes": 16384, + "runs": 10, + "report": "reports/android_16kb_emulator_reference_v0_1_7.md", + "claim": "APK/JNI reference path executed on PAGE_SIZE=16384; not physical-device performance." }, "power": { "status": "not_measured", diff --git a/reports/portfolio_acceptance.md b/reports/portfolio_acceptance.md index 9b24ca5..48d110a 100644 --- a/reports/portfolio_acceptance.md +++ b/reports/portfolio_acceptance.md @@ -6,7 +6,7 @@ | `android_reference` | `validated_physical_device` | Reference JNI/application measurements; not QNN. | | `qualcomm_ai_hub_qnn` | `validated_ai_hub_physical_qnn` | Physical AI Hub model profiling; not Android APK end-to-end latency. | | `android_qnn_apk` | `implementation_complete_evidence_pending` | Build/JNI/capture paths exist; requires a supported Snapdragon APK run. | -| `android_16kb_runtime` | `packaging_validated_runtime_pending` | ELF/APK alignment passes; runtime PAGE_SIZE=16384 evidence is pending. | +| `android_16kb_runtime` | `validated_16kb_emulator_runtime` | APK/JNI reference path executed on PAGE_SIZE=16384; not physical-device performance. | | `power` | `not_measured` | No power-savings claim is made without a named calibrated tool. | ## Validated Qualcomm QNN results @@ -22,4 +22,4 @@ Tracked QNN context provenance match: **True** (`artifacts/qualcomm_ai_hub/curre | 256 | 0.047000 | 5446808.511 | 122896384 | NPU × 9 | 0.002865936 | AI Hub measurements are physical-device model profiles, not Android application end-to-end timings. Current-model acceptance requires source-model provenance to match the repository, as reported above. -Power remains unmeasured. The two pending proof items are a supported-device QNN APK run and a runtime page size of 16384 bytes. +Power remains unmeasured. The remaining hardware proof item is a supported-device QNN APK run; the 16 KB reference APK/JNI runtime is validated on an API 35 emulator. diff --git a/scripts/build_portfolio_acceptance.py b/scripts/build_portfolio_acceptance.py index 68a460b..ea1d134 100644 --- a/scripts/build_portfolio_acceptance.py +++ b/scripts/build_portfolio_acceptance.py @@ -4,6 +4,7 @@ from __future__ import annotations import argparse +import csv import hashlib import json import subprocess @@ -134,6 +135,60 @@ def validate_ai_hub_qnn(report_path: Path, repository_root: Path) -> dict[str, A } +def validate_android_16kb_runtime(evidence_dir: Path, report_path: Path) -> dict[str, Any]: + if not report_path.is_file(): + raise ValueError("tracked Android 16 KB report is missing") + device_report = evidence_dir / "device-report.txt" + measurement_status = evidence_dir / "measurement-status.txt" + csv_path = evidence_dir / "latency-memory.csv" + if not all(path.is_file() for path in (device_report, measurement_status, csv_path)): + raise ValueError("Android 16 KB evidence bundle is incomplete") + + device = dict( + line.split("=", 1) + for line in device_report.read_text(encoding="utf-8").splitlines() + if "=" in line + ) + if device.get("page_size") != "16384" or device.get("abi") != "arm64-v8a": + raise ValueError("Android runtime evidence must prove an ARM64 16 KB environment") + if device.get("model") != "sdk_gphone16k_arm64" or device.get("sdk") != "35": + raise ValueError("Android runtime evidence must identify the API 35 16 KB emulator") + + with csv_path.open(encoding="utf-8", newline="") as stream: + rows = list(csv.DictReader(stream)) + if len(rows) != 10: + raise ValueError("Android 16 KB evidence must contain exactly ten runs") + for row in rows: + if float(row["preprocess_max_abs_drift"]) > 1e-6: + raise ValueError("Android 16 KB preprocessing drift exceeds tolerance") + if float(row["output_max_abs_drift"]) > 1e-6: + raise ValueError("Android 16 KB output drift exceeds tolerance") + + status = measurement_status.read_text(encoding="utf-8") + if "backend=reference" not in status or "power=not-measured" not in status: + raise ValueError("Android 16 KB claim boundaries are missing") + logs = sorted((evidence_dir / "runs").glob("run-*/logcat.txt")) + if len(logs) != 10: + raise ValueError("Android 16 KB evidence must retain ten logcat files") + for log in logs: + content = log.read_text(encoding="utf-8") + if '"runtime_page_size_bytes":16384' not in content: + raise ValueError(f"{log.name} does not report a 16 KB runtime") + if "EdgeGenBench: backend=reference" not in content or "CPU fallback=false" not in content: + raise ValueError(f"{log.name} has invalid backend placement metadata") + + return { + "status": "validated_16kb_emulator_runtime", + "environment": "Android 15 API 35 ARM64 16 KB emulator", + "page_size_bytes": 16384, + "runs": len(rows), + "report": f"reports/{report_path.name}", + "claim": ( + "APK/JNI reference path executed on PAGE_SIZE=16384; not physical-device performance." + ), + } + + def build_portfolio_acceptance( *, repository_root: Path, qnn_report: Path, output_json: Path, output_markdown: Path ) -> dict[str, Any]: @@ -141,6 +196,11 @@ def build_portfolio_acceptance( android_report = repository_root / "reports/android_sm_a356e_reference_10_run_v0_1_4.md" if not android_report.is_file(): raise ValueError("tracked Samsung reference report is missing") + android_16kb_report = repository_root / "reports/android_16kb_emulator_reference_v0_1_7.md" + android_16kb = validate_android_16kb_runtime( + repository_root / "reports/device/android-16kb-api35-reference-10-runs", + android_16kb_report, + ) matrix = { "schema_version": 1, "project": "EdgeGenBench", @@ -160,10 +220,7 @@ def build_portfolio_acceptance( "status": "implementation_complete_evidence_pending", "claim": "Build/JNI/capture paths exist; requires a supported Snapdragon APK run.", }, - "android_16kb_runtime": { - "status": "packaging_validated_runtime_pending", - "claim": "ELF/APK alignment passes; runtime PAGE_SIZE=16384 evidence is pending.", - }, + "android_16kb_runtime": android_16kb, "power": { "status": "not_measured", "claim": "No power-savings claim is made without a named calibrated tool.", @@ -209,8 +266,8 @@ def build_portfolio_acceptance( "AI Hub measurements are physical-device model profiles, not Android " "application end-to-end timings. Current-model acceptance requires source-model " "provenance to match the repository, as reported above.", - "Power remains unmeasured. The two pending proof items are a supported-device " - "QNN APK run and a runtime page size of 16384 bytes.", + "Power remains unmeasured. The remaining hardware proof item is a supported-device " + "QNN APK run; the 16 KB reference APK/JNI runtime is validated on an API 35 emulator.", ] ) output_markdown.write_text("\n".join(lines) + "\n", encoding="utf-8") diff --git a/scripts/profile_android_reference.sh b/scripts/profile_android_reference.sh index 8e07848..6c03975 100755 --- a/scripts/profile_android_reference.sh +++ b/scripts/profile_android_reference.sh @@ -50,7 +50,7 @@ for ((run = 1; run <= repeats; run++)); do completed=false for _ in {1..80}; do log_snapshot="$(adb logcat -d -s EdgeGenBench)" - if grep -q 'power=not measured' <<< "$log_snapshot"; then + if grep -q 'benchmark_json=' <<< "$log_snapshot"; then completed=true break fi @@ -62,8 +62,13 @@ for ((run = 1; run <= repeats; run++)); do adb shell dumpsys meminfo "$package_name" > "$run_dir/meminfo.txt" adb shell dumpsys thermalservice > "$run_dir/thermal.txt" - grep -q 'backend=reference (NOT QNN)' "$run_dir/logcat.txt" + # Match the stable machine-readable backend line emitted by v0.1.7+. The + # older UI label included "(NOT QNN)", but the structured log deliberately + # reports only the backend identifier. + grep -Eq 'EdgeGenBench: backend=reference\r?$' "$run_dir/logcat.txt" + grep -q 'CPU fallback=false' "$run_dir/logcat.txt" grep -q 'power=not measured' "$run_dir/logcat.txt" + grep -q 'benchmark_json=' "$run_dir/logcat.txt" grep -q 'baseline_preprocess_mean_ms=' "$run_dir/logcat.txt" grep -q 'fused_preprocess_mean_ms=' "$run_dir/logcat.txt" cold_ms="$(awk -F'cold_ms=' 'NF > 1 {print $2; exit}' "$run_dir/logcat.txt" | tr -d '\r')" diff --git a/tests/test_portfolio_acceptance.py b/tests/test_portfolio_acceptance.py index f70cc66..f0099f1 100644 --- a/tests/test_portfolio_acceptance.py +++ b/tests/test_portfolio_acceptance.py @@ -1,5 +1,6 @@ import json import runpy +import shutil from collections.abc import Callable from pathlib import Path from typing import cast @@ -10,6 +11,8 @@ FUNCTIONS = runpy.run_path(SCRIPT) ValidateQnn = Callable[[Path, Path], dict[str, object]] validate_ai_hub_qnn = cast(ValidateQnn, FUNCTIONS["validate_ai_hub_qnn"]) +Validate16Kb = Callable[[Path, Path], dict[str, object]] +validate_android_16kb_runtime = cast(Validate16Kb, FUNCTIONS["validate_android_16kb_runtime"]) def test_validates_tracked_ai_hub_qnn_evidence() -> None: @@ -44,3 +47,31 @@ def test_rejects_mismatched_qnn_context_hash(tmp_path: Path) -> None: path.write_text(json.dumps(report)) with pytest.raises(ValueError, match="context binary"): validate_ai_hub_qnn(path, root) + + +def test_validates_tracked_android_16kb_runtime_evidence() -> None: + root = Path(__file__).parents[1] + result = validate_android_16kb_runtime( + root / "reports/device/android-16kb-api35-reference-10-runs", + root / "reports/android_16kb_emulator_reference_v0_1_7.md", + ) + assert result["status"] == "validated_16kb_emulator_runtime" + assert result["page_size_bytes"] == 16384 + assert result["runs"] == 10 + + +def test_rejects_non_16kb_android_runtime_evidence(tmp_path: Path) -> None: + root = Path(__file__).parents[1] + source = root / "reports/device/android-16kb-api35-reference-10-runs" + evidence = tmp_path / "evidence" + shutil.copytree(source, evidence) + device_report = evidence / "device-report.txt" + device_report.write_text( + device_report.read_text(encoding="utf-8").replace("page_size=16384", "page_size=4096"), + encoding="utf-8", + ) + with pytest.raises(ValueError, match="ARM64 16 KB"): + validate_android_16kb_runtime( + evidence, + root / "reports/android_16kb_emulator_reference_v0_1_7.md", + )