History log of /art/compiler/driver/compiled_method_storage.cc
Revision Date Author Comments
9d07e3d128ccfa0ef7670feadd424a825e447d1d 31-Mar-2016 Vladimir Marko <vmarko@google.com> Clean up OatQuickMethodHeader after Quick removal.

This reduces the size of the pre-header by 8 bytes, reducing
oat file size and mmapped .text section size. The memory
needed to store a CompiledMethod by dex2oat is also reduced,
for 32-bit dex2oat by 8B and for 64-bit dex2oat by 16B. The
aosp_flounder-userdebug 32-bit and 64-bit boot.oat are each
about 1.1MiB smaller.

Disable the broken StubTest.IMT, b/27991555 .

Change-Id: I05fe45c28c8ffb7a0fa8b1117b969786748b1039
dd9473b94c15c8cbdfcce702fdc7a50acdfbfd8b 28-Jan-2016 Anton Kirilov <anton.kirilov@linaro.org> dex2oat: Show memory usage values in bytes

Memory usage values are rounded down to an integer and shown in the
unit that would be most appropriate (refer to art::PrettySize());
e.g. if the value is at least 1 MB, but less than 1 GB, then it will
be shown in MB. However, that can introduce a very large error; for
example, a value that is close to, but less than 2 MB, will be
displayed as 1 MB.

This change forces dex2oat to print the raw value in bytes as well,
which may make memory usage analysis more accurate.

Change-Id: Id86a9fe21e8af0f02e77fac21cad51d35d941294
35831e8bfa1c0944d4c978d99c4c5b9577945170 11-Sep-2015 Vladimir Marko <vmarko@google.com> Reduce memory used by CompiledMethods.

Use LengthPrefixedArray<>s instead of SwapVector<>s to store
CompiledMethod data and get rid of the unnecessary members
of CompiledMethod to reduce dex2oat memory usage. Refactor
the deduplication from CompilerDriver to a new class.

Use HashSet<> instead of std::set<> for the DedupeSet<> to
further decrease the memory usage and improve performance.

This reduces the dex2oat memory usage when compiling boot
image on Nexus 5 (with Optimizing, -j1) by ~6.75MiB (5%).
This also reduces the compile time by ~2.2% (~1.6% dex2oat
time; with Optimizing, without -j).

Change-Id: I974f1f5e58350de2bf487a2bca3907fa05fb80ea