“微处理器的性能每隔18个月提高一倍,或价格下降一半”——这就是大家都心知肚明的“摩尔定律”。虽然前两年桌面PC市场的表现一度让人质疑该定律的有效性,但在智能手机市场上,公认的硬件进化速度已经超过了18个月翻一番的程度。
举例而言,2014年春季,我们还在欢呼四核心、32位的骁龙801性能再创新高;仅仅半年之后,八核心64位的骁龙810就将处理器的性能提升了70%;而再过了一年,“发烧”的810又被820取代么,性能直接翻了一番。换句话说,在差不多18个月的时间里,旗舰手机处理器的性能就提高了2.4倍!
然而,相信大家都有这么一种感觉:手机更新换代这么快,跑分确实是大幅提高了。但是实际使用中并不会觉得反应速度有明显的改善,而且随着时间推移几乎必然是越用越卡,最后还是不得不换手机才能解决问题,这难道是某种“阴谋”在作祟?
别说,还真有这么一个“阴谋论”在国外流传了许多年了,它的名字叫做“安迪·比尔定律”,简单来说,就是软件的更新换代,永远会“吞噬”掉硬件进步带来的速度提高,甚至于使得硬件体验加速落伍。
“安迪·比尔”并非是一个人名,而是指的原英特尔公司 CEO 安迪·格鲁夫(Andy Grove),比尔就是微软的创始人比尔·盖茨——美国的IT业界曾经流传这样一句话“What Andy gives, Bill takes away(比尔拿走了安迪所给的一切)”,形容的正是PC界知名的“Wintel联盟”。
英特尔每年推出换代的处理器,然后被更新之后的Windows系统或其应用软件将速度“重新拖慢”——周而复始,用户就有了更换电脑的动力——这种曾经的“阴谋论”如今似乎正在手机上重演。
Android 2.0系统引入了对3D加速的支持,一批早期的3D手游开始出现,同时也宣告着一大批没有集成GPU的手机主控从此作古;Android 2.2系统开始支持多核心,于是“核战”正式拉开序幕,同时也意味着联发科的崛起;Android 5.0系统转向64位核心,结果才刚面世不到一个月的骁龙805主控立刻“退休”,810新旗舰接任……就连一向被认为优化得当,流畅度爆表的苹果iPhone,只要经历过三次系统大版本更新,都会卡的不像样子,以至于坊间有苹果“负优化”老机型的传言。
当然,进步的不只是操作系统,也包括我们日常接触到的应用软件(app):谁能想到,现在的微信仅仅是程序包就要占用几百兆的空间,聊天缓存更是能轻松破G?还有那手游《崩坏3》、《王者荣耀》、《虚荣》,想要流畅运行?先换个旗舰机再说吧……更不要谈《NBA 2K17》了,几乎已经成了公认的处理器压力测试工具(笑)。
那么……问题就来了:这些吃资源吃到爆炸的游戏、软件,还有不断提高硬件需求标准的操作系统,真的是为了让我们被迫更换手机,从而维持硬件销量么?
对此,比尔·盖茨本人曾多次表示,现在的应用程序在执行效率、空间占用等各方面确实不如过去的水准了。他亲自写的BASIC编程工具只有几十K大小,但是现在一套.Net工具就要几百兆——这其中当然有可以优化的空间。当然,我们知道微软现在的.NET 比几十年前的 BASIC 功能要强的多,但是否强了一万倍,恐怕没有人这么认为。换句话说,现在的软件开发人员在代码水平、对字节精打细算的认真程度上,确实退步明显。
这一方面和计算机技术的大环境有关:过去的电脑内存最大只有640K,处理器性能低的可怜,所以程序员必须仔细推敲每一个字节的代码,用艰深难懂但是执行效率高的汇编语言写程序。而现在的电脑性能越来越高,程序员们即使不去刻意优化代码,也不用担心写出来的软件电脑带不动……再加上汇编语言运行效率极高,但是编写效率极低,遭到“抛弃”是理所当然的。
另一方面来说,由于人工成本提高,再加上消费者和软件公司对于“大量产出”的需求,程序员们倾向于依赖图形化、自动化的编程和优化工具——Java的编程是那么简单,但它的运行效率远低于C++、C语言、汇编……因此,即使是实现相同的功能,今天的程序员写出的程序必然比盖茨那个时代的运行效率更低、占用资源更多。
但是,不可否认的是,造成这种现象的源头,其实正是电脑、智能手机消费群体本身——几十年前的PC用户都能看懂BASIC代码,熟练地使用着DOS系统敲打着命令行。现在你要是给一个Android手机用户装上命令行模拟器,告诉他“你可以自行敲打命令来实现手机的各种功能,这样执行效率很高还很省电”——他会不会打死你?
互联网和消费电子产品的高速普及拉低了用户的平均技能水准,也使得大家对于简单易懂的图形界面、绚丽的游戏特效、便捷的移动支付等等习以为常。试想一下,当你抱怨微信越更新体积越大的时候,你有没有享受微信移动支付的便利,有没有感叹小视频的画质变得更好了,有没有玩“微信游戏”?要知道,这些功能在最初的微信里都是没有的,它们的加入确实降低了软件的运行效率,提高了对于手机硬件的需求,但是也极大地方便了使用者。
当前,如魅族Flyme系统内置的“One Mind”后台调度引擎、Google Nexus手机的“HDR+”多帧合成拍照模式、三星S8加入的Bixby人工智能助手……它们对于手机硬件的需求都是巨大的,但是正因为有了这些“复杂”的程序,你的手机应用开启可以更快、拍照可以更清晰、还可以通过说话和拍照来实现各种智能辅助功能……这些特性放在过去的机型上,是无法实现的。
更不要说大型高画质手游带来的娱乐体验、部分手机连接显示器之后的“电脑模式”如何实现了生产力的飞跃、还有即将迎来体验革命的移动VR、AR……没有先进的硬件规格、没有人性化的图形界面、没有复杂的现代化系统和应用软件,这些都是无法实现的。
所以说——无论是手机厂商、芯片供应商还是写系统、写软件的程序员们,谁都没有在“坑”你。只是你自己变得更懒、更贪心了:为了让手机用起来功能更多、体验更好,还是老老实实掏钱买新款吧~
【本文图片来自网络】