summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-05-05jemalloc: always assume overcommitting memorylineage-18.1Park Ju Hyung
Minor optimization Signed-off-by: Park Ju Hyung <qkrwngud825@gmail.com> Change-Id: I6aa570bf0d9e750782415fd524fdb0fe393d2127
2021-05-05jemalloc: remove THP supportPark Ju Hyung
This is not explored on Android properly and no one should use it until proper scientific testing. Moreover, THP is broken with all recent Qualcomm devices due to speculative page faults. Signed-off-by: Park Ju Hyung <qkrwngud825@gmail.com> Change-Id: Ic1a2b9f17cef4b73d32102a4ae8704cc4654307b
2021-05-05jemalloc: disable JEMALLOC_STATSPark Ju Hyung
Signed-off-by: Park Ju Hyung <qkrwngud825@gmail.com> Change-Id: Ie69921ef8d9c3dc901849f2c7a40c2bda230b9aa
2021-05-05jemalloc: disable config parsing altogetherPark Ju Hyung
This is never used on Android. Remove it for faster initialization and lighter libc.so. Signed-off-by: Park Ju Hyung <qkrwngud825@gmail.com> Change-Id: I1c4a6fa69ef8c986a0caf5369ef71efeff1c6ef3
2021-05-05jemalloc: remove deprecated size_classes.hPark Ju Hyung
Signed-off-by: Park Ju Hyung <qkrwngud825@gmail.com> Change-Id: I99f379c689a706ff854c9a9c0b41dd298a586a6f
2021-04-05Update Soong blueprint for jemalloc 5.2.1Danny Lin
Change-Id: Ie4dfe4cf9a3905914a685ec6761628e405512a9a
2021-04-05Update Android extension functions for jemalloc 5.2.1Danny Lin
malloc_iterate and mallinfo need to be updated to accomodate upstream changes. Change-Id: Iae187f1ca442e0f8c3041ed67474d7d979085b0b
2021-04-05Regenerate configs for 5.2.1 updateDanny Lin
Change-Id: I3774ce46655d526e1aea2741711d96ec2613f977
2021-04-05Fix typo in tcache stats checkDanny Lin
Change-Id: I1682acb9b57f6de4bacd4c69d55b21a96cc09d5b
2021-04-05Merge tag '5.2.1' into HEADDanny Lin
Release Change-Id: I018c9530a4e904a66f0f39b0990deae668913a0f
2020-04-21Only retain for 64 bit. am: d3a7616aa2 am: ae06453fb8Christopher Ferris
Change-Id: I90d88a27d255eee11dfe3466d38eb54dc95cf372
2020-04-21Only retain for 64 bit. am: d3a7616aa2Christopher Ferris
Change-Id: I85f78b783f1bba9db9ee38787a1c152fbf003f8c
2020-04-16Only retain for 64 bit.Christopher Ferris
In 32 bit, the va space can be exhausted very easily. Change the jemalloc defaults to only retain for 64 bit to avoid this exhaustion. The performance of traces does get slightly worse, but most stay about the same. This should only affect devices that use malloc svelte, all other devices are on scudo. Bug: 142556796 Bug: 140079007 Test: Ran traces and verified va space is much lower. Test: Compared benchmarks with and without retaining. Test: Ran bionic unit tests. Test: Ran jemalloc tests. Test: Ran malloc stress tests. Change-Id: Iaec8276582f880145a1ca5ebbaa65789f46d2bf2 Merged-In: Iaec8276582f880145a1ca5ebbaa65789f46d2bf2 (cherry picked from commit 42ee32379deb615c6554ac8325417f451e987b35)
2020-01-29Export include for libjemalloc5 usage. am: 8333b30b97 am: 94c497862b am: ↵Automerger Merge Worker
dbb559d281 Change-Id: I40e3c1e45b840d6f4a657efaaffbba10ed9d1231
2020-01-29Export include for libjemalloc5 usage. am: 8333b30b97 am: 94c497862bAutomerger Merge Worker
Change-Id: Ia3735794cacc7c73209957f4ac54d04706bdc49f
2020-01-29Export include for libjemalloc5 usage.Christopher Ferris
am: 8333b30b97 Change-Id: I04c4ddf6104fb09f4e4817d65da69c70b196e0ae
2020-01-24Export include for libjemalloc5 usage.Christopher Ferris
Before, libc was adding the include directories directly. Instead, add it to the export list to it can be added automatically. Bug: 137795072 Test: Build Change-Id: I2b715af91b0eef6adf26daea1a081e49e7d6ad9b
2020-01-25Make ramdisk_available. am: 975193e289 am: 2b7518579d am: 29c6ad693cAutomerger Merge Worker
Change-Id: I2c3df63fcbdc7c6ac8d81e46cefc07d4f0b01cd3
2020-01-25Make ramdisk_available. am: 975193e289 am: 2b7518579dAutomerger Merge Worker
Change-Id: Ib56b06f09240eebeb31bc9b6543626b26edad016
2020-01-24Make ramdisk_available.Yifan Hong
am: 975193e289 Change-Id: I107ef904fb46dded7a44bd0ff4b6ee688fabcf96
2020-01-22Make ramdisk_available.Yifan Hong
Test: pass Bug: 147347110 Change-Id: I95006f1b1667e1cf316b25f4ece153643ca31dfc
2019-11-08Change je_iterate to je_malloc_iterate. am: 8aa48b4f72 am: 76307d1c57Christopher Ferris
am: ccccb453ca Change-Id: I76fdee866376e0016745c770e46eb10f553c24c9
2019-11-08Change je_iterate to je_malloc_iterate. am: 8aa48b4f72Christopher Ferris
am: 76307d1c57 Change-Id: Ic5b7d87814ba72ba37f24305eee63589b52b3d48
2019-11-08Change je_iterate to je_malloc_iterate.Christopher Ferris
am: 8aa48b4f72 Change-Id: I0399ab728fb3fd5f97e306596d87a945ec0b400c
2019-11-08Change je_iterate to je_malloc_iterate.Christopher Ferris
Match the name that bionic expects. Test: Compiles. Change-Id: I2ad4a6e7ee6c2831cc4b1c5b834c2d5334164d3b
2019-10-24Add configure script for jemalloc. am: 9918bd263a am: f435ef65df am: db317931e8Christopher Ferris
am: 8ac3fef633 Change-Id: I2e5d657ec20e13e245573444f51df3c633f42258
2019-10-24Add configure script for jemalloc. am: 9918bd263a am: f435ef65dfChristopher Ferris
am: db317931e8 Change-Id: I922efff62e924eea14a0f0794744901a7cce6522
2019-10-24Add configure script for jemalloc. am: 9918bd263aChristopher Ferris
am: f435ef65df Change-Id: I8b99d54fb75e7a229c7612553bc3dc3226b097b3
2019-10-24Add configure script for jemalloc.Christopher Ferris
am: 9918bd263a Change-Id: I098fa762629d20ed0f4a49d28343ad0cf0596f34
2019-10-23Add configure script for jemalloc.Christopher Ferris
Test: Ran this when building jemalloc 5.2.1. Change-Id: I6c7de59cdede844f3469bcd045e8e1b638112c54
2019-08-05Merge branch 'dev'Qi Wang
2019-08-05Update Changelog for 5.2.1.Qi Wang
2019-08-01Sanity check on prof dump buffer size.Qi Wang
2019-07-30Quick fix for prof log printingYinan Zhang
The emitter APIs used were incorrect, a side effect of which was extra lines being printed.
2019-07-30Workaround to address g++ unused variable warningsYinan Zhang
g++ 5.5.0+ complained `parameter ‘expected’ set but not used [-Werror=unused-but-set-parameter]` (despite that `expected` is in fact used).
2019-07-29Limit to exact fit on Windows with retain off.Qi Wang
W/o retain, split and merge are disallowed on Windows. Avoid doing first-fit which needs splitting almost always. Instead, try exact fit only and bail out early.
2019-07-29Revert "Refactor prof log"Qi Wang
This reverts commit 7618b0b8e458d9c0db6e4b05ccbe6c6308952890.
2019-07-29Revert "Refactor profiling"Qi Wang
This reverts commit 0b462407ae84a62b3c097f0e9f18df487a47d9a7.
2019-07-29Refactor profilingYinan Zhang
Refactored core profiling codebase into two logical parts: (a) `prof_data.c`: core internal data structure managing & dumping; (b) `prof.c`: mutexes & outward-facing APIs. Some internal functions had to be exposed out, but there are not that many of them if the modularization is (hopefully) clean enough.
2019-07-29Refactor prof logYinan Zhang
`prof.c` is growing too long, so trying to modularize it. There are a few internal functions that had to be exposed but I think it is a fair trade-off.
2019-07-25Add indent to individual options for confirm_conf.Qi Wang
2019-07-25Update manual for opt.retain (new default on Windows).Qi Wang
2019-07-25Lower nthreads in test/unit/retained on 32-bit to avoid OOM.Qi Wang
2019-07-24Refactor arena_dalloc() / _sdalloc().Qi Wang
2019-07-24Invoke arena_dalloc_promoted() properly w/o tcache.Qi Wang
When tcache was disabled, the dalloc promoted case was missing.
2019-07-24Optimize max_active_fit in first_fit.Qi Wang
Stop scanning once reached the first max_active_fit size.
2019-07-24Track the leaked VM space via the abandoned_vm counter.Qi Wang
The counter is 0 unless metadata allocation failed (indicates OOM), and is mainly for sanity checking.
2019-07-23extent_dalloc instead of leak when register fails.Qi Wang
extent_register may only fail if the underlying extent and region got stolen / coalesced before we lock. Avoid doing extent_leak (which purges the region) since we don't really own the region.
2019-07-23Avoid leaking extents / VM when split is not supported.Qi Wang
This can only happen on Windows and with opt.retain disabled (which isn't the default). The solution is suboptimal, however not a common case as retain is the long term plan for all platforms anyway.
2019-07-23Enable opt.retain by default on Windows.Qi Wang