## Xbox 360 与熔毁/幽灵的前兆
2005年,在Xbox 360的CPU(三核IBM PowerPC芯片)上工作时,我发现了一个危险的设计缺陷。为了在显著的内存延迟问题下提高性能,增加了一条新的指令——`xdcbt`。这条指令绕过L2缓存,直接将数据提取到L1缓存,但关键的是,它破坏了内存一致性。
最初,崩溃被追溯到我自己的内存复制例程,该例程使用了`xdcbt`,预取略微超出缓冲区边界导致数据损坏。修复例程解决了直接问题。然而,游戏*继续*崩溃,即使没有直接使用该指令。
根本原因远更险恶:推测执行。CPU的分支预测器可以*预测* `xdcbt` 指令,即使分支未被执行,也会启动预取。这种推测执行与真实的`xdcbt` 具有相同的有害影响,在核心之间创建不一致的内存视图。
一个简单的测试——用未命中的断点替换`xdcbt`——证实了这个问题。这条指令风险太高;控制推测执行是不可能的。这段经历,在熔毁和幽灵事件发生之前多年,凸显了绕过缓存一致性机制的危险,展示了*甚至未执行*的指令如何导致系统故障。最终,该指令被认为对发布的游戏来说过于危险,无法使用。
本文提出了一种关于幸福的争议性重新分类:将其定义为一种精神疾病,称为“重度情感障碍,愉悦型”,并提倡将其纳入诊断手册。作者认为幸福在统计上不常见,表现出一致的症状,与认知扭曲相关,并且可能源于神经系统异常。
该提议借鉴现有文献,通过提出即使是积极的偏离常态也应被视为一种疾病,来挑战人们对心理健康的传统观念。作者预先驳斥了幸福本质上是积极的这一常见反对意见,认为这种价值判断与科学分类无关。本质上,该论点基于这样的想法:就像精神疾病代表大脑功能的异常一样,过度的幸福也同样如此,值得临床关注。