Commit graph

  • 5e95ebc7a0 fix free stats daanx 2024-12-02 17:46:41 -08:00
  • c9abfe8253 wip: can run mstress daanx 2024-12-02 16:24:40 -08:00
  • d96c134566 wip: initial version with eager abandonment daanx 2024-12-02 16:01:45 -08:00
  • bcdb4dc639 mimalloc fix Ruben Sturm 2024-12-02 18:10:21 +00:00
  • bdc87fc91b readme - describe how to run under Valgrind with dynamic override Joris van der Geer 2024-12-02 20:50:08 +10:00
  • 69ac69abac wip: use epoch with 512bit chunks daanx 2024-12-02 00:31:08 -08:00
  • 2f789aae9a wip: cannot compile daanx 2024-12-01 16:26:59 -08:00
  • 1d7a9f62a5 bug fixes daanx 2024-12-01 12:54:16 -08:00
  • 8f2a5864b8 pass all debug tests daanx 2024-11-30 22:54:57 -08:00
  • 9ebe941ce0 first version that passes the make test daanx 2024-11-30 20:21:32 -08:00
  • 8dd6460d5e Do not discard segments for large object allocations Sergiy Kuryata 2024-11-30 18:44:35 -08:00
  • 55b70f1588 wip daanx 2024-11-30 14:00:07 -08:00
  • f8d04dc2bc compile with clang and gcc daanx 2024-11-30 12:41:11 -08:00
  • d15e83030e wip: rename arena blocks to slices daanx 2024-11-30 12:16:41 -08:00
  • 309fc26b4b wip: add generic find_and_xset daanx 2024-11-30 12:00:30 -08:00
  • 188294a0df wip: bug fixes daanx 2024-11-30 11:12:39 -08:00
  • 9d904e8643 wip: bug fixes daanx 2024-11-30 10:39:30 -08:00
  • 978d844e15 wip: bug fixes daanx 2024-11-29 20:23:39 -08:00
  • 0f635413d6 wip: can run initial test daanx 2024-11-29 17:50:37 -08:00
  • e0152ab82f wip: update any_set daanx 2024-11-29 16:58:52 -08:00
  • 9603fe8b50 can compile without missing functions daanx 2024-11-29 16:27:58 -08:00
  • 68f5fb2f4b wip: further progress on segment removal; arena allocation daanx 2024-11-29 15:08:06 -08:00
  • 46afcbe06c wip: further progress on segment removal; arena allocation daanx 2024-11-29 14:28:34 -08:00
  • 441d4fed9f wip: further progress on removing segments daanx 2024-11-29 10:40:18 -08:00
  • 71cfa45e76 wip: initial work on mimalloc3 without segments daanx 2024-11-28 19:31:04 -08:00
  • 0be44b2b0f Add global counters for segments and allocation stats Sergiy Kuryata 2024-11-26 16:32:54 -08:00
  • 577246d9ed Merge branch 'dev' into dev-slice Daan 2024-11-25 19:29:49 -08:00
  • e333491952 Merge branch 'dev-slice-steal' into dev-slice Daan 2024-11-25 19:29:26 -08:00
  • 9b7537755a Merge branch 'dev-steal' into dev Daan 2024-11-25 19:28:35 -08:00
  • cd61eb7cf1
    Merge pull request #961 from devnexen/windows_tighten_criterias Daan 2024-11-25 19:25:26 -08:00
  • d2937ba3e5
    Merge pull request #964 from diegorusso/illegal-instruction Daan 2024-11-25 19:23:06 -08:00
  • 25f84f5fd1 merge from dev-steal daanx 2024-11-25 19:17:25 -08:00
  • 7673aa2517 ensure forced abandoned pages can be accessed after free daanx 2024-11-25 18:41:57 -08:00
  • 829ae9fdc3 merge from dev-steal daanx 2024-11-25 16:59:15 -08:00
  • 9b7ac9a1a6 clean up candidate search; add mi_collect_reduce daanx 2024-11-25 16:58:02 -08:00
  • 3adb19c84c Fix illegal instruction for older Arm architectures Diego Russo 2024-10-21 17:32:45 +01:00
  • c58990d4eb fix syntax error (issue #963) Daan 2024-11-22 13:55:10 -08:00
  • 75eec9e61d Fix free space mask accounting for unused slices Sergiy Kuryata 2024-11-19 18:41:30 -08:00
  • bb83080289 Merge branch 'dev-steal' into dev-slice-steal daanx 2024-11-18 16:12:54 -08:00
  • 5f585c83cd Merge branch 'dev-slice' into dev-slice-steal daanx 2024-11-18 16:12:48 -08:00
  • 9bb29b177a Merge branch 'dev' into dev-slice daanx 2024-11-18 16:12:37 -08:00
  • b898dbe3e0 Merge branch 'dev' into dev-steal daanx 2024-11-18 16:12:26 -08:00
  • ea3ac0750e merge from dev-steal daanx 2024-11-18 15:08:17 -08:00
  • 71fec8caf5 add target_segments_per_thread option daanx 2024-11-18 15:05:22 -08:00
  • 0fa99d41fc merge from dev-slice daanx 2024-11-18 11:13:29 -08:00
  • edc7ddd37c Merge branch 'dev' into dev-steal daanx 2024-11-18 11:05:31 -08:00
  • 3a7b6f0a8d allow build time setting of sample rate Daan 2024-11-18 10:28:00 -08:00
  • 54c5af5862 Merge branch 'dev' into dev-slice Daan 2024-11-17 23:37:32 -08:00
  • 9cae0d31cd Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev daanx 2024-11-17 23:30:19 -08:00
  • 54ee4e7632 merge from dev daanx 2024-11-17 23:29:21 -08:00
  • 41029d9d49 fix azure pipeline daanx 2024-11-17 23:20:18 -08:00
  • e7198ce397 Extend azure pipeline with Ubuntu 24 & 20, windows 2019, and macOS 15 daanx 2024-11-17 23:16:59 -08:00
  • ff56f6acbc update azure pipeline to use sample rate of 1000 for guarded objects daanx 2024-11-17 23:01:16 -08:00
  • b8dc09e3d2 fix asan with MI_GUARDED daanx 2024-11-17 22:56:26 -08:00
  • d57cb0765d add guarded objects that are sampled (and fit a size range). guarded sample rate etc can be set per heap as well as defaulted with options daanx 2024-11-17 22:45:09 -08:00
  • 8ba1879073 add sampling for guarded objects daanx 2024-11-17 00:06:16 -08:00
  • 8b6017d976 rename mi_debug_guarded_ to mi_guarded_ daanx 2024-11-16 22:42:32 -08:00
  • 498c92e348 update guarded implementation to use block tags daanx 2024-11-16 21:15:50 -08:00
  • c57e9b855c fix std malloc compile of the stress test Daan Leijen 2024-11-16 19:43:13 -08:00
  • 0e76fe3798 add address hint to primitive allocation API daanx 2024-11-16 16:57:37 -08:00
  • b27d154ffd add virtual address bits and physical memory to the mem config daanx 2024-11-16 15:37:08 -08:00
  • 9f0a7ac0be
    _mi_memcpy/_mi_memzero: tighten criteria for intrinsics for windows. David Carlier 2024-11-16 09:38:26 +00:00
  • 02f3e0fe7a Switch to 64bit bitmask and bug fixes Sergiy Kuryata 2024-11-08 17:35:14 -08:00
  • fd5ab9f1f3 fix new/delete overrides Eduard Voronkin 2024-11-06 12:02:22 -08:00
  • d67fe5d26a Rotate through arenas in mi_arenas_try_purge instead of always purging arena 0 if visit_all is false. Sergiy Kuryata 2024-11-05 13:00:50 -08:00
  • d2b6455749 Merge branch 'dev' into dev-slice Daan 2024-11-05 02:07:58 -08:00
  • 54940a6a65 update mimalloc-redirect to potentially fix issue #957 Daan 2024-11-05 02:07:45 -08:00
  • 2a3b8eb696 Do not call mi_abandoned_collect on allocation path as it consumes substantial amount of CPU time Sergiy Kuryata 2024-11-04 21:22:45 -08:00
  • 826425d5ab fix merge error, issue #955 Daan 2024-11-02 06:24:28 -07:00
  • 911de68d3e Experimental optimization for the segment reclamation logic. The goal is to improve efficiency of finding an abandoned segment that contains free space of the required size. This change adds a free space bitmask to the segment object. More optimal place for the bitmask could be in the arena (i.e. extend the arena’s bitmask for abandoned segments to include size information too). Sergiy Kuryata 2024-10-31 16:53:14 -07:00
  • 4f46cf7d5a ensure we dont reclaim a segment on a free if that would go above the target segment count dev-slice-steal Daan 2024-10-29 22:40:58 -07:00
  • 5cd09cec76 merge from dev Daan 2024-10-29 22:24:24 -07:00
  • e2f4fe647e update test file Daan 2024-10-29 22:23:21 -07:00
  • 3f3aee918a Merge branch 'dev-slice' into dev-slice-steal Daan 2024-10-29 20:09:12 -07:00
  • deba02e7be Merge branch 'dev' into dev-slice Daan 2024-10-29 20:08:45 -07:00
  • b5ae6fc555 remove wrong assertion Daan 2024-10-29 20:08:36 -07:00
  • eda16d7c91 remove wrong assertion Daan 2024-10-29 20:07:35 -07:00
  • 471bc768e3 Merge branch 'dev-slice' into dev-slice-steal Daan 2024-10-27 22:20:19 -07:00
  • c0e1132674 merge from dev Daan 2024-10-27 22:17:23 -07:00
  • 30640233a1
    Merge pull request #943 from asdf-bro/patch-1 Daan 2024-10-27 22:15:43 -07:00
  • c59b0cd7fc
    Merge pull request #946 from ArtSin/fix-vsnprintf-int-long-intmax_t Daan 2024-10-27 22:12:29 -07:00
  • b3828bba9e disable aligned hinting or SV39 mmu's, issue #939, and pr #949 Daan 2024-10-27 21:58:20 -07:00
  • 5f35933331 add 0 byte to canary to prevent spurious read overflow to read the canary (issue #951, pr #953) Daan 2024-10-27 21:39:07 -07:00
  • afba03145c
    Merge pull request #954 from jimwang118/fix-linux Daan 2024-10-27 21:12:58 -07:00
  • 06ee1d7949 Merge branch 'dev' into dev-slice Daan 2024-10-27 21:11:04 -07:00
  • f126b50382 update comments, set constructor priority to 101 on macOS Daan 2024-10-27 21:10:46 -07:00
  • 17802e6528 fix build error on linux Jim-Wang 2024-10-28 02:06:58 +00:00
  • d3455ea29e Merge branch 'dev' into dev-slice Daan 2024-10-27 18:17:38 -07:00
  • eaafec4461 enforce first null byte in CANARY gfelber 2024-10-27 10:59:56 +01:00
  • 3cba10e510 update mimalloc-redirect Daan 2024-10-27 01:02:13 -07:00
  • 532904c85c update mimalloc redirect to v1.2 to handle static destructors that free memory (issue #944) Daan 2024-10-24 01:01:53 -07:00
  • ee92b337b9 do not reclaim segments if free-ing from a thread with an already abandoned heap (issue #944) Daan 2024-10-24 00:13:07 -07:00
  • 2b0d039cf3 fix assertion check Daan 2024-10-23 01:21:41 -07:00
  • 925efaeac9 improve windows static library initialization to account for thread local destructors (issue #944) Daan 2024-10-23 01:10:00 -07:00
  • d951b4dd23 add missing mi_thread_done definition Daan 2024-10-23 00:53:17 -07:00
  • 6e9b38ac12 fix issue where searching for abandoned blocks would skip the first one Daan 2024-10-22 18:58:55 -07:00
  • dfdb9cb877 cleanup process init/done Daan 2024-10-22 06:52:34 -07:00
  • 104e821709 fix fast divisor for 32-bit platforms Daan 2024-10-22 06:08:56 -07:00
  • 46e9e7fdd0 fix win32 compilation Daan 2024-10-22 06:06:15 -07:00
  • e55ae0aeb7 fix duplicate definition on windows Daan 2024-10-21 23:09:14 -07:00