Commit Graph

  • d93eef2f40 HPA: Introduce a redesigned hpa_central_t. David Goldblatt 2021-05-07 13:54:26 -07:00
  • e09eac1d4e Remove hpa_central. David Goldblatt 2021-05-06 13:47:01 -07:00
  • c88fe355e6 Add unit tests for decay Alex Lapenkou 2021-07-21 14:45:55 -07:00
  • aaea4fd1e6 Add more documentation to decay.c Alex Lapenkou 2021-07-20 13:22:05 -07:00
  • 4b633b9a81 Clean up background thread sleep computation Alex Lapenkou 2021-07-16 14:53:25 -07:00
  • 6630c59896 HPA: Hugification hysteresis. David Goldblatt 2021-06-14 14:53:23 -07:00
  • 113938b6f4 HPA: Pull out a hooks type. David Goldblatt 2021-06-14 14:18:08 -07:00
  • 1d4a7666d5 HPA: Do deferred operations on background threads. David Goldblatt 2021-06-07 11:45:57 -07:00
  • 583284f2d9 Add HPA deferral functionality. David Goldblatt 2021-06-04 16:07:27 -07:00
  • ace329d11b HPA batch dalloc: Just do one deferred work check. David Goldblatt 2021-06-04 13:52:28 -07:00
  • 47d8a7e6b0 psset: Purge empty slabs first. David Goldblatt 2021-06-03 16:21:29 -07:00
  • 41fd56605e HPA: Purge across retained extents. David Goldblatt 2021-06-03 13:29:02 -07:00
  • 347523517b PAI: Fix a typo. David Goldblatt 2021-07-08 10:38:45 -07:00
  • 9c42ed2d14 Travis: Don't test "clang" on OS X. David Goldblatt 2021-07-07 15:16:38 -07:00
  • d202218e86 HPA: Fix typos with big performance implications. David Goldblatt 2021-06-03 17:14:43 -07:00
  • de033f56c0 mpsc_queue: Add module. David Goldblatt 2021-05-11 14:49:55 -07:00
  • 4452a4812f Add opt.experimental_infallible_new. David Goldblatt 2021-06-21 13:40:30 -07:00
  • 0689448b1e Travis: Unbreak the builds. David Goldblatt 2021-06-21 14:07:10 -07:00
  • 4fb93a18ee extent_can_acquire_neighbor typo fix David Carlier 2021-06-19 13:38:44 +01:00
  • 2381efab57 ARC: add Minimum allocation alignment Vineet Gupta 2021-05-21 07:28:16 -07:00
  • 2c0f4c2ac3 Fix typo in configure.ac: experimetal -> experimental Ondřej Surý 2021-05-25 09:19:40 +02:00
  • 36c6bfb963 SEC: Allow arbitrarily many shards, cached sizes. David Goldblatt 2021-05-18 14:52:46 -07:00
  • 11beab38bc Added --debug-syms-by-id option Deanna Gelbart 2021-05-11 19:02:33 -07:00
  • 08089589f7 Fix an interaction between the oversize_threshold test and bgthds. Qi Wang 2021-05-12 16:00:38 -07:00
  • 5417938215 Red-black tree: add summarize/filter. David Goldblatt 2021-03-16 18:08:04 -07:00
  • b2c08ef2e6 RB unit tests: don't test reentrantly. David Goldblatt 2021-03-04 15:08:41 -08:00
  • aea91b8c33 Clean up some minor data structure inconsistencies David Goldblatt 2021-02-17 16:23:24 -08:00
  • 1f688490e1 Stats: Fix a printing bug when hpa_dirty_mult = -1 David Goldblatt 2021-05-05 16:51:43 -07:00
  • 4f7cb3a413 Sized deallocation: fix a typo. David Goldblatt 2021-05-03 17:14:47 -07:00
  • 12cd13cd41 Fix thread.name/prof_sys_thread_name interaction David Goldblatt 2021-03-30 15:20:30 -07:00
  • 304cdbb132 Fix a prof_recent/prof_sys_thread_name interaction David Goldblatt 2021-03-30 14:55:28 -07:00
  • 9b523c6c15 Refactor the locking in extent_recycle(). Qi Wang 2021-03-30 16:55:22 -07:00
  • ce68f326b0 Avoid the release & re-acquire of the ecache locks around the merge hook. Qi Wang 2021-03-30 16:09:37 -07:00
  • 7dc77527ba Delete the mutex_pool module. Qi Wang 2021-03-25 17:44:18 -07:00
  • 03d95cba88 Remove the unnecessary arena_ind_set in base_alloc_edata(). Qi Wang 2021-03-19 00:23:46 -07:00
  • 3093d9455e Move the edata mergeability related functions to extent.h. Qi Wang 2021-03-25 15:32:44 -07:00
  • 7c964b0352 Add rtree_write_range(): writing the same content to multiple leaf elements. Qi Wang 2021-03-17 16:35:57 -07:00
  • add636596a Stop checking head state in the merge hook. Qi Wang 2021-03-11 23:41:51 -08:00
  • 49b7d7f0a4 Passing down the original edata on the expand path. Qi Wang 2021-03-11 00:21:47 -08:00
  • 1784939688 Use rtree tracked states to protect edata outside of ecache locks. Qi Wang 2021-03-04 14:33:40 -08:00
  • 9ea235f8fe Add witness_assert_positive_depth_to_rank(). Qi Wang 2021-03-02 17:26:26 -08:00
  • 4d8c22f9a5 Store edata->state in rtree leaf and make edata_t 128B aligned. Qi Wang 2021-02-26 15:32:41 -08:00
  • 70d1541c5b Track extent is_head state in rtree leaf. Qi Wang 2021-02-26 15:11:58 -08:00
  • 862219e461 Add quiescence sync before deleting base during arena_destroy. Qi Wang 2021-03-19 22:50:01 -07:00
  • a137a68252 Remove redundant declaration, pac_retain_grow_limit_get_set was declared twice in pac.h Evers Chen 2021-03-30 07:27:37 +08:00
  • 2ae1ef7dbd Fix doc large size 54 KiB error lirui 2021-03-26 17:32:35 +08:00
  • 61afb6a405 Fix locking on arena_i_destroy_ctl(). Qi Wang 2021-03-19 22:50:22 -07:00
  • 9193ea2248 Cirrus: fix build. David Goldblatt 2021-02-25 10:17:44 -08:00
  • 3913077146 Mark head state during dss alloc. Qi Wang 2021-03-12 11:27:00 -08:00
  • 11127240ca Remove redundant enable-debug definition in configure. Qi Wang 2021-03-11 22:26:12 -08:00
  • 22be724af4 Set is_head in extent_alloc_wrapper w/ retain. Qi Wang 2021-03-11 16:57:15 -08:00
  • 73ca4b8ef8 HPA: Use dirtiest-first purging. David Goldblatt 2021-02-08 14:11:37 -08:00
  • 0f6c420f83 HPA: Make purging/hugifying more principled. David Goldblatt 2021-02-05 10:46:17 -08:00
  • 6bddb92ad6 psset: Rename "bitmap" to "pageslab_bitmap". David Goldblatt 2021-02-08 11:26:56 -08:00
  • 154aa5fcc1 Use the flat bitmap for eset and psset bitmaps. David Goldblatt 2021-02-08 11:04:46 -08:00
  • 271a676dcd hpdata: early bailout for longest free range. David Goldblatt 2021-02-06 11:57:32 -08:00
  • d21d5b46b6 Edata: Move sn into its own field. David Goldblatt 2021-02-06 09:29:01 -08:00
  • fb327368db SEC: Expand option configurability. David Goldblatt 2021-01-26 18:35:18 -08:00
  • ce9386370a HPA: Implement batch allocation. David Goldblatt 2021-01-20 14:55:42 -08:00
  • cdae6706a6 SEC: Use batch fills. David Goldblatt 2021-01-19 13:06:43 -08:00
  • 480f3b11cd Add a batch allocation interface to the PAI. David Goldblatt 2021-01-07 12:27:43 -08:00
  • bf448d7a5a SEC: Reduce lock hold times. David Goldblatt 2021-01-05 15:52:25 -08:00
  • 1944ebbe7f HPA: Implement batch deallocation. David Goldblatt 2021-01-04 19:43:08 -08:00
  • f47b4c2cd8 PAI/SEC: Add a dalloc_batch function. David Goldblatt 2021-01-04 18:40:27 -08:00
  • 4b8870c7db SEC: Fix a comment typo. David Goldblatt 2021-01-04 18:22:02 -08:00
  • cde7097eca Update INSTALL.md to mention 'autoconf' Jordan Rome 2021-02-15 20:12:23 -05:00
  • a11be50332 Implement opt.cache_oblivious. Qi Wang 2021-02-09 22:24:35 -08:00
  • 8c5e5f50a2 Fix stats for "tcache_max" (was "lg_tcache_max") Jordan Rome 2021-02-10 11:08:18 -05:00
  • 041145c272 Report the correct and wrong sizes on sized dealloc bug detection. Qi Wang 2021-02-05 17:26:45 -08:00
  • f3b2668b32 Report the offending pointer on sized dealloc bug detection. Qi Wang 2021-02-05 16:47:09 -08:00
  • edbfe6912c Inline malloc fastpath into operator new. David Goldblatt 2021-02-08 08:49:34 -08:00
  • 79f81a3732 HPA: Make dirty_mult configurable. David Goldblatt 2020-12-09 15:55:17 -08:00
  • 32dd153796 HPA: Make dehugification threshold configurable. David Goldblatt 2020-12-09 14:42:05 -08:00
  • 4790db15ed HPA: make the hugification threshold configurable. David Goldblatt 2020-12-09 13:52:29 -08:00
  • b3df80bc79 Pull HPA options into a containing struct. David Goldblatt 2020-12-08 16:33:39 -08:00
  • bdb7307ff2 fxp: Add FXP_INIT_PERCENT David Goldblatt 2020-12-08 15:28:28 -08:00
  • caef4c2868 FXP: add fxp_mul_frac. David Goldblatt 2020-12-08 13:22:59 -08:00
  • 56e85c0e47 HPA: Use a whole-shard purging heuristic. David Goldblatt 2020-12-06 13:48:46 -08:00
  • dc886e5608 hpdata: Return the number of pages to be purged. David Goldblatt 2020-12-06 13:16:51 -08:00
  • 9fd9c876bb psset: keep aggregate stats. David Goldblatt 2020-12-06 12:49:03 -08:00
  • da63f23e68 HPA: Track pending purges/hugifies in the psset. David Goldblatt 2020-12-06 09:49:26 -08:00
  • 0ea3d6307c CTL, Stats: report HPA empty slab stats. David Goldblatt 2020-12-05 19:24:23 -08:00
  • bf64557ed6 Move empty slab tracking to the psset. David Goldblatt 2020-12-05 17:42:04 -08:00
  • 99fc0717e6 psset: Reconceptualize insertion/removal. David Goldblatt 2020-12-05 15:58:31 -08:00
  • 061cabb712 HPA stats: report retained instead of inactive. David Goldblatt 2020-12-03 19:35:21 -08:00
  • d3e5ea03c5 HPA: Track dirty stats. David Goldblatt 2020-12-03 19:15:54 -08:00
  • 68a1666e91 hpdata: Rename "dirty" to "touched". David Goldblatt 2020-12-03 18:58:58 -08:00
  • be0d7a53f3 HPA: Don't track inactive pages. David Goldblatt 2020-12-03 18:43:10 -08:00
  • 55e0f60ca1 psset stats: Simplify handling. David Goldblatt 2020-12-03 18:32:42 -08:00
  • 94cd9444c5 HPA: Some minor reformattings. David Goldblatt 2020-12-03 18:02:23 -08:00
  • b25ee5d88e HPA: Add purge stats. David Goldblatt 2020-12-03 16:09:50 -08:00
  • 746ea3de6f HPA stats: Allow some derived stats. David Goldblatt 2020-12-03 15:35:38 -08:00
  • 30b9e8162b HPA: Generalize purging. David Goldblatt 2020-12-02 22:24:15 -08:00
  • 70692cfb13 hpdata: Add state changing helpers. David Goldblatt 2020-12-02 18:44:34 -08:00
  • 9b75808be1 flat bitmap: Add a bitwise and/or/not. David Goldblatt 2020-12-02 19:06:32 -08:00
  • 2ae966222f hpdata: track per-page dirty state. David Goldblatt 2020-12-02 17:56:58 -08:00
  • ff4086aa6b hpdata: count active pages instead of free ones. David Goldblatt 2020-12-02 17:01:57 -08:00
  • 3624dd42ff hpdata: Add a comment for hpdata_consistent. David Goldblatt 2021-01-28 13:19:41 -08:00
  • 20140629b4 Bin: Move stats closer to the mutex. David Goldblatt 2021-02-01 12:03:11 -08:00
  • c259323ab3 Use ticker_geom_t for arena tcache decay. David Goldblatt 2021-01-31 12:50:55 -08:00