https://github.com/chillfish8/jocky
Giddy up! Things are going to be wild.
https://github.com/chillfish8/jocky
Last synced: 3 months ago
JSON representation
Giddy up! Things are going to be wild.
- Host: GitHub
- URL: https://github.com/chillfish8/jocky
- Owner: ChillFish8
- Created: 2022-12-11T17:19:48.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-04-10T23:12:17.000Z (about 2 years ago)
- Last Synced: 2025-02-01T14:32:17.670Z (5 months ago)
- Language: Rust
- Homepage:
- Size: 113 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Jocky - For controlling your horses
### Current Idea
The idea is essentially to have a custom directory that writes immutable segments, this means only `2` file descriptors (one for writing and one for reading) are required per-index, which reduces the amount used in multi-tenant situations.The writers have more stable performance since they depend less on the file cache to buffer writes and reads, the AIO implementation also leverages asynchronous background writing which makes CPU usage a bit more stable:
- 8 Threads, 2GB RAM, 2GB Swap, 5GB Produced index compressed.
- Green: AIO Writer
- Blue: MMapDirectory

*Writes are messured in negative MiB/s for some reason, but just ignore the `-`*
These unfinished segments as such can then be exported to a new file as the finished 'segment' as such, with each file re-organised to be contiguous.
### Testing Screenshots
#### Mmap No Advise

#### Mmap MADV_SEQUENTIAL

#### Mmap MADV_RANDOM

#### Mmap No Advise - Constrained File Cache (6GB MAX)

#### Mmap MADV_SEQUENTIAL - Constrained File Cache (6GB MAX)

#### Mmap MADV_RANDOM - Constrained File Cache (6GB MAX)

