2015年微软正式推出了DirectX 12规范,PC游戏开始了从DX11到DX12的升级,今年已经有多款游戏大作使用DX12了。DX12主要针对Windows平台,支持OpenGL的PC、Linux、安卓等则会使用Vulkan(火山)API。谷歌在安卓6.0中开始引入Vulkan,ARM公司日前公布了一段Vulkan对比OpenGL ES的视频,显示Vulkan因为支持多线程,CPU占用率可从50%以上降低至5-10%以内,能耗则降低15%。
微软的DX12与开放标准的Vulkan虽然是死对头,不过二者在设计思路上是殊途同归,跟AMD早前推出的Mantle优化类似,都支持CPU多线程应用,降低CPU负担,提高游戏性能。对于安卓这样的移动系统来说,Vulkan降低CPU占用率还有助于减少能耗,提高续航时间。
Vulkan无疑会取代目前安卓系统使用的OpenGL ES,那么它到底能带来多大的收益呢?ARM公司日前发布了一个演示视频,对比了Vulkan与OpenGL ES在CPU占用率及能效上的优劣,源地址在Youtube,可以爬墙看下。
CPU占用率大幅降低
首先是CPU占用率,视频中没给出具体的占用率,不过我截取的两幅图中可以看出OpenGL ES的CPU占用率在不同情况下大约有20-50%,部分情况下甚至达到60%以上,而Vulan的CPU占用率就低太多了,绝大部分情况下应该都在5%以内,保守一点说也绝对在10%以内,相比OpenGL ES降幅明显,多线程支持还是挺给力的。
能耗降低了15%
另一方面,支持多核处理器也有助于降低能耗,在这一点ARM给出了具体的对比,OpenGL ES消耗了1270J能量,Vulkan消耗的是1123J,减少了15%,这对改善续航时间来说已经是相当大的变化了,毕竟玩游戏的情况下手机处理器消耗电力还是非常快的。
自从Vulkan发布之后,谷歌宣布安卓6.0系统开始正式支持,未来则会彻底取代OpenGL ES规范。硬件方面,ARM、IMGTech、高通、NVIDIA等都推出的新一代GPU也支持了Vulkan,理论上前几年的Mali-T600、PowerVR 5XT、高通Adreno 200系列也能兼容Vulkan,不过小编要冷酷地说一句,除了比较新的Mali-T800、PowerVR 7XT、Adreno 500系列之外厂商估计是不会再给之前的GPU开发驱动支持了,Vulkna离普及还远。
据我所知,真正在手机上大规模支持Vulkan的应该是三星Note 7了,不过这款手机的命运太杯具了。
关注微信号expkf01,第一时间获知精彩活动和原创科技资讯。