深入雪豹之三:GPU 优化

当某些聒噪的专家不顾一切的将雪豹诋毁为「服务包」的时候,自成一体的它,已经默默的将麦金塔平台延展到许多重要而且不为人知的地方。本系列文章将向你揭示雪豹众所周知但常被误解的功能,这是第三篇。
 
原文链接;作者:Daniel Eran Dilger 。

OpenGL ,OpenCL 与 GCDGrand Central Dispatch

苹果开发了 OpenCL ,并使之成为通用计算领域的新标准,而对 OpenGL 与 OpenCL 的支持亦削弱了微软借 DirectX/D3D 来垄断图形 API 的盘算。
 
其他平台也纷纷加入到 OpenGL 的阵营中来,从 Wii 、PlayStation 3 到占据移动计算市场大头的 iPhone/iPod touch 。这些进展将会使得微软蚕食开放 GPU 标准并垄断市场的努力更加困难。

而对现有 GPU 资源与雪豹中 GCD(Grand Central Dispatch)架构的充分利用,将使程序开发变得更加简单(编者:呃,我认为 GCD 增加了开发难度),同时也为未来的硬件创新提供了可能,无论是搭载自家研发的新款加速芯片,或者更好的支持目前的 GPU 。

曾向何方

正如同通往 64 位操作系统之路的步履蹒跚,微软在为上网本与 XP 用户提供新一代操作系统的过程中亦被轧的不轻(编者:这句话原话很长,我认为他的意思是:Vista 卖的不好。)。与此相似的高级图形混合技术,苹果在十年前就发布了。

根据游戏开发商 Valve 的 Steam 平台所提供的月录硬件报告(约覆盖 100 万 PC 用户),多数 PC 游戏玩家的显存超过 512MB 并拥有更好的 GPU ,这高于大部分麦金塔用户的水平。不过多数 PC 用户还在使用无图形加速界面的 Windows XP 。类似的,只有 17% 的高端游戏玩家使用了 64 位版本的 Windows ,大多数人不愿从就 64 位寻址带来的好处。

1999 年时,苹果就意识到 GPU 的重要作用,并将它应用到 Mac OS X 的 Quartz 图形系统中。微软直到 2007 年才将类似的高级图形混合系统引入 Vista ,然而市场反响却不好。在 Vista 发布几近三年之后,即便是在象征着乐于尝新、购买力很强的 Steam 用户中,Vista 的装机量也只有 36% 。

另一方面,大多数低端上网本在运行 Windows 7 的时候仍将缺少 GPU 的支持,而苹果在 2007 年就为 iPhone 整合了这项功能。大多数上网本同低端 PC 一样,都是基于英特尔处理器与板载显卡的结构,不同于 iPhone 使用的嵌入式单芯片解决方案。苹果在 ARM 内核上集成了高性能的专用图形处理器,并充分利用了它的资源,使图形界面有关的计算与硬件之间更加协调,这和游戏主机的架构是很相似的。

下赌 GPU

一位来自著名手机制造企业的战略专家写到:「苹果是第一家洞悉了桌面计算前景的公司… 」。在 Windows 陷入老旧的、由 CPU 驱动的架构而难以动弹的时候,OS X 移除了大部分用户界面代码,并转向由原本为游戏而生的高性能 GPU 来渲染。强者如微软亦花了 5 年左右的时间才摒弃了原有的系统,转向了新的计算模式,于是始有 Vista 的诞生。

极为相似的例子也发生在移动设备上。在以 CPU 为主要的处理单元的时代里,苹果的竞争者所开发的操作系统的用户界面是以菜单来驱动的。有效的利用 GPU 在移动设备微型化过程中将起到更加重要的作用,在这方面,无论是传统电脑还是移动终端,苹果都超前于人。GPU 赋予了生动活泼的用户界面,而竞争对手如微软和诺基亚等,直到最近才发现它的重要性。
 
在研发 iPhone 的时候,苹果面对着两件事情,第一、简化 OS X ;第二、开发强劲的移动图形核心。他们意外的发现原先需要多个处理器才能驱动的用户界面,现在单芯片就能做到。

苹果所做的正确决定与产品可以列出很长的清单。但是如果没有其他移动操作系统的拙劣表现和移动计算平台的快速发展,恐怕它无法给市场带来如此巨大的震动。

通过共享 iPhone 与麦金塔平台之间的技术,苹果充分挖掘 GPU 的潜力而建立起了自己的领先地位。雪豹带来了更加丰富,改变细微但是更加生动的用户界面,并为第三方开发者提供了强有力的工具以尽可能的榨干硬件资源。