[發(fā)明專利]通過SIMD處理器寄存器對數(shù)據(jù)進行迭代評估有效
| 申請?zhí)枺?/td> | 201710632383.8 | 申請日: | 2017-07-28 |
| 公開(公告)號: | CN107818125B | 公開(公告)日: | 2021-10-15 |
| 發(fā)明(設(shè)計)人: | M.戈爾根斯;D.杜爾納 | 申請(專利權(quán))人: | SAP歐洲公司 |
| 主分類號: | G06F16/22 | 分類號: | G06F16/22;G06F16/242;G06F8/41;G06F9/30 |
| 代理公司: | 北京市柳沈律師事務(wù)所 11105 | 代理人: | 邵亞麗 |
| 地址: | 德國瓦*** | 國省代碼: | 暫無信息 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 通過 simd 處理器 寄存器 數(shù)據(jù) 進行 評估 | ||
1.一種用于評估內(nèi)存數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)的計算機實現(xiàn)的方法,所述方法包括:
生成用于處理所述內(nèi)存數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)集的可運行代碼,其中,所述可運行代碼基于包括與所述數(shù)據(jù)集的第一部分相關(guān)聯(lián)的斷言的程序指令;
確定處理器處的寄存器的大小以確定將要分配的位值的數(shù)量,將要分配的位值的數(shù)量等于寄存器的大小,其中,所述寄存器是與并行地在多個數(shù)據(jù)元素上執(zhí)行單一指令相關(guān)聯(lián)的單指令多數(shù)據(jù)SIMD寄存器;
將所述數(shù)據(jù)集的第一部分劃分成一個或多個數(shù)據(jù)部分,其中,數(shù)據(jù)部分包括與要分配到處理器處的寄存器中的位值的數(shù)量相對應(yīng)的多個數(shù)據(jù)元素;
在所述處理器處,迭代地評估所述一個或多個數(shù)據(jù)部分以確定將迭代地存儲到所述寄存器中的一個或多個位向量,每個位向量存儲特定一個數(shù)據(jù)部分中的數(shù)據(jù)元素的評估結(jié)果;以及
在所述處理器處,基于所存儲的一個或多個位向量并且基于從所述數(shù)據(jù)集調(diào)用數(shù)據(jù),迭代地確定和提供一個或多個結(jié)果數(shù)據(jù)集,
其中,迭代地評估所述一個或多個數(shù)據(jù)部分以確定將迭代地存儲到所述寄存器中的所述一個或多個位向量還包括:
對于每個數(shù)據(jù)部分:
基于所述斷言,基于來自所述數(shù)據(jù)部分的數(shù)據(jù)元素的值的評估來確定對應(yīng)的位向量,其中,所述位向量包括與符合所述斷言的評估結(jié)果相對應(yīng)的位值,每個位值對應(yīng)于特定一個值的評估結(jié)果;
在所述處理器處,將位向量加載到所述寄存器中;以及
在所述處理器處,基于所述位向量中的正位值的位置,從來自所述數(shù)據(jù)集的列確定行的標識符。
2.如權(quán)利要求1所述的方法,還包括:
根據(jù)可運行代碼將所述數(shù)據(jù)集加載到將要處理的內(nèi)存數(shù)據(jù)庫系統(tǒng)的主存儲器處的數(shù)據(jù)庫表中。
3.如權(quán)利要求1所述的方法,其中,所述數(shù)據(jù)集的所述第一部分包括來自所述數(shù)據(jù)集的一列或多列數(shù)據(jù),并且其中,包括在所述程序指令中的所述斷言定義用于確定所述一個或多個結(jié)果數(shù)據(jù)集的規(guī)則。
4.如權(quán)利要求1所述的方法,還包括:
生成或接收定義將對所述數(shù)據(jù)集執(zhí)行的操作的請求;以及
針對所述請求生成邏輯計劃,所述邏輯計劃定義與所述程序指令和所述數(shù)據(jù)集相關(guān)的邏輯運算的數(shù)據(jù)流;
其中,所生成的運行計劃是與將由內(nèi)存數(shù)據(jù)庫系統(tǒng)中的運行引擎運行的邏輯計劃相對應(yīng)的物理計劃,其中,基于從與所生成的邏輯計劃相對應(yīng)的所確定的物理計劃的集合中的選擇來確定運行計劃,其中,所確定的物理計劃的集合基于關(guān)于所述運行所使用的內(nèi)存數(shù)據(jù)庫系統(tǒng)的系統(tǒng)能力的信息、以及基于針對所述數(shù)據(jù)集的統(tǒng)計數(shù)據(jù)來確定。
5.如權(quán)利要求4所述的方法,其中,生成用于所述程序指令的邏輯計劃還包括:
解析所述請求以生成用于執(zhí)行操作的語法樹;
驗證所述語法樹以確定所述語法樹是否對所述數(shù)據(jù)集有效;以及
當所述語法樹對所述數(shù)據(jù)集有效時,改進所述語法樹以包括關(guān)于所述數(shù)據(jù)集的信息。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于SAP歐洲公司,未經(jīng)SAP歐洲公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710632383.8/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 具有級聯(lián)SIMD結(jié)構(gòu)的數(shù)字信號處理器
- 信息處理裝置以及機器語言程序變換裝置
- 處理器中的有效并行浮點異常處理
- 在單指令多數(shù)據(jù)多核處理器架構(gòu)上轉(zhuǎn)置矩陣的方法和系統(tǒng)
- 具有單指令多數(shù)據(jù)處理電路的數(shù)據(jù)處理裝置
- 用于單指令多數(shù)據(jù)處理器的高效硬件指令
- 用于改進SIMD KNN實現(xiàn)的設(shè)備、方法、系統(tǒng)和機器可讀介質(zhì)
- 用于單指令多數(shù)據(jù)處理器的高效硬件指令
- 單指令多數(shù)據(jù)處理器與相關(guān)方法
- 一種應(yīng)用于處理器的寄存器控制SIMD指令擴展方法





