nowfound

Dev tools · August 4, 2026

SIMD Viterbi Decoder in Rust

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…

SIMD Viterbi Decoder in Rust launched on August 4, 2026 with 64 votes, #586 of 23,274 launches that month and more than 95% of that year's launches.

Visit github.com ↗Alternativestop 3% of August 2026

In plain words

SIMD Viterbi Decoder in Rust is a convolutional code decoder written in Rust that uses SIMD instructions to accelerate error correction. It features a templated, generic decoder that automatically dispatches to available instruction sets at runtime, keeping small codes entirely in registers while using optimized memory structures for larger ones. The project also includes a tool for finding optimal convolutional codes by maximum free distance for specified rates and orders.

written from the facts on this page · September 2026

From the sources

Rust crate for Forward Error Correction. Contribute to brian-armstrong/fec development by creating an account on GitHub.

Forward error correction for SDR, space, and satellite applications. fec started as and draws heavy inspiration from the author's own libcorrect , a C library for forward error correction. This crate also credits Phil Karn's libfec C library for offering an original implementation of these codes, although this crate does not borrow any source or have any relationship with that library, and the name is purely coincidental. Standard parameters (primitive polynomials, the CCSDS dual-basis transform) are derived from the published CCSDS standard ( CCSDS 131.0-B , Annex D for the dual basis). With the simd feature, fec decodes faster than libfec on every code. Measured through libfec's own test…from github.com

In the maker’s words, at launch

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…

Does a similar job

all alternatives →
  • A SIMD-accelerated noise library in Rust2018 · github.com · ▲73

    SIMD noise library for Rust. Contribute to verpeteren/rust-simd-noise development by creating an account on GitHub.

  • High-speed UTF-8 validation in Rust2021 · github.com · ▲127

    SIMD-accelerated UTF-8 validation for Rust. Contribute to rusticstuff/simdutf8 development by creating an account on GitHub.

  • Zed 1.0May 2026 · zed.dev · ▲365

    High-performance, open source, multiplayer code editor

  • Using SIMD to decode and encode gigabytes of varints per second in Rust2021 · github.com · ▲6

    Decoding and encoding gigabytes of LEB128 variable-length integers per second in Rust with SIMD - as-com/varint-simd

  • Rust Vector and Quaternion Lib2025 · github.com · ▲128

    I use this library I made for Vectors and Quaternions in many personal projects. I've open-sourced it, in case anyone else would get use out of it. I use this on various projects, including quadcopter firmware, a graphics engine, a cosmology simulation, and several molecular dynamics applications. No_std compatible.

  • I'm making a dynamic language in Rust2022 · github.com · ▲184

    An implementation of a dynamic programming language in Rust. Includes: Parser/Compiler, REPL, Virtual Machine, Bytecode Disassembler This started out as a learning project to teach myself Rust. It has grown into a decently substantial piece of software and I've learned quite a bit in the process! Some neat things: + A garbage collector that can store dynamically sized types without any double-indirection (i.e. I have my own Box implementation with manual alloc/dealloc) + The smart pointer used to reference GCed data is a thin pointer. The ptr metadata needed for DSTs is stored in…

More dev tools this month

the category →
  • /dev/null▲468

    a social network for devs

    Dev tools · 2d ago · dev-null.sh

  • open-source IDE for thoughtful software design. Contribute to devdotfast/whiteboard development by creating an account on GitHub.

    Dev tools · 27d ago · github.com

  • Contribute to reladraw/reladraw development by creating an account on GitHub.

    Dev tools · 25d ago · github.com

  • OpenBot▲362

    Grok Bot alternative: free, local, open-source, multiplayer

    Dev tools · 22d ago · openbot.run

  • Talanoa▲340

    Hi HN, I’m a fullstack developer, and honestly, I’ve lost count of how many side projects I’ve worked on over the years. But one idea kept coming back to me: a different kind of email client. It first came to me in 2014: “What if we could handle emails more like conversations?” Every year, I’d revisit this concept in my “Build Notes.” Ten years later, no one had built exactly what I had in mind — so I finally decided to do it myself. That’s how Talanoa was born. I wanted something focused on people, not timelines. I was tired of marking messages as unread just to remember to reply later, or…

    Dev tools · 20d ago · talanoa.email

  • CoreSpeed▲332

    One MCP for everything your agents need: apps, memory, tools

    Dev tools · 27d ago · corespeed.io

Source: Show HN post ↗ · launch text quoted in part

Launched alongside, August 2026

the whole month →
  • TL

    Life & fun · Aug 2026 · louisabraham.github.io

  • Hey Noah▲656

    A proactive AI executive assistant for founders

    AI · Aug 2026 · heynoah.io

  • Hey HN, We recently built Clipto. It’s a tool that lets you search over terabytes of video, audio, and images on your computer, without relying on the cloud. Motivation: we probably all had this similar experience, we know a moment exists in a video or audio, but finding it takes hours scrubbing the timeline. You can send all the media to process in the cloud, but it’s slow, expensive and raises privacy concerns. So we decided to build our own on-device media search engine. How it works (high level): 1. We ingest video, audio, image; normalize formats via ffmpeg; run content analysis to…

    Work · Aug 2026 · clipto.com

  • Hello HN! I found that picking out plausible but diverse skin tones for my digital art and game development projects was kind of difficult, and I got curious about if there was a way to define a color space that made it easy. I've built a color picker and procedural generation algorithm based on the space as well as a bunch of other fun js features and demos throughout the page that use the equations. If you find it interesting, I have lots of explanations of how I built it and what properties the space has. The methodology might be a bit shaky, but hopefully the result is as helpful for…

    Life & fun · Aug 2026 · toneyalexander.github.io

  • AdAnt AI▲620

    Claude for viral, high-converting social ads

    AI · Aug 2026 · adant.ai

  • Astute▲606

    Automate your B2B brand going viral, with new media creators

    AI · Aug 2026 · company-app.joinastute.com