How do spikes learn to compute?脉冲如何学会计算?
Five interactive experiments connect LIF, UltraLIF, BPTT, STDP and EventProp. From dynamics to learning rules, bring the equations to life.用五个交互实验,串起 LIF、UltraLIF、BPTT、STDP 与 EventProp。从动力学到学习规则,让公式真正动起来。
Hi, I’m Dapeng Feng.你好,我是冯大鹏。
I share what I learn about mathematics, physics, and programming here. Through diagrams, interactive experiments, and benchmarks, I try to make abstract ideas easier to understand.我在这里分享数学、物理与编程中的学习和思考,用图解、交互实验和基准测试,把抽象概念讲清楚。
From abstract ideas to visual intuition从抽象公式,到直觉与图形
01 / MATHEMATICSModels that make sense of the world用模型,解释世界如何运转
02 / PHYSICSCloser to the metal. Every cycle counts.走近底层,让每个周期有价值
03 / SYSTEMSLess guessing. More measuring.少一点猜测,多一点测量
04 / EXPERIMENTSFive interactive experiments connect LIF, UltraLIF, BPTT, STDP and EventProp. From dynamics to learning rules, bring the equations to life.用五个交互实验,串起 LIF、UltraLIF、BPTT、STDP 与 EventProp。从动力学到学习规则,让公式真正动起来。
Memory safety, zero-cost abstractions and engineering trade-offs. Explore systems languages through comparisons and code experiments.内存安全、零成本抽象与工程取舍。通过交互对照与代码实验,理解系统语言的选择。
One vector operation, two programming models: interactive indexing, Rust write ownership, C++ boundary checks, and a GPU measurement plan.用同一个向量计算理解 SIMT 与 Tile:交互索引、Rust 写入权限、C++ 边界验证,以及真实 GPU 基准测试的测量方法。
Five interactive experiments connect LIF, UltraLIF, BPTT, STDP and EventProp. From dynamics to learning rules, bring the equations to life.用五个交互实验,串起 LIF、UltraLIF、BPTT、STDP 与 EventProp。从动力学到学习规则,让公式真正动起来。
Memory safety, zero-cost abstractions and engineering trade-offs. Explore systems languages through comparisons and code experiments.内存安全、零成本抽象与工程取舍。通过交互对照与代码实验,理解系统语言的选择。
One vector operation, two programming models: interactive indexing, Rust write ownership, C++ boundary checks, and a GPU measurement plan.用同一个向量计算理解 SIMT 与 Tile:交互索引、Rust 写入权限、C++ 边界验证,以及真实 GPU 基准测试的测量方法。
Warm up, repeat, and verify. Run a small experiment in your browser and examine the conditions behind the numbers.预热、重复测量与结果校验:在你的浏览器里运行一个小实验,理解数字背后的条件。
Change the phase and frequency to see two waves reinforce or cancel. Connect trigonometry with physical intuition.拖动相位与频率,观察两列波如何相长或相消,把三角函数与物理直觉联系起来。
Move entries between a dense matrix and its band storage, then verify a C++ GAXPY implementation.把稠密矩阵元素搬进带状存储,用交互映射与 C++ 校验理解索引、边界和运算成本。
Trace mirrored entries into one packed array and verify both output updates with C++.追踪镜像元素如何共用压缩槽位,用 C++ 校验两路更新,区分存储节省与算术成本。
Explore an eight-point spectrum, unpack the FFT butterfly, and verify C++ FFT results against a direct DFT.从八点频谱看懂蝶形分解,用可运行 C++ 对照直接 DFT,理解 FFT 的速度、误差和适用边界。
See memory strides, compare loop orders and blocking, then compile checked C++ kernels and measure real timings.把访存步长画出来,对比循环顺序与分块,再编译带校验的 C++ 内核并测量真实耗时。
Walk through a constrained optimization path, derive a stopping certificate, and run checked C++ Frank–Wolfe steps.在三角形可行域中逐步观察优化路径,推导停止证书,并运行带校验的 C++ Frank–Wolfe 实现。
Derivations, experiments, and questions worth coming back to.这里存放推导、实验,以及那些值得反复琢磨的问题。