5 Commits

Author SHA1 Message Date
Martin Stjernholm
4c9551ed8b Reconcile differences between boot image profiles.
This makes art/build/boot/boot-image-profile.txt +
frameworks/base/boot/boot-image-profile.txt identical to
frameworks/base/config/boot-image-profile.txt, so we can rule out
performance regressions due to profile changes in
https://r.android.com/1896660.

Test: presubmits
Bug: 207590908
Change-Id: I599e8df8818d2d2dc9f471fdc22c9d92719e6cae
2021-11-24 11:37:53 +00:00
art-benchmark-service
66b4d95bc5 Update boot image and system server profiles [M5C5P90S0PP]
= Perf stats =
(lower is better)

Start, memory and code size are improving at a slight expense of boot
time. The increase in boot time is however small, and could well be
in the noise.

Cold startup (speed-profile): -1.21%
PSS: -3.40%
RSS: -2.58%
Privat Dirty: -4.68%
Boot time: 0.04%
Code size: 2.79%

=Generation Strategy=

method_threshold: 0.05
image_class_threshold: 0.05
preloaded_classes_threshold: 0.9
upgrade_startup_methods_to_hot: true
system_server_threshold: 0.0
priority_packages_thresholds {
  key: "android"
  value: 0.02
}
priority_packages_thresholds {
  key: "com.android.systemui"
  value: 0.02
}
priority_packages_thresholds {
  key: "com.google.android.GoogleCamera"
  value: 0.02
}
priority_packages_thresholds {
  key: "com.google.android.dialer"
  value: 0.02
}
priority_packages_thresholds {
  key: "com.google.android.gms"
  value: 0.02
}
priority_packages_thresholds {
  key: "com.google.android.webview"
  value: 0.02
}

=Profile stats=

Data info:
- total aggregations: 6988
- number of (device types, builds): 256

File boot-image-profile.txt
  - hot methods: 3564 added, 2353 removed
  - methods: 3564 added, 2353 removed
  - classes: 498 added, 29 removed
  - totals now: 22707 hot methods, 22707 methods, 13987 classes
  - totals before: 21496 hot methods, 21496 methods, 13518 classes

  per package info as csv (selected):
    package_name, hot_a, hot_r, cl_a, cl_r, hot_num, cl_num
    android, 3418, 2238, 39, 11, 21138, 9609
    com.android, 145, 114, 89, 18, 1473, 3422
    android.view, 575, 372, 4, 0, 3202, 881
    android.hardware, 88, 41, 2, 0, 407, 795
    android.bluetooth, 26, 23, 0, 0, 173, 170
    android.animation, 95, 56, 0, 0, 401, 71
    android.app, 392, 225, 7, 0, 2896, 983
    android.content, 329, 243, 5, 1, 2146, 594
    android.graphics, 425, 246, 0, 0, 1974, 320
    android.icu, 115, 86, 0, 0, 1940, 1528
    android.media, 98, 62, 0, 0, 777, 567
    android.net, 78, 51, 2, 10, 711, 415
    android.widget, 344, 277, 0, 0, 1382, 368

File preloaded-classes
  - hot methods: 0 added, 0 removed
  - methods: 0 added, 0 removed
  - classes: 3 added, 19 removed
  - totals now: 0 hot methods, 0 methods, 11477 classes
  - totals before: 0 hot methods, 0 methods, 11493 classes

  per package info as csv (selected):
    package_name, hot_a, hot_r, cl_a, cl_r, hot_num, cl_num
    android, 0, 0, 3, 1, 0, 8432
    com.android, 0, 0, 0, 18, 0, 2466
    android.hardware, 0, 0, 1, 0, 0, 680
    android.app, 0, 0, 2, 0, 0, 867
    android.content, 0, 0, 0, 1, 0, 514

File boot-image-profile.txt
  - hot methods: 4788 added, 2939 removed
  - methods: 4788 added, 2939 removed
  - classes: 678 added, 29 removed
  - totals now: 32340 hot methods, 32340 methods, 16707 classes
  - totals before: 30491 hot methods, 30491 methods, 16058 classes

  per package info as csv (selected):
    package_name, hot_a, hot_r, cl_a, cl_r, hot_num, cl_num
    android, 3432, 2249, 39, 11, 21185, 9640
    com.android, 291, 154, 89, 18, 2429, 3762
    java, 825, 434, 0, 0, 6903, 1807
    android.view, 574, 372, 4, 0, 3201, 881
    android.hardware, 87, 41, 2, 0, 406, 795
    android.bluetooth, 37, 23, 0, 0, 173, 170
    android.animation, 95, 56, 0, 0, 401, 71
    android.app, 390, 225, 7, 0, 2894, 983
    android.content, 327, 243, 5, 1, 2144, 594
    android.graphics, 423, 246, 0, 0, 1972, 320
    android.icu, 115, 86, 0, 0, 1940, 1528
    android.media, 95, 62, 0, 0, 774, 567
    android.net, 78, 51, 2, 10, 711, 415
    android.widget, 344, 277, 0, 0, 1381, 368

File preloaded-classes
  - hot methods: 0 added, 0 removed
  - methods: 0 added, 0 removed
  - classes: 0 added, 20 removed
  - totals now: 0 hot methods, 0 methods, 13904 classes
  - totals before: 0 hot methods, 0 methods, 13924 classes

  per package info as csv (selected):
    package_name, hot_a, hot_r, cl_a, cl_r, hot_num, cl_num
    android, 0, 0, 0, 2, 0, 8453
    com.android, 0, 0, 0, 18, 0, 2805
    android.view, 0, 0, 0, 1, 0, 742
    android.content, 0, 0, 0, 1, 0, 514

File art-profile
  - hot methods: 4595 added, 2644 removed
  - methods: 5217 added, 3300 removed
  - classes: 359 added, 13 removed
  - totals now: 35471 hot methods, 51136 methods, 5764 classes
  - totals before: 33520 hot methods, 49219 methods, 5418 classes

  per package info as csv (selected):
    package_name, hot_a, hot_r, cl_a, cl_r, hot_num, cl_num
    android, 37, 12, 157, 0, 469, 437
    com.android, 4557, 2631, 142, 13, 34847, 5224
    android.hardware, 8, 8, 0, 0, 242, 127
    android.net, 29, 4, 157, 0, 202, 287

InternalReferenceRawProfileId: 4117
InternalReferenceCandidateProfileId: 4124

Bug: 169104277
Test: build & benchmark

Change-Id: I6dd60b5d0457e0fa35d57082677892ae65b9e920
2021-07-19 01:59:38 +00:00
art-benchmark-service
ec0f5b9e8d Update boot image and system server profiles [M5C5P89S0PP]
= Perf stats =
    (lower is better)

    Startup time is improving at the cost of slight increase in memory usage.
    This is due the a large number of extra preloaded classes which will
    be trimmed down in further updates.

    Cold startup (speed-profile): -2.05%
    PSS: -1.41%
    RSS: -0.63%
    Privat Dirty: -2.03%
    Boot time: -0.71%
    Code size: 0.47%

=Generation Strategy=

method_threshold: 0.05
image_class_threshold: 0.05
preloaded_classes_threshold: 0.899
upgrade_startup_methods_to_hot: true
system_server_threshold: 0.0
priority_packages_thresholds {
  key: "android"
  value: 0.02
}
priority_packages_thresholds {
  key: "com.android.systemui"
  value: 0.02
}
priority_packages_thresholds {
  key: "com.google.android.GoogleCamera"
  value: 0.02
}
priority_packages_thresholds {
  key: "com.google.android.webview"
  value: 0.02
}

=Profile stats=

Data info:
- total aggregations: 5637
- number of (device types, builds): 179

File boot-image-profile.txt
  - hot methods: 1354 added, 873 removed
  - methods: 1354 added, 873 removed
  - classes: 165 added, 2 removed
  - totals now: 21496 hot methods, 21496 methods, 13518 classes
  - totals before: 21015 hot methods, 21015 methods, 13355 classes

  per package info as csv (selected):
    package_name, hot_a, hot_r, cl_a, cl_r, hot_num, cl_num
    android, 1304, 833, 156, 2, 19958, 9581
    com.android, 49, 39, 9, 0, 1442, 3351
    android.view, 157, 128, 3, 2, 2999, 877
    android.hardware, 5, 4, 0, 0, 360, 793
    android.bluetooth, 3, 3, 0, 0, 170, 170
    android.animation, 24, 24, 0, 0, 362, 71
    android.app, 139, 127, 0, 0, 2729, 976
    android.content, 121, 106, 1, 0, 2060, 590
    android.graphics, 96, 79, 1, 0, 1795, 320
    android.icu, 39, 35, 0, 0, 1911, 1528
    android.media, 20, 21, 1, 0, 741, 567
    android.net, 381, 14, 141, 0, 684, 423
    android.widget, 94, 94, 2, 0, 1315, 368

File preloaded-classes
  - hot methods: 0 added, 0 removed
  - methods: 0 added, 0 removed
  - classes: 108 added, 0 removed
  - totals now: 0 hot methods, 0 methods, 11493 classes
  - totals before: 0 hot methods, 0 methods, 11385 classes

  per package info as csv (selected):
    package_name, hot_a, hot_r, cl_a, cl_r, hot_num, cl_num
    android, 0, 0, 108, 0, 0, 8430
    android.view, 0, 0, 1, 0, 0, 743
    android.app, 0, 0, 1, 0, 0, 865
    android.net, 0, 0, 106, 0, 0, 341

File boot-image-profile.txt
  - hot methods: 1685 added, 1227 removed
  - methods: 1685 added, 1227 removed
  - classes: 167 added, 2 removed
  - totals now: 30491 hot methods, 30491 methods, 16058 classes
  - totals before: 30033 hot methods, 30033 methods, 15893 classes

  per package info as csv (selected):
    package_name, hot_a, hot_r, cl_a, cl_r, hot_num, cl_num
    android, 1303, 843, 158, 2, 20002, 9612
    com.android, 112, 102, 9, 0, 2292, 3691
    java, 216, 229, 0, 0, 6512, 1807
    android.view, 157, 128, 3, 2, 2999, 877
    android.hardware, 5, 4, 0, 0, 360, 793
    android.bluetooth, 3, 14, 0, 0, 159, 170
    android.animation, 24, 24, 0, 0, 362, 71
    android.app, 140, 126, 0, 0, 2729, 976
    android.content, 121, 106, 1, 0, 2060, 590
    android.graphics, 96, 79, 1, 0, 1795, 320
    android.icu, 39, 35, 0, 0, 1911, 1528
    android.media, 20, 21, 1, 0, 741, 567
    android.net, 381, 14, 141, 0, 684, 423
    android.widget, 93, 94, 2, 0, 1314, 368

File preloaded-classes
  - hot methods: 0 added, 0 removed
  - methods: 0 added, 0 removed
  - classes: 110 added, 0 removed
  - totals now: 0 hot methods, 0 methods, 13924 classes
  - totals before: 0 hot methods, 0 methods, 13814 classes

  per package info as csv (selected):
    package_name, hot_a, hot_r, cl_a, cl_r, hot_num, cl_num
    android, 0, 0, 110, 0, 0, 8455
    android.view, 0, 0, 1, 0, 0, 743
    android.media, 0, 0, 1, 0, 0, 499
    android.net, 0, 0, 106, 0, 0, 341

File art-profile
  - hot methods: 2406 added, 1622 removed
  - methods: 2927 added, 1862 removed
  - classes: 77 added, 4 removed
  - totals now: 33520 hot methods, 49219 methods, 5418 classes
  - totals before: 32736 hot methods, 48154 methods, 5345 classes

  per package info as csv (selected):
    package_name, hot_a, hot_r, cl_a, cl_r, hot_num, cl_num
    android, 23, 4, 8, 0, 444, 280
    com.android, 2383, 1618, 69, 4, 32921, 5095
    android.hardware, 2, 2, 0, 0, 242, 127
    android.content, 2, 1, 1, 0, 3, 7
    android.net, 16, 1, 7, 0, 177, 130

InternalReferenceRawProfileId: 3925
InternalReferenceCandidateProfileId: 3934

Bug: 169104277
Test: build & benchmark

Change-Id: Ifd03de98020a738cfa7687fe83d7d3e5c89f5c10
2021-05-26 17:09:59 +00:00
art-benchmark-service
84deab3dfe Update boot image and system server profiles [M5C5P89S0PP]
= Perf stats =
(lower is better)

Reduction in the overall memory consumptions as well as faster
cold startups. The trade-off is a slight increase of code size.

Cold startup (speed-profile): -1.25%
PSS: -1.67%
RSS: -1.79%
Privat Dirty: -5.96%
Boot time: -0.82%
Code size: +4.85%

=Generation Strategy=

method_threshold: 0.05
image_class_threshold: 0.05
preloaded_classes_threshold: 0.899
upgrade_startup_methods_to_hot: true
system_server_threshold: 0.0
priority_packages_thresholds {
  key: "android"
  value: 0.02
}
priority_packages_thresholds {
  key: "com.android.systemui"
  value: 0.02
}
priority_packages_thresholds {
  key: "com.google.android.GoogleCamera"
  value: 0.02
}
priority_packages_thresholds {
  key: "com.google.android.webview"
  value: 0.02
}

=Profile stats=

Data info:
- total aggregations: 5307
- number of (device types, builds): 168

File boot-image-profile.txt
  - hot methods: 21015 added, 0 removed
  - methods: 21015 added, 0 removed
  - classes: 13355 added, 0 removed
  - totals now: 21015 hot methods, 21015 methods, 13355 classes
  - totals before: 0 hot methods, 0 methods, 0 classes

  per package info as csv (selected):
    package_name, hot_a, hot_r, cl_a, cl_r, hot_num, cl_num
    android, 19487, 0, 9427, 0, 19487, 9427
    com.android, 1432, 0, 3342, 0, 1432, 3342
    java, 2, 0, 114, 0, 2, 114
    android.view, 2970, 0, 876, 0, 2970, 876
    android.hardware, 359, 0, 793, 0, 359, 793
    android.bluetooth, 170, 0, 170, 0, 170, 170
    android.animation, 362, 0, 71, 0, 362, 71
    android.app, 2717, 0, 976, 0, 2717, 976
    android.content, 2045, 0, 589, 0, 2045, 589
    android.graphics, 1778, 0, 319, 0, 1778, 319
    android.icu, 1907, 0, 1528, 0, 1907, 1528
    android.media, 742, 0, 566, 0, 742, 566
    android.net, 317, 0, 282, 0, 317, 282
    android.widget, 1315, 0, 366, 0, 1315, 366

File preloaded-classes
  - hot methods: 0 added, 0 removed
  - methods: 0 added, 0 removed
  - classes: 11385 added, 0 removed
  - totals now: 0 hot methods, 0 methods, 11385 classes
  - totals before: 0 hot methods, 0 methods, 0 classes

  per package info as csv (selected):
    package_name, hot_a, hot_r, cl_a, cl_r, hot_num, cl_num
    android, 0, 0, 8322, 0, 0, 8322
    com.android, 0, 0, 2484, 0, 0, 2484
    java, 0, 0, 114, 0, 0, 114
    android.view, 0, 0, 742, 0, 0, 742
    android.hardware, 0, 0, 679, 0, 0, 679
    android.bluetooth, 0, 0, 164, 0, 0, 164
    android.animation, 0, 0, 71, 0, 0, 71
    android.app, 0, 0, 864, 0, 0, 864
    android.content, 0, 0, 515, 0, 0, 515
    android.graphics, 0, 0, 295, 0, 0, 295
    android.icu, 0, 0, 1468, 0, 0, 1468
    android.media, 0, 0, 499, 0, 0, 499
    android.net, 0, 0, 235, 0, 0, 235
    android.widget, 0, 0, 329, 0, 0, 329

File boot-image-profile.txt
  - hot methods: 2663 added, 2687 removed
  - methods: 2659 added, 2687 removed
  - classes: 201 added, 248 removed
  - totals now: 30033 hot methods, 30033 methods, 15893 classes
  - totals before: 30057 hot methods, 30061 methods, 15940 classes

  per package info as csv (selected):
    package_name, hot_a, hot_r, cl_a, cl_r, hot_num, cl_num
    android, 1988, 1537, 113, 228, 19542, 9456
    com.android, 295, 255, 86, 20, 2282, 3682
    java, 304, 673, 0, 0, 6525, 1807
    android.view, 210, 127, 21, 0, 2970, 876
    android.hardware, 35, 10, 5, 2, 359, 793
    android.bluetooth, 18, 16, 0, 0, 170, 170
    android.animation, 28, 13, 0, 0, 362, 71
    android.app, 285, 190, 16, 19, 2715, 976
    android.content, 298, 104, 5, 0, 2045, 589
    android.graphics, 143, 65, 0, 0, 1778, 319
    android.icu, 103, 43, 0, 0, 1907, 1528
    android.media, 71, 18, 4, 2, 742, 566
    android.net, 42, 387, 5, 138, 317, 282
    android.widget, 143, 88, 3, 0, 1315, 366

File preloaded-classes
  - hot methods: 0 added, 0 removed
  - methods: 0 added, 0 removed
  - classes: 33 added, 175 removed
  - totals now: 0 hot methods, 0 methods, 13814 classes
  - totals before: 0 hot methods, 0 methods, 13956 classes

  per package info as csv (selected):
    package_name, hot_a, hot_r, cl_a, cl_r, hot_num, cl_num
    android, 0, 0, 6, 170, 0, 8345
    com.android, 0, 0, 27, 5, 0, 2823
    android.app, 0, 0, 2, 1, 0, 864
    android.graphics, 0, 0, 2, 0, 0, 295
    android.net, 0, 0, 0, 107, 0, 235

File art-profile
  - hot methods: 4351 added, 2717 removed
  - methods: 5688 added, 3427 removed
  - classes: 174 added, 40 removed
  - totals now: 32736 hot methods, 48154 methods, 5345 classes
  - totals before: 31102 hot methods, 45893 methods, 5211 classes

  per package info as csv (selected):
    package_name, hot_a, hot_r, cl_a, cl_r, hot_num, cl_num
    android, 11, 37, 0, 18, 425, 272
    com.android, 4337, 2679, 173, 22, 32156, 5030
    android.hardware, 2, 2, 0, 0, 242, 127
    android.net, 9, 32, 0, 15, 162, 123

InternalReferenceRawProfileId: 3892
InternalReferenceCandidateProfileId: 3900

Test: build & benchmark
Bug: 169104277

Change-Id: I64897afc1d6899d729d9086f64ac3a9574429526
(cherry picked from commit c6c95e8d93267548ba191ef3354539d183167652)
2021-05-14 17:07:47 +00:00
yawanng
c34748cf2c Fix the path of boot image profile and preloaded classes for frameworks.
They should locate under "boot" instead of "build/boot"

Bug: 186455808
Test: m
Change-Id: Ibde3edcb17135aec35aa7956d233768818d14178
2021-05-08 03:59:54 +00:00