【发布时间】:2021-11-09 02:11:23
【问题描述】:
This article 描述了使用 mmap 将两个虚拟内存范围配置到同一个底层缓冲区,以避免用于管理循环缓冲区的内存复制。
esp32 硬件能支持这个吗?我想使用 i2c dma 技术将麦克风音频数据直接读取到循环缓冲区中,并将该缓冲区的窗口范围移交给 tensorflow,以便在 esp32 上进行分析,而无需任何可避免的内存副本。
This reddit 线程讨论它,但我不知道足够解释答案。这些 api 调用可以映射到内存吗?是否有替代机制来实现我的效率目标?
【问题讨论】:
-
你看过所谓的“Bipartite Buffer”吗?它以循环方式实现,但分配适合 DMA 的连续区域。