The Zen of Parallel Programming13 days agohttps://smolnero.com/posts/the-zen-of-parallel-programming算力的提升推动了各领域的进步,但增加处理器并不能自动提升有效工作,关键在于协调。正如并行编程一样,当人的心智、身体和情感等方面无法沟通与同步时,便会面临内在冲突的挑战。诚实的交流好比同步机制,使思想、情感和行动得以协调,从而减少焦虑与倦怠,这正是禅宗哲学所强调的。
The Zen of Parallel Programming: The Posture of a Kernel5 days agohttps://smolnero.com/posts/the-zen-of-parallel-programming-the-posture-of-a-kern...GPU内核是一种专门的函数,在GPU上启动,线程被分组为波前和线程块,其性能取决于线程、数据和硬件架构。HipKittens论文介绍了一种在AMD硬件上使用的八波乒乓调度,通过让成对的波在计算与预取数据之间交替角色,实现了计算与内存移动的重叠。并行编程需要在线程的独立与依赖之间取得平衡;完全独立会导致无法获得统一结果,而完全依赖则会导致等待。作者将GPU波之间的角色交替与铃木的“姿态”概念进行类比,强调角色是真实但暂时的,而姿态是关于变化中的关系。人类的经历和创伤可能会形成固定的姿态,这些姿态在原始条件消失后依然持续,但认识到这些姿态可以改变,是个人成长的关键。这个类比表明,像GPU内核一样,人类必须理解过去的哪些方面能够适应,哪些必须重新组织,以及哪些不再适合当前的条件。