libskry_r
ixy
libskry_r | ixy | |
---|---|---|
2 | 2 | |
16 | 1,122 | |
- | - | |
0.0 | 0.0 | |
over 3 years ago | about 2 years ago | |
Rust | C | |
MIT License | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
libskry_r
-
Rewrite the VP9 codec library in Rust
As already mentioned, bounds checks won't necessarily cause that much overhead. When I rewrote my small image processing library from C to Rust ([1]), I only had to use unchecked array access in one hot loop to get overall performance equivalent to C code.
[1] https://github.com/GreatAttractor/libskry_r
-
Speed of Rust vs. C
To practise Rust, I rewrote my small C99 library in it [1]. Performance is more or less the same, I only had to use unchecked array access in one small hot loop (details in README.md). I haven't ported multithreading yet, but I expect Rust's Rayon parallel iterators will likewise be comparable to OpenMP.
[1] https://github.com/GreatAttractor/libskry_r
ixy
-
Ask HN: Good book to learn modern networking?
Once you're past the fundamentals, if find yourself interested in high-performance networking, I recommend looking into userspace networking and NIC device drivers. The Intel 82599ES has a freely available (and readable!) data sheet, DPDK has a great book, ixy [1] has a wonderful paper and repo. It's a great way to go beyond the basics of networking and CPU performance. It's even more approachable today with XDP – you don't need to write device-specific code.
[1] https://github.com/emmericp/ixy
-
Speed of Rust vs. C
https://github.com/emmericp/ixy/blob/0e00605be4153b06df06184...
Looks like you're compiling C code with -O2. Does Rust build set -O3 on clang? Did you try -O3 with C? I know it's not guaranteed to be faster, just curious.
What are some alternatives?
smartstring - Compact inlined strings for Rust.
redgrep - ♥ Janusz Brzozowski
fst - Represent large sets and maps compactly with finite state transducers.
ixy-languages - A high-speed network driver written in C, Rust, C++, Go, C#, Java, OCaml, Haskell, Swift, Javascript, and Python
barre - A Regular Expression Library and CFG parser for Rust using Brzozski Derivatives
rust - Rust for the xtensa architecture. Built in targets for the ESP32 and ESP8266
mininet - Emulator for rapid prototyping of Software Defined Networks
gccrs - GCC Front-End for Rust
rustc_codegen_gcc - libgccjit AOT codegen for rustc