-
-
Notifications
You must be signed in to change notification settings - Fork 13
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
1afe948
commit ce533ed
Showing
3 changed files
with
25 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
# fluke-buffet | ||
|
||
This crate is mostly a terrible idea, but it's doing buffer management | ||
for `fluke`. | ||
|
||
It's designed to memmap a big chunk of memory and then, well, hand out | ||
reference-counted (non-thread-safe) pieces of it. It was faster than stack | ||
allocation in some benchmark I did a while ago. | ||
|
||
Also, it's compatible with io_uring in that you can give ownership of one of the | ||
pieces to a read/write operation and nobody else is able to use it until that | ||
operation is done, which is really neat. | ||
|
||
There's a bunch of splitting operations that try to maintain reference count | ||
and the general "one mutable reference XOR multiple read-only references" vibe | ||
of the whole endeavor. | ||
|
||
I'm not honestly convinced buffet is the optimal way to go about this, but it | ||
works for now, it's io_uring and fallback-codepath friendly... ah well. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
# fluke-maybe-uring | ||
|
||
fluke uses [tokio-uring](https://crates.io/crates/tokio-uring), but it also | ||
tries to function on platforms where io_uring is not available: this crate | ||
abstracts over "classic tokio" I/O types and tokio-uring types. |