【发布时间】:2011-01-08 20:50:55
【问题描述】:
我已经为此花费了很多时间。我在构建东西时没有遇到问题,但我发现我的测试套件的运行速度比我在 OS X 10.5.x 上时慢了大约 2 倍。我花了很多时间玩不同的优化设置(学习避免自制的 llvm-gcc 编译)。我刚刚了解到我需要调整 /Library/Preferences/SystemConfiguration/com.apple.Boot.plist 以使内核以 64 位模式启动。但是,即使在预热 mysql 服务器之后,我的 rails 应用程序的运行速度仍然比以前慢一些。
那么我可能需要研究哪些性能调整?现在,库存 ruby 1.8.7 在某些方面比 1.9.1 运行得更快,我真的很想知道是否有什么我应该寻找的。我所有的开发软件都是为 x86_64 编译的,带有 -O2 优化的 mysql,使用常规 gcc(不是 llvm-gcc)。
【问题讨论】:
-
您无需调整内核启动 plist 即可在 64 位模式下运行应用程序。对于支持 64 位的机器,这是 10.6 中的默认设置。运行 Activity Monitor.app 并亲自查看:大量 64 位应用程序。
-
使用 64 位内核启动在 ruby 中产生了显着的性能提升,但 rails-mysql 组合真的很糟糕。与 Leopard 相比,我的测试套件在 ruby 1.8.7 上花费的时间是 1.9.1 的 2 倍,在 1.9.1 上花费了大约 10%。这让我发疯 :-( 是的,我可以看到一切都处于 64 位模式。但是性能很糟糕,这就是问题所在。
标签: mysql ruby performance osx-snow-leopard