似乎流行预测超标量无序 CPU 将走渡渡鸟的道路,并将被大量简单的标量有序内核所取代。这在实践中似乎并没有发生,因为即使并行化软件的问题明天就解决了,仍然有大量的遗留软件存在。此外,并行化软件不是一个小问题。
我知道 GPGPU 是一种混合模型,其中 CPU 是为单线程性能而设计的,而显卡是为并行性而设计的,但它是一个丑陋的模型。程序员需要显式地重写代码才能在显卡上运行,据我所知,有效地表达显卡的并行性要比有效地表达多核通用 CPU 困难得多。
混合模型有什么问题,每台 PC 都配备一个或两个“昂贵的”超标量无序内核和 32 或 64 个“廉价”内核,但与昂贵的内核具有相同的指令集,并且可能在同一块硅?操作系统会意识到这种不对称性,并会首先调度无序的核心并使用最高优先级的线程。这种优先级甚至可能通过 OS API 显式地暴露给程序员,但程序员不会被迫关心区别,除非他/她想控制调度的细节。
编辑:如果投票结束是因为这被认为与编程无关,这里有一个反驳:我认为它与编程有关,因为我想听听程序员对为什么这样的模型是一个好主意或坏主意以及他们是否会想对其进行编程。