Menu

1 / 11

Getting 50 GB/s Back Out of the ANE

Hacker News·about 1 month ago
#BNlvpvGk
#eiln#ane#dram#kerneldma#photo
Reading 0:00
15s threshold

Introduction

An RTL performance erratum in the Apple M3 Neural Engine throttles DRAM weight streaming throughput down to 17–19 GB/s from the nominal 45–60 GB/s, whenever the total weight size is an integer multiple of 1 MiB, which currently affects 7 of ANEMLL ’s 15 models. Avoiding the problematic path in the kernel DMA engine's speculative prefetch ring increased Llama 3.2 1B token throughput from 10.0 to 24.3 tokens/s (DRAM usage from 24.7 to 60.0 GB/s), and Qwen3-8B from 1.36 to 2.97 tokens/s (DRAM usage from 22.4 to 48.7 GB/s).

Discovery

I was profiling the neural engine's DRAM weight streaming throughput (GB/s) for single token decode:

\[ X[1,D] \times W[D,N] = Y[1,N].…

Continue reading — create a free account

Join HashtagPLUS to read full articles, follow hashtags, vote, and join the conversation.