Commit Graph

  • f81fb92a89 Remove Travis CI macOS configs (not supported anymore). Qi Wang 2025-04-14 14:15:14 -07:00
  • f19f49ef3e if process_madvise is supported, call it when purging hpa Slobodan Predolac 2025-03-12 12:26:52 -07:00
  • 80e9001af3 Move `extern "C" specifications for C++ to where they are needed Kaspar M. Rohrer 2025-03-29 23:51:20 +01:00
  • 3688dfb5c3 fix assertion error in huge_arena_auto_thp_switch() when b0 is deleted in unit test Shirui Cheng 2025-03-19 17:26:33 -07:00
  • a4defdb854 detect false failure of strerror_r Jay Lee 2025-02-07 14:12:38 +08:00
  • e1a77ec558 Support THP with Huge Arena in PAC Shirui Cheng 2025-03-05 13:00:57 -08:00
  • 86bbabac32 background_thread: add fallback for pthread_create dlsym Audrey Dutcher 2025-03-06 22:24:27 -07:00
  • 81f35e0b55 Modify Travis tests to use frameptr when profiling Guangli Dai 2025-03-07 11:08:03 -08:00
  • 773b5809f9 Fix frame pointer based unwinder to handle changing stack range Guangli Dai 2025-03-05 17:58:20 -08:00
  • ad108d50f1 Extend purging algorithm with peak demand tracking Dmitry Ilvokhin 2025-01-21 07:20:15 -08:00
  • 22440a0207 Implement process_madvise support. Qi Wang 2025-02-04 18:31:11 -08:00
  • 70f019cd3a Enable limit-usize-gap in CI tests. Guangli Dai 2024-05-14 14:27:17 -07:00
  • 6035d4a8d3 Cache extra extents in the dirty pool from ecache_alloc_grow Guangli Dai 2025-01-27 23:09:51 -08:00
  • c067a55c79 Introducing a new usize calculation policy guangli-dai 2024-03-26 14:35:29 -07:00
  • ac279d7e71 Fix profiling sample metadata lookup during xallocx Guangli Dai 2025-03-03 10:17:03 -08:00
  • f55e0c3f5c Remove unsupported Cirrus CI config Qi Wang 2025-03-03 13:52:06 -08:00
  • 499f306859 Fix arena 0 deferral_allowed flag init Dmitry Ilvokhin 2025-02-05 04:32:31 -08:00
  • 421b17a622 Remove age_counter from hpa_central Dmitry Ilvokhin 2025-02-05 11:00:15 -08:00
  • c17bf8b368 Disable config from file or envvar with build flag roblabla 2024-07-30 14:56:42 +02:00
  • 34c823f147 Add autoconf options to enable sanitizers Dmitry Ilvokhin 2025-01-10 10:51:21 -08:00
  • 3bc89cfeca Avoid implicit conversion in test/unit/prof_threshold Qi Wang 2025-01-30 10:45:11 -08:00
  • 1abeae9ebd Fix test/unit/prof_threshold when !config_stats Qi Wang 2025-01-29 21:33:30 -08:00
  • 257e64b968 Unlike prof_sample which is supported only with profiling mode active, prof_threshold is intended to be an always-supported allocation callback with much less overhead. The usage of the threshold allows performance critical callers to change program execution based on the callback: e.g. drop caches when memory becomes high or to predict the program is about to OOM ahead of time using peak memory watermarks. Shai Duvdevani 2025-01-29 15:25:10 -08:00
  • ef8e512e29 Fix bitmap_ffu out of range read Dmitry Ilvokhin 2025-01-24 07:48:58 -08:00
  • 607b866035 Check for 0 input when setting max_background_thread through mallctl. Qi Wang 2025-01-21 15:15:56 -08:00
  • 20cc983314 Fix the gettid() detection caught by @mrluanma . Qi Wang 2025-01-21 15:06:02 -08:00
  • 52fa9577ba Fix integer overflow in test/unit/hash.c Dmitry Ilvokhin 2025-01-14 10:46:39 -08:00
  • 17881ebbfd Add configure check for gettid() presence Dan Horák 2024-11-08 15:34:06 +00:00
  • 4b88bddbca Conditionally remove unreachable for C23+ appujee 2024-11-06 13:14:10 -08:00
  • d8486b2653 Remove unreachable() macro as c23 already defines it. appujee 2024-10-25 14:00:32 -07:00
  • 587676fee8 Disable psset test when hugepage size is too large. Guangli Dai 2024-12-11 15:24:26 -08:00
  • a17385a882 Enable large hugepage tests for arm64 on Travis Guangli Dai 2024-12-13 15:06:06 -08:00
  • 6786934280 Fix ehooks assertion for arena creation Guangli Dai 2024-12-09 14:24:19 -08:00
  • 46690c9ec0 Fix test_retained on boxes with a lot of CPUs Dmitry Ilvokhin 2024-11-28 07:10:33 -08:00
  • 6092c980a6 Expose psset state stats Dmitry Ilvokhin 2024-11-14 10:52:50 -08:00
  • 3820e38dc1 Remove validation for HPA ratios Dmitry Ilvokhin 2024-11-15 08:53:20 -08:00
  • 0ce13c6fb5 Add opt hpa_hugify_sync to hugify synchronously Dmitry Ilvokhin 2024-10-31 11:43:11 -07:00
  • a361e886e2 Move je_cv_thp logic closer to definition Dmitry Ilvokhin 2024-11-07 10:16:46 -08:00
  • b82333fdec Split stats_arena_hpa_shard_print function Dmitry Ilvokhin 2024-10-25 10:27:25 -07:00
  • b9758afff0 Add nstime_ms_since to get time since in ms Dmitry Ilvokhin 2024-10-25 09:47:43 -07:00
  • 2a693b83d2 Fix the sized-dealloc safety check abort msg. Qi Wang 2024-10-14 10:28:50 -07:00
  • 6d625d5e5e Add support for clock_gettime_nsec_np() Qi Wang 2024-10-04 15:25:54 -07:00
  • 397827a27d Updated jeprof with more symbols to filter. Guangli Dai 2024-08-16 16:36:57 -07:00
  • 02251c0070 Update the configure cache file example in INSTALL.md Qi Wang 2024-10-04 11:29:04 -07:00
  • 8c2b8bcf24 Update doc to reflect muzzy decay is disabled by default. Qi Wang 2024-10-04 11:18:43 -07:00
  • edc1576f03 Add safe frame-pointer backtrace unwinder Nathan Slingerland 2024-09-16 11:00:37 -07:00
  • 3a0d9cdadb Use MSVC __declspec(thread) for TSD on Windows Ben Niu 2024-08-30 17:32:42 -07:00
  • 1c900088c3 Do not support hpa if HUGEPAGE is too large. Guangli Dai 2024-09-26 15:40:52 -07:00
  • 4f4fd42447 Remove strict_min_purge_interval option Dmitry Ilvokhin 2024-08-29 10:49:31 -07:00
  • 6cc42173cb Assert the mutex is locked within malloc_mutex_assert_owner(). Qi Wang 2024-09-20 20:33:10 -07:00
  • 44db479fad Fix the lock owner sanity checking during background thread boot. Qi Wang 2024-09-20 20:24:30 -07:00
  • 0181aaa495 Optimize edata_cmp_summary_compare when __uint128_t is available Guangli Dai 2024-09-13 15:52:22 -07:00
  • 734f29ce56 Fix compilation with MSVC 2022 roblabla 2024-09-23 15:33:43 +02:00
  • de5606d0d8 Fix a missing init value warning caught by static analysis. Qi Wang 2024-09-20 15:39:46 -07:00
  • 1960536b61 Add malloc_mutex_is_locked() sanity checks. Qi Wang 2024-09-19 23:28:23 -07:00
  • 3eb7a4b53d Fix mutex state tracking around pthread_cond_wait(). Qi Wang 2024-09-20 15:07:27 -07:00
  • 661fb1e672 Fix the locked flag for malloc_mutex_trylock(). Qi Wang 2024-09-19 23:48:55 -07:00
  • db4f0e7182 Add travis tests for arm64. Guangli Dai 2024-08-27 14:26:57 -07:00
  • 8c2e15d1a5 Add malloc_open() / malloc_close() reentrancy safe helpers Nathan Slingerland 2024-09-10 13:29:35 -07:00
  • 60f472f367 Fix initialization of pop_attempt_results in bin_batching test Nathan Slingerland 2024-09-12 09:03:30 -07:00
  • 323ed2e3a8 Optimize fast path to allow static size class computation. Qi Wang 2024-09-11 15:08:24 -07:00
  • c1a3ca3755 Adjust the value width in stats output. Qi Wang 2024-05-03 12:04:09 -07:00
  • 3383b98f1b Check if the huge page size is expected when enabling HPA. Qi Wang 2024-03-28 16:04:56 -07:00
  • cd05b19f10 Fix the VM over-reservation on aarch64 w/ larger pages. Qi Wang 2024-03-28 14:43:17 -07:00
  • baa5a90cc6 fix nstime_update_mock in arena_decay unit test Shirui Cheng 2024-08-28 15:17:11 -07:00
  • 7c99686165 Better handle burst allocation on tcache_alloc_small_hard Shirui Cheng 2024-08-22 14:50:08 -07:00
  • 0c88be9e0a Regulate GC frequency by requiring a time interval between two consecutive GCs Shirui Cheng 2024-08-01 14:01:32 -07:00
  • e2c9f3a9ce Take locality into consideration when doing GC flush Shirui Cheng 2024-08-01 13:20:11 -07:00
  • 14d5dc136a Allow a range for the nfill passed to arena_cache_bin_fill_small Shirui Cheng 2024-08-01 10:24:09 -07:00
  • f68effe4ac Add a runtime option opt_experimental_tcache_gc to guard the new design Shirui Cheng 2024-08-12 16:15:46 -07:00
  • 9e123a833c Leverage new Windows API TlsGetValue2 for performance Ben Niu 2023-12-21 20:33:41 -08:00
  • e29ac61987 Limit Cirrus CI to freebsd 15 and 14 Qi Wang 2024-08-28 16:19:16 -07:00
  • bd0a5b0f3b Fix static analysis warnings. Qi Wang 2024-08-28 11:33:07 -07:00
  • 5b72ac098a Remove tests for ppc64 on Travic CI. Guangli Dai 2024-08-23 14:25:47 -07:00
  • 8c54637f8c Better trigger race condition in bin_batching unit test Shirui Cheng 2024-08-22 21:58:58 -07:00
  • c7ccb8d7e9 Add experimental prefix to hpa_strict_min_purge_interval Dmitry Ilvokhin 2024-08-19 10:54:19 -07:00
  • aaa29003ab Limit maximum number of purged slabs with option Dmitry Ilvokhin 2024-08-06 08:47:57 -07:00
  • 143f458188 Fix hpa_strict_min_purge_interval option logic Dmitry Ilvokhin 2024-08-06 08:37:04 -07:00
  • 0a9f51d0d8 Simplify hpa_shard_maybe_do_deferred_work Dmitry Ilvokhin 2024-08-02 09:35:44 -07:00
  • a25b9b8ba9 Simplify the logic when bumping lg_fill_div. Amaury Séchet 2024-07-24 21:16:11 +00:00
  • 8fefabd3a4 increase the ncached_max in fill_flush test case to 1024 Shirui Cheng 2024-07-18 17:49:21 -07:00
  • 47c9bcd402 Use a for-loop to fulfill flush requests that are larger than CACHE_BIN_NFLUSH_BATCH_MAX items Shirui Cheng 2024-07-18 17:33:07 -07:00
  • 48f66cf4a2 add a size check when declare a stack array to be less than 2048 bytes Shirui Cheng 2024-07-18 15:36:08 -07:00
  • 8dc97b1108 Fix NSTIME_MONOTONIC for win32 implementation Burton Li 2024-07-01 15:49:58 -07:00
  • bc32ddff2d Add usize to prof_sample_hook_t Nathan Slingerland 2024-07-29 11:28:41 -07:00
  • b66f689764 Emit long string values without truncation Dmitry Ilvokhin 2024-07-18 07:58:51 -07:00
  • c893fcd169 Change macOS mmap tag to fix conflict with CoreMedia Danny Lin 2024-06-10 15:03:23 -07:00
  • a1fcbebb18 skip tcache GC for tcache_max unit test Shirui Cheng 2024-05-23 12:19:57 -07:00
  • 8477ec9562 Set dependent as false for all rtree reads without ownership Guangli Dai 2024-06-21 15:21:52 -07:00
  • 21bcc0a8d4 Make JEMALLOC_CXX_THROW definition compatible with newer C++ versions Guangli Dai 2024-06-06 11:14:40 -07:00
  • 867c6dd7dc Option to guard hpa_min_purge_interval_ms fix Dmitry Ilvokhin 2024-06-07 05:32:24 -07:00
  • 91a6d230db Respect hpa_min_purge_interval_ms option Dmitry Ilvokhin 2024-05-31 06:35:48 -07:00
  • 90c627edb7 Export hugepage size with arenas.hugepage Dmitry Ilvokhin 2024-05-31 10:28:58 -07:00
  • f9c0b5f7f8 Bin batching: add some stats. David Goldblatt 2024-02-20 14:54:43 -08:00
  • fc615739cb Add batching to arena bins. David Goldblatt 2024-02-09 16:08:45 -08:00
  • 44d91cf243 Tcache flush: Partition by bin before locking. David Goldblatt 2024-02-07 13:18:39 -08:00
  • 6e56848850 Tcache: Split up small/large handling. David Goldblatt 2024-02-07 10:21:53 -08:00
  • c085530c71 Tcache batching: Plumbing David Goldblatt 2024-02-02 13:20:14 -08:00
  • 70c94d7474 Add batcher module. David Goldblatt 2024-01-22 15:34:58 -08:00
  • 86f4851f5d Add clang static analyzer suppression macro. David Goldblatt 2024-05-21 15:52:57 -07:00