Commit Graph

  • 515ab93842
    cleanup and fixes Acrimon 2020-12-26 00:05:20 +0100
  • 6906e9aa7e
    fixed test cfgs Acrimon 2020-12-25 23:49:55 +0100
  • 277436b8e3
    Merge pull request #118 from nico-abram/serde-dashset Joel Wejdenstål 2020-12-26 00:20:36 +0100
  • 5b6c3821b0
    Merge pull request #116 from cuviper/rayon Joel Wejdenstål 2020-12-25 23:54:01 +0100
  • c1c176d8d3
    Merge pull request #115 from xfix/update-cfg-if Joel Wejdenstål 2020-12-25 23:52:58 +0100
  • ed9464c2a3
    Merge pull request #123 from extrawurst/patch-1 Joel Wejdenstål 2020-12-25 23:51:38 +0100
  • 21f1b10cb6
    Update lib.rs Stephan Dilly 2020-12-12 15:13:25 +0100
  • aa66b97b01 update to use ahash 0.6 Zhang Jingqiang 2020-11-26 23:19:54 +0800
  • 5c64890a7e update dependencies Zhang Jingqiang 2020-11-24 23:04:16 +0800
  • ea556126ca fix #105 Serde support for DashSet unknown 2020-11-21 19:25:25 -0300
  • c383e28b23 Add optional rayon support Josh Stone 2020-11-12 15:05:00 -0800
  • 402b80faa3 Update cfg-if to 1.0.0 Konrad Borowski 2020-11-12 13:39:40 +0100
  • cd63e6f55a Disable ahash's compile-time-rng feature Konrad Borowski 2020-11-05 21:32:00 +0100
  • ff24fc3e05 add Ref::map and RefMut::map s97712 2020-10-05 16:32:28 +0800
  • a62adb5ab5
    Cargo: bump ahash to ^0.4.4 and hashbrown to ^0.9.0 Fabio Valentini 2020-09-29 00:48:21 +0200
  • ce3f10a011
    refactor: started porting code over to use flize Acrimon 2020-08-17 23:03:44 +0200
  • e2d50cd353
    Update README.md Acrimon 2020-08-16 13:29:48 +0200
  • 823a6879fd
    Update README.md Acrimon 2020-08-16 13:28:07 +0200
  • 8d2a370fd1
    style: remove newline Acrimon 2020-08-13 16:13:05 +0200
  • 6228bf9c28
    fix: remove lock in thread local table and make needed changes Acrimon 2020-08-13 16:11:05 +0200
  • 65028fd395
    test: add debug asserts to enforce safety invariants for unsafe funtions in src/thread_local/table.rs Acrimon 2020-08-13 14:57:22 +0200
  • 3cc460ccbd
    fix: use unchecked array access where possible Acrimon 2020-08-13 14:26:58 +0200
  • 6af1760ca5
    docs: add safety and atomic ordering explanation comments Acrimon 2020-08-13 14:15:12 +0200
  • ed8b007712
    docs: fix a typo Acrimon 2020-08-13 14:12:11 +0200
  • 86b695feb9
    fix: relax atomic orderings where possible in thread_local and use relaxed fast paths Acrimon 2020-08-13 13:58:57 +0200
  • daa9193dae
    fix: use relaxed loads where possible in thread_local and only fall back to an acquire load when creating an iterator as that may happen from other threads Acrimon 2020-08-13 13:50:16 +0200
  • 02dccd1105
    fix: drop the old queue at the end of a collect cycle Acrimon 2020-08-13 11:38:39 +0200
  • 9693646393
    fix: we only need to perform a relaxed decrement of the active counter Acrimon 2020-08-13 11:19:10 +0200
  • a6556ae650
    fix: load the global epoch with acquire ordering in Gc::retire to prevent garbage being queued somewhere invalid due to a delayed epoch increment Acrimon 2020-08-13 04:03:59 +0200
  • 2c9e06cfee
    chore: relax a bunch of memory orderings Acrimon 2020-08-13 03:50:59 +0200
  • e43413d194
    fix: relax a lot of orderings in gc Acrimon 2020-08-13 03:31:18 +0200
  • d3e5c9de24
    fix: we that acquire I think Acrimon 2020-08-13 02:54:33 +0200
  • f9f90301f1
    fix: update orderings and remove some fences Acrimon 2020-08-13 02:51:59 +0200
  • 8b05c2bc8b
    fix: relax atomic orderings where possible and add needed fenches to slow paths in thread_local Acrimon 2020-08-13 02:23:00 +0200
  • 9b838ff244
    fix: perfom unchecked access where possible in thread_local/table.rs Acrimon 2020-08-13 01:40:19 +0200
  • 133c84de1f
    fix: use unwrap_unchecked where possible Acrimon 2020-08-13 01:33:14 +0200
  • 968440c3d1
    feat: add OptionUnchecked extension trait for unchecked unwrapping Acrimon 2020-08-13 01:23:58 +0200
  • b790f4ee0f
    feat: use WyRng instead of Pcg32 for better aarch64 performance Acrimon 2020-08-13 01:07:41 +0200
  • 6521c006b5
    docs: improve docs for Pcg32 Acrimon 2020-08-13 00:10:36 +0200
  • 3cc1898524
    docs: add doc comments for Bucket Acrimon 2020-08-12 23:54:44 +0200
  • b298a3155f
    test: add a lot of gc asserts Acrimon 2020-08-12 23:32:40 +0200
  • a3aa04b0fe
    fix: write the tag to fresh buckets properly Acrimon 2020-08-12 19:02:41 +0200
  • e629412318
    Update README.md Acrimon 2020-08-12 11:38:19 +0200
  • 768f04b825
    docs: added som doc comments in src/gc/thread_state.rs Acrimon 2020-08-12 00:51:50 +0200
  • 32dafc1a1a
    chore: don't run ci on wasm Acrimon 2020-08-11 23:39:27 +0200
  • bf0b2babbf
    test: ensure queue works as expected Acrimon 2020-08-11 23:36:52 +0200
  • 9748f9d0de
    fix: rename test to tests Acrimon 2020-08-11 23:09:51 +0200
  • b5b3f959e5
    test: ensure GlobalObjectAllocator works correctly Acrimon 2020-08-11 23:07:52 +0200
  • c23f4aa881
    fix: undefined behaviour at gc/queue.rs:45 caused by writing to a pointer from a non mut reference, thanks Daniel Henry-Mantilla Acrimon 2020-08-11 22:40:10 +0200
  • 2339d227e8
    docs: add a whole bunch of docs Acrimon 2020-08-11 19:24:00 +0200
  • 7ff3822594
    fix: perform a full fence after pinning Acrimon 2020-08-11 19:15:28 +0200
  • 53eab85d66
    chore: remove unused code Acrimon 2020-08-11 19:08:22 +0200
  • 9ddc78b453
    refactor: reworked gc Acrimon 2020-08-11 18:23:53 +0200
  • 13d8d1995f
    Merge pull request #102 from xacrimon/acrimon/resolve-ci Acrimon 2020-08-11 16:43:40 +0200
  • 480af406e6
    Update ci.yml Acrimon 2020-08-11 16:37:58 +0200
  • a29d499c18
    Update README.md Acrimon 2020-08-11 16:32:22 +0200
  • 20f8102add
    Update README.md Acrimon 2020-08-11 16:32:05 +0200
  • ee1bae1292
    Update README.md Acrimon 2020-08-11 16:27:03 +0200
  • 87b9254d63
    Merge pull request #101 from xacrimon/acrimon/xscode Acrimon 2020-08-11 16:24:41 +0200
  • 97613d4eda
    Update README.md Acrimon 2020-08-11 16:24:01 +0200
  • 5aaedd8d24
    fix: don't enter a critical section in Bucket::read Acrimon 2020-08-11 10:29:02 +0200
  • a7f23fe4ae
    docs: added some more comments Acrimon 2020-08-10 23:24:07 +0200
  • dfe1e4b26a
    fix: change initial capacity of thread priority queue from 4 to 8 Acrimon 2020-08-10 12:34:17 +0200
  • e3cd50b1ff
    docs: update and add comments Acrimon 2020-08-10 12:30:16 +0200
  • f319afb5d2
    fix: export Guard Acrimon 2020-08-09 22:21:03 +0200
  • d8ce244cd9
    refactor: reworked thread_local Acrimon 2020-08-09 22:11:39 +0200
  • 93ff555f17
    chore: format code Acrimon 2020-08-09 02:03:33 +0200
  • 594a59850e
    feat: dynamic gc collection Acrimon 2020-08-09 02:00:51 +0200
  • 3aba8337cc
    feat: added Gc::try_advance() Acrimon 2020-08-09 01:44:27 +0200
  • 0d197ff549
    chore: remove Queue::is_empty Acrimon 2020-08-08 00:54:09 +0200
  • 3537f9eb95
    feat: return true on success of Queue::push and false if capacity hit Acrimon 2020-08-08 00:52:16 +0200
  • d130524daa
    feat: added Bucket::read for creating a Guard from a Bucket Acrimon 2020-08-07 10:30:03 +0200
  • 90bac8cf9a
    fix: unsound queue Acrimon 2020-08-07 10:24:08 +0200
  • b66821566e
    refactor: switch Bucket and GenericEntryManager code to use the new gc Acrimon 2020-08-07 00:28:15 +0200
  • f2aa8ac08d
    feat: deallocate all garbage when a gc instance is dropped Acrimon 2020-08-07 00:16:49 +0200
  • c4d46f0d5a
    feat: added Gc::retire for retiring old nodes Acrimon 2020-08-06 23:46:14 +0200
  • a4aeaaf5ff
    feat: add garbage list field to gc Acrimon 2020-08-06 23:35:12 +0200
  • b14cd33e7f
    feat: added core functionality to the new gc Acrimon 2020-08-06 23:32:26 +0200
  • 6f3137a46d
    feat: garbage queue structure Acrimon 2020-08-06 21:06:19 +0200
  • 289c477610
    fix: I think we can use the regular Hyaline actually Acrimon 2020-08-05 22:56:49 +0200
  • 10732e17d5
    docs: update comment Acrimon 2020-08-05 22:28:49 +0200
  • f00badbe54
    feat: add empty gc module Acrimon 2020-08-05 22:23:24 +0200
  • 7e3ec0667b
    fix: remove loom tests but retain the loom shim Acrimon 2020-08-05 17:22:38 +0200
  • 842f75cee5
    feat: use loom for testing Acrimon 2020-08-05 14:32:56 +0200
  • 148c61692f
    feat: loom shim Acrimon 2020-08-05 14:00:40 +0200
  • 73a85ffe0e
    chore: format code Acrimon 2020-08-05 13:31:52 +0200
  • 5b468fa63d
    test: ensure the tombstone flag is set once an entry goes from occupied to vacant Acrimon 2020-08-05 13:31:03 +0200
  • f6f88a5954
    test: ensure we can create and retrieve data from an entry using GenericEntryManager Acrimon 2020-08-05 13:14:38 +0200
  • e7754d744e
    fix: set tombstone flag correctly Acrimon 2020-08-05 13:03:49 +0200
  • cc5b63d7de
    fix: strip bits correctly in GenericEntryManager Acrimon 2020-08-05 13:00:54 +0200
  • a887a1f549
    chore: formatted code Acrimon 2020-08-05 12:56:06 +0200
  • 3b6ff54bde
    fix: correctly set resize flag on entry manager Acrimon 2020-08-05 12:53:01 +0200
  • e642d09c6c
    test: ensure the resize flag is set correctly with GenericEntryManager Acrimon 2020-08-05 11:04:58 +0200
  • 717aa24767
    test: make sure the circular iterator yields the expected set of values for a specific range Acrimon 2020-08-05 10:54:03 +0200
  • db6a854a1c
    docs: improved doc comment Acrimon 2020-08-05 10:44:58 +0200
  • 638f5b7373
    docs: add unsafe code comments Acrimon 2020-08-05 10:43:21 +0200
  • b1e0c6c165
    feat: implemented GenericEntryManager::cas Acrimon 2020-08-05 10:31:17 +0200
  • 77fa5a5063
    docs: fixed root crate docs Acrimon 2020-08-05 09:51:01 +0200
  • c1fe3521e3
    feat: extract bit checking into a seperate function is_on Acrimon 2020-08-05 01:16:18 +0200
  • 07205ffe92
    feat: implemented GenericEntryManager::eq Acrimon 2020-08-05 01:11:45 +0200