Skip to content

Perf optimization - #2

Merged
ankitkpandey1 merged 7 commits into
mainfrom
perf-optimization
Jan 3, 2026
Merged

Perf optimization#2
ankitkpandey1 merged 7 commits into
mainfrom
perf-optimization

Conversation

@ankitkpandey1

Copy link
Copy Markdown
Owner

No description provided.

- Added Rust-native event loop (run_until_stopped) - REVERTED as it was 3x slower due to FFI overhead when calling Python callbacks from Rust
- Fixed buffer leak on FD reuse (release existing buffer before overwrite)
- Removed buffer quarantine for immediate reclamation
- Updated PyO3 default buffer_count to 4096
- Added pipes.py for StreamReader/StreamWriter API
- Added comprehensive benchmarks vs asyncio and uvloop

Results:
- uringcore beats asyncio: 18/21 benchmarks
- uringcore beats uvloop: 15/21 benchmarks
- Known limitation: sock_pair benchmark skips due to RLIMIT_MEMLOCK buffer pool size constraint
- Increased buffer_count from 1024 to 4096 for high-throughput sock_pair benchmark
- Reduced buffer_size from 32KB to 8KB to fit within RLIMIT_MEMLOCK (32MB total)
- Updated benchmark_suite.py defaults to match

sock_pair benchmark now passes: 22.84µs/op (beats uvloop 28.88µs/op)
@ankitkpandey1
ankitkpandey1 merged commit 755d76b into main Jan 3, 2026
6 of 7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant