Show HN: SIMD Viterbi Decoder in Rust

2026年8月4日1 次浏览来源:Hacker News阅读原文

I wrote libcorrect in C in 2016 and wanted to revisit it in Rust.

Instead of doing just a direct conversion, I went down the rabbit hole of making Rust's std::simd work for me.

I ended up with a templated, generic Viterbi decoder for convolutional codes that dispatches the decode at runtime depending on which instruction sets are available.

For small rates and orders, the entire decode lives in registers.

Larger codes work through memory but take advantage of some acceleration structures.

I also spent some time building a tool to find optimal (max d_free) conv codes for a given rate and order.

Of course, there are better mechanisms available today, but I'm happy to talk through anything I learned in the process.

Comments URL: https://news.ycombinator.com/item?id=49176212 Points: 10 # Comments: 0

分享
Baike.dev

baike.dev helps you discover great languages, frameworks, databases, DevOps and cloud-native tools.

Quick links

About

Contribute

Found a great developer tool? Share it with the community.

Submit a tool
© 2026 baike.dev Developer EncyclopediaUpdated daily · Discover great developer tools