最后,你可能要问:有没有一个程序有100%是可以并行化的呢?
答案是,没有。尤其是侧重于IO的程序,永远不能做到100%并行化。
什么是IO? GPU就是一个IO,磁盘也是IO,甚至内存系统对CPU来说,也是一个IO。
服务器系统的扩展性好,一个原因是服务器系统的IO是分布的。而桌面PC决定了IO是串行为主的系统,尤其是GPU。游戏只要需要和GPU密切打交道,就永远不可能高度并行化。
未来的理想CPU,是不对称的CPU,即若干个强大的单线程CPU + 大量多线程卫星CPU。
把单线程理解为低音炮,多线程理解为卫星喇叭,是不是好理解一点?这不是最佳性能,但却是最佳性价比。
推土机就相当于AMD卖给你一套全部是卫星喇叭组成的7.0家庭影院系统。