为什么一个十年前的软件到今天仍然这么慢?

为什么一个十年前的软件到今天仍然这么慢?

我只是因为一款游戏(恰好是暗黑破坏神 2)而想到了这个问题,但事实上是:为什么我的全新 Mac Book Pro,2009 年采用最新技术制造(虽然它是最便宜的),无法与我 2000 年运行速度更快的计算机相媲美吗?真的,那时候在我的 AMD K6 450 上速度更快,我甚至可以同时运行两个客户端而不会变慢。

我一直感觉这台机器很慢,但这是一种非常奇怪的证明方式。

当然,这台机器更小,使用 wifi 运行,并且由于睡眠模式,“启动”速度更快。但除此之外,我们到底进化了什么?!我很确定这不应该是显卡的错。

当然,如果我购买最新技术,它会运行得很快,可能这里的大多数人都可以证实这一点,甚至不会理解我的问题。但问题是,所有硬件据称都比 10 年前的产品更快更好。软件和操作系统变得更加复杂,但也更加完善。现在我正在尝试一款实际上已有 10 年历史的软件,但它并没有获得任何更好的效果!为什么?

编辑:我刚刚注意到“所有流程”中列出的活动监视器,暗黑破坏神 2 是唯一一款“Power PC”类型的游戏。其他游戏要么是“Intel”要么是“Intel (64 位)”。也许这就是原因。

答案1

大多数情况下,游戏的编程方式是指定某些东西的运行速度。这就是为什么如果我们在 core i7 上加载 Doom classic,我们不会看到怪物以光速移动并在我们做出反应之前杀死我们。

《暗黑破坏神 II》可能也是这样设计的。它被设计为根据时间而不是处理器速度以一定的速度运行。你也许可以使用模拟技术来加快速度,但我不太清楚该怎么做。

编辑:抱歉!第一行的意思是,它们被编程来指定是否使用处理器周期或时钟周期。

答案2

该软件本身可能已经针对该硬件/操作系统进行了优化。

您正在比较 450MHz 芯片和 2.26GHz 双核芯片。您为什么认为前者更快?

也有可能你记得它比实际上更快

答案3

让我们从问题标题和描述开始非常具有误导性。您没有明确说明您正在使用某种形式的仿真在 Mac Book Pro 上运行暗黑破坏神 II(于 2000 年在 PowerPC 上的 Mac OS 和 x86 上的 Windows 上发布),我推测它运行的是其原生的 OS X,因为您没有包含任何相反的暗示。

一种方法是使用处理器模拟器(例如 qemu*、bochs、spim、PearPC)在另一个系统上模拟一个处理器,这是一项复杂的任务。

另一种方法是使用平台虚拟器(例如 Xen、VMware、Parallels)运行独立的虚拟计算机系统,包括模拟或映射硬件功能(I/O)。

这些任务非常复杂,需要实时将模拟器的本机指令集转换为 JIT 或动态转换内存和处理器映射,以模拟与“主机”系统(包括操作系统及其内核)隔离或不同的虚拟计算机。例如,通过 PearPC 运行的应用程序被称为运行慢 40 倍比本机运行的应用程序更

尽管摩尔定律通常被视为将晶体管数量加倍与 CPU 计算或处理能力加倍相对应,但这并不扩展到整个系统,甚至不扩展到硬件性能(RAM 大小和速度、硬盘)。

我很惊讶地提到兆赫(时钟频率)神话对于 Mac 用户。简而言之:您不能使用 CPU 时钟速率作为 CPU / 系统性能的比较指南。

由于 2D 和 3D 视频性能,视频游戏在模拟或虚拟化方面的表现尤其糟糕,而这通常是各种竞争性 VM 或模拟解决方案缺乏加速的领域。在许多情况下,3D 图形是在软件中渲染的,并且没有像处理器和操作系统模拟/虚拟化部分那样进行大量优化。这种情况正在慢慢改变,VMware 在某些情况下改进了其图形加速。


因此,我认为您不应该对通过模拟或虚拟化在更快的 CPU 上玩较旧的视频游戏仍然很慢感到惊讶。不幸的是,您的问题没有明确说明情况。


*)库姆另外几个既是处理器模拟器,又是机器虚拟器,具体取决于情况(即主机环境)。

相关内容