Show HN: BPU – 嵌入式调度器,用于稳定的 UART 管道

5作者: DenisDolya5 天前
最近我发现了这个小型的 ESP32 项目,它背后的设计理念非常有趣。<p>BPU(批处理单元)是一个轻量级的嵌入式调度核心,专注于在压力下保持输出管道的稳定(UART 背压、有限带宽、突发生产者)。<p>它没有采用阻塞或无限增长队列的方式,而是:强制执行每个节拍的字节预算,合并冗余事件,在持续负载下优雅降级,并公开详细的运行时统计数据。<p>该存储库包含设计说明、流程图和实际执行日志,这使得运行时行为非常透明。<p>仓库地址: <a href="https:&#x2F;&#x2F;github.com&#x2F;choihimchan&#x2F;bpu_v2_9b_r1" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;choihimchan&#x2F;bpu_v2_9b_r1</a><p>我一直在为它开发一个 ESP-IDF 后端,阅读文档给了我很多关于在小型系统中进行可观察性和背压处理的启发。<p>好奇大家对这种方法有什么看法。
查看原文
I recently came across this small ESP32 project and found the design ideas behind it very interesting.<p>BPU (Batch Processing Unit) is a lightweight embedded scheduling core focused on keeping output pipelines stable under pressure (UART backpressure, limited bandwidth, bursty producers).<p>Instead of blocking or growing unbounded queues, it: enforces per-tick byte budgets, coalesces redundant events, degrades gracefully under sustained load, exposes detailed runtime statistics.<p>The repository includes design notes, flow diagrams, and real execution logs, which makes the runtime behavior very transparent.<p>Repo: <a href="https:&#x2F;&#x2F;github.com&#x2F;choihimchan&#x2F;bpu_v2_9b_r1" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;choihimchan&#x2F;bpu_v2_9b_r1</a><p>I’ve been working on an ESP-IDF backend for it, and reading through the docs gave me a lot of ideas about observability and backpressure handling in small systems.<p>Curious what others think about this approach.