本申請涉及計算機(jī)處理器,尤其涉及加速器指令的處理方法、裝置及電子設(shè)備。
背景技術(shù):
1、隨著人工智能、科學(xué)計算、視頻處理、網(wǎng)絡(luò)傳輸、加解密處理和數(shù)字信號處理等高計算密集應(yīng)用領(lǐng)域的快速發(fā)展,對芯片的數(shù)據(jù)處理能力提出的要求也越來越高。為提高特定領(lǐng)域架構(gòu)(domain-specific?architectures,簡稱dsa)計算密集應(yīng)用的處理能力,芯片一般采用處理器和加速器結(jié)合的異構(gòu)形式,處理器負(fù)責(zé)控制流的處理,加速器負(fù)責(zé)數(shù)據(jù)流的處理,芯片采用人工智能(artificial?intelligence,簡稱ai)處理器、圖形處理器(graphics?processing?unit,簡稱gpu)、數(shù)字信號處理器(digital?signal?processing,簡稱dsp)、加解密加速器(cryptographic?accelerators)、數(shù)據(jù)處理器dpu(dataprocessing?unit,簡稱dpu)及流處理器等作為加速器accelerator與通用處理器(centralprocessing?unit,簡稱cpu)共同作為芯片的處理器和加速器異構(gòu)核心,但是,處理器與加速器分別具有獨立的控制單元,因此,往往會造成資源的浪費,導(dǎo)致異構(gòu)芯片的資源利用率較低。
技術(shù)實現(xiàn)思路
1、本申請旨在至少在一定程度上解決相關(guān)技術(shù)中的技術(shù)問題之一。
2、為此,本申請的第一個目的在于提出一種加速器指令的處理方法,用于解決現(xiàn)有技術(shù)中異構(gòu)芯片存在的資源浪費以及資源利用率較低的技術(shù)問題。
3、為了實現(xiàn)上述目的,本申請第一方面實施例提供了一種加速器指令的處理方法,由處理器執(zhí)行,該方法包括:將加速器指令分派至加速器和處理器的執(zhí)行部件的共用保留站;判斷處理器中的加速器指令數(shù)據(jù)傳輸部件是否有空項,響應(yīng)于所述加速器指令數(shù)據(jù)傳輸部件有空項,將所述加速器指令從所述共用保留站中發(fā)射至執(zhí)行部件;監(jiān)聽所述執(zhí)行部件的寫回端口,確定所述執(zhí)行部件的配置信息,其中,所述執(zhí)行部件的配置信息指示所述執(zhí)行部件獨占寫回端口或所述執(zhí)行部件共享寫回端口;根據(jù)所述執(zhí)行部件的配置信息,將所述加速器指令寫回重定序緩沖區(qū);控制所述加速器指令數(shù)據(jù)傳輸部件按照順序?qū)⑺黾铀倨髦噶畹闹噶钚畔l(fā)送至加速器的執(zhí)行部件,其中,所述指令信息包括操作碼和源操作數(shù)。
4、為了實現(xiàn)上述目的,本申請第二方面實施例提供了一種加速器指令的處理裝置,應(yīng)用于處理器,該裝置包括:分派模塊,用于將加速器指令分派至加速器和處理器的執(zhí)行部件的共用保留站;發(fā)射模塊,用于判斷處理器中的加速器指令數(shù)據(jù)傳輸部件是否有空項,響應(yīng)于所述加速器指令數(shù)據(jù)傳輸部件有空項,將所述加速器指令從所述共用保留站中發(fā)射至執(zhí)行部件;監(jiān)聽模塊,用于監(jiān)聽所述執(zhí)行部件的寫回端口,確定所述執(zhí)行部件的配置信息,其中,所述執(zhí)行部件的配置信息指示所述執(zhí)行部件獨占寫回端口或所述執(zhí)行部件共享寫回端口;寫回模塊,用于根據(jù)所述執(zhí)行部件的配置信息,將所述加速器指令寫回重定序緩沖區(qū);發(fā)送模塊,用于控制所述加速器指令數(shù)據(jù)傳輸部件按照順序?qū)⑺黾铀倨髦噶畹闹噶钚畔l(fā)送至加速器的執(zhí)行部件,其中,所述指令信息包括操作碼和源操作數(shù)。
5、為了實現(xiàn)上述目的,本申請第三方面實施例提供了一種電子設(shè)備,包括:存儲器、處理器及存儲在所述存儲器上并可在所述處理器上運行的計算機(jī)程序,所述處理器執(zhí)行所述程序時,實現(xiàn)如本申請第一方面實施例中任一項所述的加速器指令的處理方法。
6、為了實現(xiàn)上述目的,本申請第四方面實施例提供了一種存儲有計算機(jī)指令的非瞬時計算機(jī)可讀存儲介質(zhì),該計算機(jī)指令用于使計算機(jī)執(zhí)行時實現(xiàn)如本申請第一方面實施例中任一項所述的加速器指令的處理方法。
7、為了實現(xiàn)上述目的,本申請第五方面提供了一種計算機(jī)程序產(chǎn)品,包括計算機(jī)程序,所述計算機(jī)程序被處理器執(zhí)行時實現(xiàn)如前第一方面實施例中任一項所述的加速器指令的處理方法。
1.一種加速器指令的處理方法,其特征在于,由處理器執(zhí)行,所述方法包括:
2.根據(jù)權(quán)利要求1所述方法,其特征在于,所述將加速器指令分派至加速器和處理器的執(zhí)行部件的共用保留站,包括:
3.根據(jù)權(quán)利要求1所述方法,其特征在于,所述將所述加速器指令從所述共用保留站中發(fā)射至執(zhí)行部件之前,還包括:
4.根據(jù)權(quán)利要求1所述方法,其特征在于,所述響應(yīng)于所述加速器指令數(shù)據(jù)傳輸部件有空項,將所述加速器指令從所述共用保留站中發(fā)射至執(zhí)行部件,還包括:
5.根據(jù)權(quán)利要求1所述方法,其特征在于,所述根據(jù)所述執(zhí)行部件的配置信息,將所述加速器指令寫回重定序緩沖區(qū),還包括:
6.根據(jù)權(quán)利要求1所述方法,其特征在于,所述根據(jù)所述執(zhí)行部件的配置信息,將所述加速器指令寫回重定序緩沖區(qū),還包括:
7.根據(jù)權(quán)利要求1所述方法,其特征在于,所述控制所述加速器指令數(shù)據(jù)傳輸部件按照順序?qū)⑺黾铀倨髦噶畹闹噶钚畔l(fā)送至加速器的執(zhí)行部件,還包括:
8.一種加速器指令的處理裝置,其特征在于,應(yīng)用于處理器,所述裝置,包括:
9.一種電子設(shè)備,其特征在于,包括:存儲器、處理器及存儲在所述存儲器上并可在所述處理器上運行的計算機(jī)程序,所述處理器執(zhí)行所述程序時,實現(xiàn)如權(quán)利要求1-7中任一項所述的加速器指令的處理方法。
10.一種計算機(jī)可讀存儲介質(zhì),其上存儲有計算機(jī)程序,其特征在于,該程序被處理器執(zhí)行時實現(xiàn)如權(quán)利要求1-7中任一項所述的加速器指令的處理方法。
11.一種計算機(jī)程序產(chǎn)品,包括計算機(jī)程序,所述計算機(jī)程序在被處理器執(zhí)行時實現(xiàn)根據(jù)權(quán)利要求1-7中任一項所述的加速器指令的處理方法。