微架构吧 关注:176贴子:525
  • 4回复贴,共1

不知道这个理论上是否可行

只看楼主收藏回复

在一个程序只支持单核心的前提下,为了提高性能,利用其它的核心协同,将一个核心执行的程序中的指令拆分成多个部分(但大部分还是留在主核心中),再分别在各个核心计算,再回输到主核心,也就是利用其它的核心在单核或者对多核不理想的应用下作为加速核心


IP属地:广东来自Android客户端1楼2017-07-07 22:57回复
    不过这种应该需要大容量的Cache,以及多出一个用于拆分指令的不参与一般计算的小核心


    IP属地:广东来自Android客户端2楼2017-07-07 23:00
    回复


      IP属地:广东来自Android客户端3楼2017-09-27 10:31
      回复
        首先如果程序只支持线程的话很可能程序本身无法并行化,比如data或control dependencies太多。我们叫这种程序inherently serial,所以解决不了。如果我们在运行时才能决定程序是否有dependency,这种情况可以假设程序能并行化,用speculative multithreading。ISCA 2000,ASPLOS 2002都有相关论文,可以看看:
        “A Scalable Approach to Thread-Level Speculation” - ISCA 2000
        J. Gregory Steffan, Christopher B. Colohan, Antonia Zhai, and Todd C. Mowry
        Carnegie Mellon University


        4楼2017-09-28 12:27
        收起回复