bearcove / loona

HTTP 1+2 in Rust, with io_uring & ktls
https://docs.rs/loona
Apache License 2.0
361 stars 13 forks source link

feat: Try going back to stable with LocalKey and no nightly features #208

Closed fasterthanlime closed 3 months ago

fasterthanlime commented 3 months ago

It would be nice to be on stable. We'll see if the perf is acceptable.

codspeed-hq[bot] commented 3 months ago

CodSpeed Performance Report

Merging #208 will degrade performances by 77.28%

Comparing back-to-stable (68995c1) with main (9df2294)

Summary

โŒ 2 (๐Ÿ‘ 2) regressions โœ… 4 untouched benchmarks

๐Ÿ†• 4 new benchmarks โ‰๏ธ 2 (๐Ÿ‘ 2) dropped benchmarks

Benchmarks breakdown

Benchmark main back-to-stable Change
๐Ÿ‘ format_content_length/itoa/buffet 203.6 ยตs 285.5 ยตs -28.69%
๐Ÿ‘ format_content_length/itoa/heap 196.7 ยตs 865.7 ยตs -77.28%
๐Ÿ†• format_content_length/itoa/pool N/A 169.4 ยตs N/A
๐Ÿ‘ format_content_length/itoa/stack 34.7 ยตs N/A N/A
๐Ÿ†• format_content_length/lut N/A 153 ยตs N/A
๐Ÿ‘ format_content_length/std_fmt 350.8 ยตs N/A N/A
๐Ÿ†• format_content_length/std_fmt/buffet N/A 504.6 ยตs N/A
๐Ÿ†• format_content_length/std_fmt/heap N/A 1 ms N/A
fasterthanlime commented 3 months ago

That's super interesting โ€” on macOS I see a 20% regression. I guess I don't care for absolute macOS performance that much, but it could be worth adding a nightly feature that uses #[thread_local] instead of thread_local!