diff options
| author | 2023-06-27 16:30:53 -0700 | |
|---|---|---|
| committer | 2023-07-12 15:56:58 +0000 | |
| commit | b95fee39e62ff5a24493c256c6bed87a2f85aa4a (patch) | |
| tree | 1c57faf86a0e017c1e63d129719f5945a78af746 /compiler/optimizing/instruction_builder.cc | |
| parent | 35f9047ca7b618556c1b01a1034019433a026869 (diff) | |
Improve OOME handling and detection
Do not trigger an OOME just because we did not see much free memory
after running a GC; someone else may have used it up in the interim.
Attempt to handle OOME after the GC has shut down in a somewhat
better way. This is still not a great solution, but since real
Android apps don't shut down "normally", this is a significant
improvement for a test-only problem.
Simplify the homogeneous space compaction code. We now also
insist that after homogeneous space compaction, a certain
fraction of the heap be empty. (Modern GC configurations don't
use this code anyway.)
Add runFinalization() call to 2042-reference-processing. Without
that, and with changes to the OOME code that should have been
irrelevant, I saw it running out of memory, presumably because
reference processing was falling behind. Once the main thread is
close to running out of memory, it may not get around to
processing references anymore, making things worse.
Bug: 288982675
Bug: 288446884
Test: TreeHugger
Change-Id: I05fbdc13194f64b7ce959db0286d134a980f9fa9
Diffstat (limited to 'compiler/optimizing/instruction_builder.cc')
0 files changed, 0 insertions, 0 deletions