本公開(kāi)的實(shí)施例涉及處理器領(lǐng)域,且更具體地涉及循環(huán)算子的同步資源管理方法和設(shè)備、電子設(shè)備、非暫時(shí)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)、計(jì)算機(jī)程序產(chǎn)品。
背景技術(shù):
1、在處理器的并行計(jì)算領(lǐng)域中,在生產(chǎn)者消費(fèi)者編程模型下,生產(chǎn)者需要確保緩沖器被釋放并向其中加載數(shù)據(jù),消費(fèi)者之后利用數(shù)據(jù)進(jìn)行計(jì)算,釋放該緩沖器并告知生產(chǎn)者。這依賴于生產(chǎn)者和消費(fèi)者之間的同步信號(hào)的管理和操作,以確保生產(chǎn)者和消費(fèi)者能夠得到緩沖器準(zhǔn)備好加載數(shù)據(jù)和數(shù)據(jù)準(zhǔn)備好被消費(fèi)的同步信號(hào)。
2、在多階段策略的算子(例如多次重復(fù)執(zhí)行的循環(huán)算子)需要循環(huán)地使用多個(gè)緩沖器以及其對(duì)應(yīng)同步信號(hào)的場(chǎng)景下,如何管理緩沖器的使用以及針對(duì)緩沖器的生產(chǎn)者和消費(fèi)者的同步關(guān)系是有待解決的問(wèn)題。
技術(shù)實(shí)現(xiàn)思路
1、根據(jù)本公開(kāi)的一個(gè)方面,至少一個(gè)實(shí)施例提供一種循環(huán)算子的同步資源管理方法,包括:根據(jù)循環(huán)算子當(dāng)前使用的緩沖器鏈中的第一緩沖器的第一索引,確定循環(huán)算子接下來(lái)要使用的緩沖器鏈中的第二緩沖器的第二索引;響應(yīng)于具有第二索引的第二緩沖器空閑,使用第二緩沖器來(lái)執(zhí)行循環(huán)算子。
2、根據(jù)本公開(kāi)的另一個(gè)方面,至少一個(gè)實(shí)施例提供一種循環(huán)算子的同步資源管理設(shè)備,包括:確定裝置,被配置為根據(jù)循環(huán)算子當(dāng)前使用的緩沖器鏈中的第一緩沖器的第一索引,確定循環(huán)算子接下來(lái)要使用的緩沖器鏈中的第二緩沖器的第二索引;使用裝置,被配置為響應(yīng)于具有第二索引的第二緩沖器空閑,使用第二緩沖器來(lái)執(zhí)行循環(huán)算子。
3、根據(jù)本公開(kāi)的另一個(gè)方面,至少一個(gè)實(shí)施例提供一種電子設(shè)備,包括:存儲(chǔ)器,用于存儲(chǔ)計(jì)算機(jī)指令;處理器,用于讀取所述存儲(chǔ)器中的計(jì)算機(jī)指令,并執(zhí)行根據(jù)本公開(kāi)的至少一個(gè)實(shí)施例的方法。
4、根據(jù)本公開(kāi)的另一個(gè)方面,至少一個(gè)實(shí)施例提供一種非暫時(shí)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)了計(jì)算機(jī)指令,其中,所述計(jì)算機(jī)指令在被處理器執(zhí)行時(shí),使得所述處理器執(zhí)行根據(jù)本公開(kāi)的至少一個(gè)實(shí)施例的方法。
5、根據(jù)本公開(kāi)的另一個(gè)方面,至少一個(gè)實(shí)施例提供一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)指令,其中,所述計(jì)算機(jī)指令在被處理器執(zhí)行時(shí),使得所述處理器執(zhí)行根據(jù)本公開(kāi)的至少一個(gè)實(shí)施例的方法。
6、如此,可以在不固定使用的緩沖器索引的情況下,動(dòng)態(tài)地根據(jù)當(dāng)前正使用的緩沖器的索引來(lái)自動(dòng)確定循環(huán)使用順序中的要使用的緩沖器的下一索引,可以將下一輪循環(huán)算子的執(zhí)行提前,從而提高執(zhí)行效率。
1.一種循環(huán)算子的同步資源管理方法,包括:
2.根據(jù)權(quán)利要求1所述的方法,其中,所述循環(huán)算子的執(zhí)行按所述緩沖器鏈中的包括所述第一緩沖器和所述第二緩沖器的多個(gè)緩沖器的循環(huán)使用順序來(lái)循環(huán)使用所述緩沖器鏈中的所述多個(gè)緩沖器。
3.根據(jù)權(quán)利要求2所述的方法,其中,在所述緩沖器鏈中的所述多個(gè)緩沖器的所述循環(huán)使用順序中,所述第二索引在所述第一索引之后。
4.根據(jù)權(quán)利要求1所述的方法,其中,?在所述循環(huán)算子的第一輪執(zhí)行中最后一次使用所述第一緩沖器的所述循環(huán)算子的執(zhí)行與在所述循環(huán)算子的第二輪執(zhí)行中第一次使用所述第二緩沖器的所述循環(huán)算子的執(zhí)行是并行的。
5.根據(jù)權(quán)利要求1所述的方法,還包括:
6.根據(jù)權(quán)利要求1所述的方法,還包括:
7.根據(jù)權(quán)利要求5或6所述的方法,其中,針對(duì)所述循環(huán)算子跨線程組地加載數(shù)據(jù),使用第一類的數(shù)據(jù)準(zhǔn)備好信號(hào)和緩沖器準(zhǔn)備好信號(hào)來(lái)進(jìn)行數(shù)據(jù)生產(chǎn)者和數(shù)據(jù)消費(fèi)者之間的同步,且針對(duì)所述循環(huán)算子不跨線程組地存儲(chǔ)數(shù)據(jù),?使用第二類的數(shù)據(jù)準(zhǔn)備好信號(hào)和緩沖器準(zhǔn)備好信號(hào)來(lái)進(jìn)行數(shù)據(jù)生產(chǎn)者和數(shù)據(jù)消費(fèi)者之間的同步。
8.一種循環(huán)算子的同步資源管理設(shè)備,包括:
9.一種電子設(shè)備,包括:
10.一種非暫時(shí)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)了計(jì)算機(jī)指令,
11.一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)指令,