本公開的一些實施例的方面涉及用于在計算存儲設備中處理格式化數據和功能的系統和方法。
背景技術:
1、在計算機存儲設備的領域中,系統可包括主機和連接到(例如,可通信地結合到)主機的一個或多個存儲裝置。這樣的計算機存儲系統已經變得越來越流行,部分地用于允許許多不同的用戶共享系統的計算資源。隨著這樣的系統的用戶的數量以及在這樣的系統上運行的應用的數量和復雜度增加,存儲需求隨著時間的推移而增加。
2、因此,可需要適合于改進存儲系統中的存儲裝置的使用的方法、系統和裝置。
3、本背景技術部分旨在僅提供上下文,并且本部分中的任何實施例或構思的公開并不構成承認所述實施例或構思是現有技術。
技術實現思路
1、本公開的一些實施例的方面涉及計算機存儲系統,并且提供對計算存儲設備的改進。
2、根據本公開的一些實施例,提供一種用于執行近存儲器計算(computations?nearmemory)的方法,所述方法包括:在存儲裝置處接收與第一數據集相關聯的第一數據,第一數據具有第一格式;在存儲裝置的處理器核處接收用于對第一數據執行功能的請求,所述功能包括第一操作和第二操作;由存儲裝置的第一處理器核加速引擎基于第一處理器核自定義指令對第一數據執行第一操作以生成第一結果數據;以及由存儲裝置的第一額外處理器核電路基于第一處理器核自定義指令對第一結果數據執行第二操作。
3、存儲裝置可被配置為經由通信協議接收用于執行所述功能的請求。
4、第一數據可包括與第一數據庫頁對應的第一頁數據;第一操作可包括用于基于第一頁數據確定第一格式的解碼操作或頁規則檢查操作;第一結果數據可包括由第一處理器核加速引擎從第一頁數據提取的列數據;并且第一額外處理器核電路可包括掃描引擎。
5、存儲裝置可包括調度器;第一額外處理器核電路可包括與掃描引擎池相關聯的第一掃描引擎,掃描引擎池還包括第二掃描引擎;第一結果數據可包括與第一數據對應的列數據;并且調度器可使:第一掃描引擎對與所述列數據相關聯的列的第一部分執行第二操作,并且第二掃描引擎對所述列的第二部分執行第二操作。
6、所述方法還可包括:在存儲裝置處接收與第二數據集相關聯的第二數據,第二數據具有第二格式;接收用于對第二數據執行所述功能的請求;以及由第二處理器核加速引擎基于至少一個第二處理器核自定義指令對第二數據執行第一操作,以生成第二結果數據。
7、所述方法還可包括:由存儲裝置的第一額外處理器核電路基于第二處理器核自定義指令對第二結果數據執行第二操作。
8、所述請求可經由存儲裝置的應用編程接口(api)接收;第一操作可包括解析操作或解碼操作中的至少一個;并且第二操作可包括掃描操作。
9、根據本公開的一個或多個其他實施例,提供一種用于執行近存儲器計算的系統,所述系統包括:處理器核,存儲第一處理器核自定義指令并且包括第一處理器核加速引擎;以及第一額外處理器核電路,通信地結合到處理器核,其中,處理器核被配置為:接收與第一數據集相關聯的第一數據,第一數據具有第一格式;接收用于對第一數據執行功能的請求,所述功能包括第一操作和第二操作;使第一處理器核加速引擎基于第一處理器核自定義指令對第一數據執行第一操作,以生成第一結果數據;以及使第一額外處理器核電路基于第一處理器核自定義指令對第一結果數據執行第二操作。
10、處理器核可被配置為經由通信協議接收用于執行所述功能的請求。
11、第一數據可包括與第一數據庫頁對應的第一頁數據;第一操作可包括用于基于第一頁數據確定第一格式的解碼操作或頁規則檢查操作;第一結果數據可包括由第一處理器核加速引擎從第一頁數據提取的列數據;并且第一額外處理器核電路可包括掃描引擎。
12、所述系統還可包括:調度器,結合到處理器核,第一額外處理器核電路可包括與掃描引擎池相關聯的第一掃描引擎,掃描引擎池還包括第二掃描引擎;第一結果數據可包括與第一數據對應的列數據;并且調度器可使:第一掃描引擎對與所述列數據相關聯的列的第一部分執行第二操作;并且第二掃描引擎對所述列的第二部分執行第二操作。
13、處理器核可被配置為:接收與第二數據集相關聯的第二數據,第二數據具有第二格式;接收用于對第二數據執行所述功能的請求;并且使第二處理器核加速引擎基于至少一個第二處理器核自定義指令對第二數據執行第一操作,以生成第二結果數據。
14、處理器核可被配置為:使第一額外處理器核電路基于第二處理器核自定義指令對第二結果數據執行第二操作。
15、所述請求可經由結合到處理器核的應用編程接口(api)接收;第一操作可包括解析操作或解碼操作中的至少一個;并且第二操作可包括掃描操作。
16、根據本公開的一個或多個其他實施例,提供一種用于執行近存儲器計算的存儲裝置,所述存儲裝置包括:處理器核,存儲第一處理器核自定義指令并且包括第一處理器核加速引擎;以及第一額外處理器核電路,通信地結合到處理器核,其中,所述存儲裝置被配置為:接收與第一數據集相關聯的第一數據,第一數據具有第一格式;接收用于對第一數據執行功能的請求,所述功能包括第一操作和第二操作;并且使第一處理器核加速引擎基于第一處理器核自定義指令對第一數據執行第一操作,以生成第一結果數據;并且使第一額外處理器核電路基于第一處理器核自定義指令對第一結果數據執行第二操作。
17、第一數據可包括與第一數據庫頁對應的第一頁數據;第一操作可包括用于基于第一頁數據確定第一格式的解碼操作或頁規則檢查操作;第一結果數據可包括由第一處理器核加速引擎從第一頁數據提取的列數據;并且第一額外處理器核電路可包括掃描引擎。
18、所述存儲裝置還可包括:調度器,結合到處理器核,第一額外處理器核電路可包括與掃描引擎池相關聯的第一掃描引擎,掃描引擎池包括第二掃描引擎;第一結果數據可包括與第一數據對應的列數據;并且調度器使:第一掃描引擎對與所述列數據相關聯的列的第一部分執行第二操作;并且第二掃描引擎對所述列的第二部分執行第二操作。
19、所述存儲裝置可被配置為:接收與第二數據集相關聯的第二數據,第二數據具有第二格式;接收用于對第二數據執行所述功能的請求;并且使第二處理器核加速引擎基于至少一個第二處理器核自定義指令對第二數據執行第一操作,以生成第二結果數據。
20、處理器核可被配置為使第一額外處理器核電路基于第二處理器核自定義指令對第二結果數據執行第二操作。
21、所述請求可經由結合到處理器核的應用編程接口(api)接收;第一操作可包括解析操作或解碼操作中的至少一個;并且第二操作可包括掃描操作。
1.一種用于執行近存儲器計算的方法,所述方法包括:
2.根據權利要求1所述的方法,其中,存儲裝置被配置為經由通信協議接收用于執行所述功能的請求。
3.根據權利要求1所述的方法,其中:
4.根據權利要求1所述的方法,其中:
5.根據權利要求1所述的方法,還包括:
6.根據權利要求5所述的方法,還包括:由存儲裝置的第一額外處理器核電路基于所述至少一個第二處理器核自定義指令對第二結果數據執行第二操作。
7.根據權利要求1至權利要求6中的任一項所述的方法,其中:
8.一種用于執行近存儲器計算的系統,所述系統包括存儲裝置,其中,存儲裝置包括:
9.根據權利要求8所述的系統,其中,處理器核被配置為經由通信協議接收用于執行所述功能的請求。
10.根據權利要求8所述的系統,其中:
11.根據權利要求8所述的系統,還包括:調度器,結合到處理器核,其中:
12.根據權利要求8所述的系統,其中,處理器核被配置為:
13.根據權利要求12所述的系統,其中,處理器核被配置為:使第一額外處理器核電路基于所述至少一個第二處理器核自定義指令對第二結果數據執行第二操作。
14.根據權利要求8至權利要求12中的任一項所述的系統,其中:
15.一種用于執行近存儲器計算的存儲裝置,所述存儲裝置包括:
16.根據權利要求15所述的存儲裝置,其中:
17.根據權利要求15所述的存儲裝置,還包括:調度器,結合到處理器核,其中:
18.根據權利要求15所述的存儲裝置,其中,處理器核被配置為:
19.根據權利要求18所述的存儲裝置,其中,處理器核被配置為:使第一額外處理器核電路基于所述至少一個第二處理器核自定義指令對第二結果數據執行第二操作。
20.根據權利要求15至權利要求19中的任一項所述的存儲裝置,其中: