Claude Desktop 出现显著的性能问题——启动缓慢、UI 滞后和响应时间变慢,尤其是在使用“cowork”功能后。这与位于 `~/Library/Application Support/Claude/vm_bundles` 中的一个 10GB 的 VM 包文件有关,该文件即使在删除后也会持续重新生成。 手动删除 VM 包、缓存和代码缓存可以提供约 75% 的初始性能提升,但由于 CPU 使用率(24-55%)和交换活动增加,性能下降会在几分钟内*再次发生*,表明可能存在内存泄漏或累积的工作负载。 即使使用干净的 VM 包,问题仍然存在,表明问题并非仅仅与文件大小有关。目前,拥有 8GB 内存的用户必须定期退出并手动清理这些文件才能恢复可接受的性能。 预期行为是稳定的性能以及在每次 cowork 会话后自动清理 VM 包。
## 使用Mikado方法处理遗留代码
继承一个庞大、复杂且文档匮乏的代码库,感觉就像陷入流沙。尝试进行重大更改——修复错误、添加新功能或重构——常常会导致连锁问题和进度停滞。Mikado方法提供了一种结构化的方法来避免这种情况。
其核心思想是将雄心勃勃的目标分解为小的、有时限的任务(5-15分钟)。如果任务在时限内失败,**回滚更改**并确定需要首先解决的更小的“子目标”。然后,在新的时限内处理这个子目标。成功的任务会**立即提交**,创建频繁的检查点。
这个迭代过程,可视化为分支的“Mikado”棍图,逐步解开依赖关系。例如,升级ORM依赖项可能首先涉及提取公共函数调用,然后调整单个实例,最后完成升级。
Mikado方法强调短时限以避免“沉没成本谬误”,并频繁提交以保持可发布的代码库。它关注于在尝试更大的目标之前,使每一步都*更容易*,最终实现对具有挑战性的遗留系统的有效且成功的更改。
## 386芯片的漫长复制之路:AMD与Intel的竞争
关于AMD复制Intel CPU速度慢的说法并不完全准确。虽然AMD的Am386于1991年问世,比Intel的386晚了六年,但延误源于IBM最初对386的不感兴趣——IBM不希望出现与利润丰厚的迷你计算机竞争的芯片,因此没有促使Intel广泛授权。这使得Intel得以避免延长与AMD的许可协议。
AMD花了两年时间逆向工程386,但随之而来的是与Intel长达八年的代价高昂的法律斗争,最终两家公司损失了1亿美元。Intel积极努力延缓AMD的进入,有效地使AMD落后一个世代超过十年,并巩固了其在高利润CPU市场的统治地位。
尽管如此,Am386是一款具有竞争力的芯片,以更低的价格提供与Intel相当的性能,吸引了注重性价比的用户。虽然最终被486和Windows 95的崛起所取代,但Am386展示了AMD的能力,并为其未来奠定了基础,甚至在其PC鼎盛时期之后,在嵌入式系统中存活了多年。这场冲突凸显了Intel的激进策略,并塑造了AMD在CPU领域的轨迹。
## 逆向工程苹果神经引擎:摘要(第一部分)
本系列详细介绍了一位人类研究员(maderix)和AI Claude Opus 4.6合作逆向工程苹果神经引擎(ANE)的过程——这是M4芯片上一个专门的机器学习加速器。苹果有意模糊对ANE的访问,迫使开发者使用抽象的CoreML框架。
该团队成功绕过了CoreML,将软件堆栈映射到内核驱动程序,破解了二进制格式,并实现了对ANE的直接访问。他们发现ANE不是传统的GPU或CPU,而是一个图执行引擎,针对运行编译后的神经网络图作为单个操作进行了优化。
主要发现包括16核设计,深度队列(127个请求),独立的电源管理,以及用于程序编译成高效E5二进制文件的独特机器学习中间语言(MIL)。这些二进制文件参数化了固定的计算基元,如卷积和矩阵乘法,而不是编码算法本身。
该团队的代码可在GitHub上获取,它解锁了直接ANE编程的潜力,并为未来在该先前专注于推理的硬件上进行基准测试(第二部分)甚至训练(第三部分)奠定了基础。