Mac OS X 上的 Flash 性能不佳?

Mac OS X 上的 Flash 性能不佳?

我使用 Mac OS 已经快 3 年了。几个月前我注意到,而且随着时间的推移,越来越让我恼火的是,任何 Adob​​e Flash 应用程序、内容或网站上的广告都占用了大量的 CPU。

我想:这很合理。这是一个孤立的问题,与 Adob​​e 为 OS X 实现 Flash 的方式有关。我错了,因为最近使用 Java3D 编写应用程序时也发生了同样的事情。在 Windows 上,我的应用程序的 CPU 使用率在 1% 到 2% 之间,而在 Mac 上,仅启动 Java3D 程序(不进行任何计算)就会导致 60% 以上的 CPU 使用率。

有人知道为什么会发生这种情况吗?我朋友的新 MacBook Pro 也出现了同样的情况。我真的很喜欢 Mac,但随着越来越多的此类事情出现,我的“狂热粉丝”精神也逐渐消退……

PS 我确实尝试修复磁盘权限。

这不仅仅是视频。就像在 Safari 上一样,在 Firefox 上打开暗黑破坏神 3 角色(http://us.blizzard.com/diablo3/characters/) 导致我的 %CPU 使用率(根据活动监视器)超过 100%。下面附有 Console.app 列表(安装 Flash v10.1 B2 后,打开此网站即可获得)。如果您想测试 Java3D,可以转到我的上一个作业(http://personal.cis.strath.ac.uk/~ajonkisz/Tree/tree.html)。Safari 和 Firefox 上的表现也一样,CPU 使用率超过 100%。

如果只有我一个人遇到这个问题,请告诉我,这可能是异常。

答案1

众所周知,Adobe 多年来一直忽视 Mac 上 Flash 的主要性能问题。

答案2

我没有在我的 Mac 上注意到这个问题,但为了至少缓解症状,你应该强烈考虑安装点击闪现如果你使用 Safari 或闪块如果您使用的是 Firefox。这将大大减少系统上运行的 Flash 代码量。

答案3

Adobe 推出了 Flash 测试版 v10.1 B2,该版本显著提高了 Mac Flash 客户端的性能,尤其是视频性能。在此测试版之前,在 Flash 中观看高清电影比在 VMWare Fusion Windows VM 中观看 Flash 高清电影消耗更多的资源!

另外,请确保问题确实出在 Flash 或 Java 上,有一些流行的 Mac 应用程序,例如 Transmission bittorrent 客户端,已知会导致 Snow Leopard 出现性能问题。

进入应用程序->实用程序->Console.app 并查看系统控制台和系统日志。这应该可以帮助您隔离遇到的性能问题。

答案4

值得注意的是,Mac 和 Windows 报告多核使用情况的方式不同。如果某个进程/应用程序占用了四核 Mac 的最大资源,top则活动监视器会将其报告为 400%。总体使用情况(用户、系统、空闲)总计为 100%。在 Windows 上,两者都是 100%。总的来说,我更喜欢 Mac 的方式,因为这样可以更详细地了解情况。

这无法解释 2% 和 60% 之间的差异,除非您选择即将推出的 24 核系统之一,但这确实是一个问题。(在 24 核 Windows 机器上,已固定核心的“失控”进程将占用“4%”——这似乎不对。)

更重要的是,如果你有一个多核系统,即使你的某个应用程序占用了 CPU,也无所谓。我选择在四核电脑上运行 Vista 的原因之一是,“TrustedInstaller.exe”——一个病毒的绝妙名字——经常会决定它需要思考真的很难约五分钟。

性能差异可能部分归因于显卡支持。最新的 Flash 测试版刚刚为 Windows 上的视频添加了硬件加速。如前所述,Mac 上的 Flash 情况全面恶化。由于不了解内部原理,动画似乎是以一种幼稚的“忙循环”方式实现的,而不是合理的中断。(没有人真正欣赏 Flash 上的每秒 240 帧。)

Java 确实需要更多时间来启动——它有运行时和许多库来让程序员的工作变得“简单”和“一致”——但一旦启动并运行,其性能应该与本机代码差不多。内存占用可能更大,特别是如果您只运行一个 Java 应用程序,并且您没有意识到跨多个进程共享运行时/库代码会节省内存。对于 Java 3D,您可以尝试检查支持的加速功能[JNLP 链接]。我不做 3D,因此不清楚不受支持的功能是否会被忽略或模拟。

最后,“修复权限”是巫术

相关内容