TW201942761A - 伺服器系統 - Google Patents
伺服器系統 Download PDFInfo
- Publication number
- TW201942761A TW201942761A TW108108272A TW108108272A TW201942761A TW 201942761 A TW201942761 A TW 201942761A TW 108108272 A TW108108272 A TW 108108272A TW 108108272 A TW108108272 A TW 108108272A TW 201942761 A TW201942761 A TW 201942761A
- Authority
- TW
- Taiwan
- Prior art keywords
- data processing
- end data
- processing engine
- server system
- storage devices
- Prior art date
Links
- 238000012545 processing Methods 0.000 claims abstract description 116
- 238000004891 communication Methods 0.000 claims abstract description 42
- 239000007787 solid Substances 0.000 claims description 7
- 230000002093 peripheral effect Effects 0.000 claims description 4
- 239000004744 fabric Substances 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 17
- 238000000034 method Methods 0.000 description 16
- 238000013403 standard screening design Methods 0.000 description 15
- 238000007405 data analysis Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- CEPSBUIWVLQEKQ-UHFFFAOYSA-N n-(3,3-diphenylpropyl)-6-fluoropyridine-3-carboxamide Chemical compound C1=NC(F)=CC=C1C(=O)NCCC(C=1C=CC=CC=1)C1=CC=CC=C1 CEPSBUIWVLQEKQ-UHFFFAOYSA-N 0.000 description 2
- AYBALPYBYZFKDS-UHFFFAOYSA-N (3-acetyloxy-2-nitro-3-phenylpropyl) acetate Chemical compound CC(=O)OCC([N+]([O-])=O)C(OC(C)=O)C1=CC=CC=C1 AYBALPYBYZFKDS-UHFFFAOYSA-N 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
- G06F2212/1024—Latency reduction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multi Processors (AREA)
- Centrifugal Separators (AREA)
- Eye Examination Apparatus (AREA)
- Iron Core Of Rotating Electric Machines (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
Abstract
一種伺服器系統包括第一多個大容量儲存裝置、中央處理單元以及至少一個近端資料處理引擎。中央處理單元耦合至所述第一多個大容量儲存裝置,諸如固態驅動器裝置,且所述至少一個近端資料處理引擎與第二多個大容量儲存裝置相關聯,且設置於中央處理單元和與近端資料處理引擎相關聯的所述第二多個大容量儲存裝置之間。所述第二多個大容量儲存裝置小於或等於所述第一多個大容量儲存裝置。近端資料處理引擎的數目可基於以下各頻寬中的最小頻寬而定:與中央處理單元相關聯的頻寬、與網路相關聯的頻寬、與通訊網狀架構相關聯的頻寬、以及與所有的近端資料處理引擎相關聯的頻寬除以與單個近端資料處理引擎相關聯的頻寬。
Description
本文中所揭露標的大體而言是有關於減輕伺服器系統的效能不平衡的系統及方法,且更具體而言是有關於伺服器系統架構及在可儲存資料之處的近端處進行資料處理以減輕伺服器系統的效能不平衡的方法。
現代資料中心可遭受著資料處理與資料移動之間的不平衡,這可使資料中心的效能及能量效率兩者皆發生劣化。此不平衡通常是由與伺服器系統的組件相關聯的延時或瓶頸所致。舉例而言,資料密集型應用可面臨通過記憶體進行資料移動所致的效能瓶頸。對於計算密集型應用而言,處理器上的負載可能會導致瓶頸。不平衡亦可造成額外的能量消耗,這主要是由於伺服器系統的組件利用不充分,例如,記憶體及/或處理器可處於等待資料或指令的閒置狀態中,但仍消耗能量來維持當前狀態。
採用巨量資料分析的趨勢可進一步加重伺服器系統中可能出現的不平衡。舉例而言,巨量資料分析可對龐大且不同的資料集進行運算以發現隱藏的模式、未知的關聯、市場趨勢、顧客偏好及/或其他有用的資訊。對於此巨量資料分析而言,可涉及到大量的資料移動,這可往往會導致效能瓶頸。類似地,為巨量資料分析提供強有力工具的機器學習顯然是計算密集型的,同時亦涉及到訓練用的龐大資料集。若所處理的資料量及工作負荷的資料處理的分析複雜性提高,則資料中心的效能及能量效率可發生進一步劣化。
[發明所欲解決之課題]
本發明的目標是提供一種減輕資料密集型應用或計算密集型應用所致的系統不平衡的伺服器系統。
[解決課題之手段]
實例性實施例提供一種伺服器系統,所述伺服器系統可包括第一多個大容量儲存裝置、至少一個中央處理單元(central processing unit,CPU)及至少一個近端資料處理(near data processing,NDP)引擎。所述至少一個中央處理單元可耦合至所述第一多個大容量儲存裝置。每一NDP引擎可與第二多個大容量儲存裝置相關聯,且設置於中央處理單元和與所述NDP引擎相關聯的所述第二多個大容量儲存裝置之間。所述第二多個大容量儲存裝置的數量可小於或等於所述第一多個大容量儲存裝置的數量。所述大容量儲存裝置可包括至少一個固態驅動器(solid-state drive,SSD)裝置。網路介面可通過網路將伺服器系統通訊耦合至至少一個遠端系統,其中所述至少一個遠端系統可在所述伺服器系統之外,且通訊網狀架構可設置於所述中央處理單元與所述至少一個NDP引擎之間。在一個實施例中,形成所述伺服器系統的NDP引擎的數目可至少部分地基於以下各頻寬中的最小頻寬而定:與所述中央處理單元相關聯的頻寬、與所述網路相關聯的頻寬、與所述通訊網狀架構相關聯的頻寬、與所有的NDP引擎相關聯的頻寬除以與單個NDP引擎相關聯的頻寬。在另一實施例中,交換層可設置於NDP引擎與所述第一多個大容量儲存裝置之間,其中所述交換層可將所述NDP引擎和與所述NDP引擎相關聯的所述第二多個大容量儲存裝置進行通訊耦合。在又一實施例中,所述交換層可設置於第二NDP引擎與所述第一多個大容量儲存裝置之間,其中所述交換層可將所述第二NDP引擎和與所述第二NDP引擎相關聯的所述第二多個大容量儲存裝置進行通訊耦合。
另一實例性實施例提供一種伺服器系統,所述伺服器系統可包括網路介面、第一多個SSD裝置、至少一個中央處理單元以及至少一個NDP引擎。所述網路介面可通過網路將所述伺服器系統通訊耦合至至少一個遠端系統,其中所述至少一個遠端系統可在所述伺服器系統之外。所述至少一個中央處理單元可耦合至所述網路介面及所述第一多個SSD裝置。每一NDP引擎可與第二多個SSD裝置相關聯,且設置於所述中央處理單元和與NDP引擎相關聯的所述第二多個SSD裝置之間,其中所述第二多個SSD裝置的數量可小於或等於所述第一多個SSD裝置的數量。通訊網狀架構可設置於所述中央處理單元與所述至少一個NDP引擎之間,且形成所述伺服器系統的NDP引擎的數目可基於以下各頻寬中的最小頻寬而定:與所述中央處理單元相關聯的頻寬、與所述網路相關聯的頻寬、與通訊網狀架構相關聯的頻寬、以及與所有的NDP引擎相關聯的頻寬除以與單個NDP引擎相關聯的頻寬。
又一實例性實施例提供一種伺服器系統,所述伺服器系統可包括第一多個大容量儲存裝置、至少一個中央處理單元、至少一個NDP引擎及交換層。所述至少一個中央處理單元可耦合至所述第一多個大容量儲存裝置。每一NDP引擎可與第二多個大容量儲存裝置相關聯,且設置於所述中央處理單元和與所述NDP引擎相關聯的所述第二多個大容量儲存裝置之間。所述第二多個大容量儲存裝置的數量可小於或等於所述第一多個大容量儲存裝置的數量。所述交換層可設置於每一NDP引擎與所述第一多個大容量儲存裝置之間,其中所述交換層可將每一NDP引擎和與所述NDP引擎相關聯的相應的第二多個大容量儲存裝置進行通訊耦合。網路介面可通過網路將伺服器系統通訊耦合至至少一個遠端系統,其中所述至少一個遠端系統可在所述伺服器系統之外,且通訊網狀架構可設置於所述中央處理單元與所述至少一個NDP引擎之間。所述交換層可設置於第二NDP引擎與所述第一多個大容量儲存裝置之間,其中所述交換層可將所述第二NDP引擎和與所述第二NDP引擎相關聯的所述第二多個大容量儲存裝置進行通訊耦合。
[發明的效果]
根據本發明,近端資料處理引擎部署於伺服器系統中。因此,提供一種減輕系統不平衡的伺服器系統。
在以下詳細說明中,陳述眾多具體細節以提供對本發明的透徹理解。然而熟習此項技術者應理解,可在無該些具體細節的情況下實踐所揭露的態樣。在其他例子中,未詳細地闡述眾所周知的方法、程序、組件及電路以免使本文中所揭露標的模糊。
在本說明書通篇提及「一個實施例」或「一實施例」意指結合所述實施例闡述的特定的特徵、結構或特性可包括於本文中所揭露的至少一個實施例中。因此,在本說明書通篇各處出現的片語「在一個實施例中」或「在實施例中」或「根據一個實施例」(或具有類似意思的其他片語)可未必全部皆指代同一實施例。此外,特定的特徵、結構或特性可以任何適合的方式組合於一個或多個實施例中。就此而言,本文中所使用的措詞「示例性」意指「充當實例、例子或說明」。不應將在本文中被闡述為「示例性」的任何實施例解釋為一定優於其他實施例或比其他實施例有利。此外,根據本文中所述的上下文,單數用語可包含對應的複數形式且複數用語可包含對應的單數形式。亦應注意,本文中所示及所述的各個圖(包括組件圖)僅出於說明目的,並未按比例繪製。類似地,僅出於說明目的示出各種波形及時序圖。舉例而言,為清晰起見,可相對於其他元件而放大元件中的一些元件的尺寸。此外,已在適當情況下在各個圖當中重複使用參考編號以指示對應及/或相似的元件。
本文中所使用的用語僅是出於闡述特定的示例性實施例的目的,並不旨在限制所主張的標的。本文中所使用的單數形式「一(a/an)」及「所述」亦旨在包括複數形式,除非上下文另有清晰指示。亦應理解,本說明書中所使用的用語「包括(comprises)」及/或「包括(comprising)」規定存在所述的特徵、整數、步驟、操作、元件及/或組件,但並不排除存在或附加一個或多個其他的特徵、整數、步驟、操作、元件、組件及/或其群組。本文中所使用的用語「第一」、「第二」等用作在其後的名詞的標簽,並不意味著存在任何類型的次序(例如,空間、時間、邏輯等),除非如此明確定義。此外,可在兩個或更多個圖中使用相同的參考編號來指代具有相同或類似功能性的部分、組件、區塊、電路、單元或模組。然而,此使用僅是為了使說明簡明且使論述簡單;並不意味著該些組件或單元的構造或架構的細節在所有實施例中皆相同,亦不意味著該些通常所提及的部分/模組是實施本文中所揭露的特定實施例的教示的唯一方式。
除非另有定義,否則本文中所使用的所有用語(包括技術用語及科學用語)具有與熟習本發明標的所屬技術領域的技術者通常所理解的相同的含義。亦應理解,用語(諸如常用詞典中所定義的用語)應被闡釋為具有與其在相關技術的上下文中的含義一致的含義,並不應在理想化意義或過度形式化的意義上加以闡釋,除非本文中如此明確地定義。
近端資料處理(NDP)可用於將資料中心伺服器的架構最佳化,以減輕可由資料處理及資料移動所致的不平衡問題。可使用近端資料處理伺服器架構,所述近端資料處理伺服器架構併入嵌入式處理器(例如,CPU、高階RISC機器(advanced RISC machine,ARM)、第五代精簡指令集電腦(Reduced Instruction-Set Computer V,RISC V)等)及/或場可程式化閘陣列(field programmable gate array,FPGA)作為NDP引擎的替代類型,以分別形成PNDP伺服器(處理器型NDP伺服器)架構或FNDP伺服器(FPGA型NDP伺服器)架構。舉例而言,使用FPGA作為NDP引擎的FNDP伺服器架構不僅在效能改良及能量效率上而且在系統成本上皆具備顯著的優勢。
通過基於資料的位置及自所述資料提取的資訊而在伺服器系統架構中的最適當位置處處理所述資料,NDP可將資料移動最小化。因此,在進行NDP時,可就在資料所在之處(諸如在快取記憶體、主記憶體及/或持久型儲存裝置中)施行計算。此與向獨立於可儲存資料之處的中央處理單元移動資料形成對比。通常可基於NDP引擎可在記憶體層級中的不同的位置將NDP處理劃分為三類,亦即:(i)在儲存裝置(例如SSD、硬磁碟驅動器(hard disk drive,HDD))中進行的NDP;(ii)在儲存裝置近端(通常設置於SSD、HDD及主機之間)進行的NDP;(iii)在動態隨機存取記憶體(DRAM)(鄰近於處理器)中進行的NDP。
在一個實施例中,一個或多個NDP引擎可設置於伺服器系統的處理器與大容量儲存裝置(諸如,固態驅動器(SSD)裝置)之間。NDP引擎可被配置成通過在伺服器系統內的更適當位置處而非在伺服器系統的處理器處提供計算及/或資料處理來將資料移動最小化。在另一實施例中,所述一個或多個NDP引擎可被配置成不僅將資料移動最小化,而且減小可由計算密集型應用所致的處理器負荷。在一個實施例中,將NDP引擎與一個或多個SSD配對可提供可縮放的系統配置。
在一個實施例中,本文中所揭露標的提供設置於SSD與主機CPU之間的路徑上的NDP(亦即,位於SSD、HDD近端的NDP)。在另一實施例中,NDP可位於儲存伺服器的SSD內,旨在減少資料移動且更充分地使用SSD之間的平行性。在又一實施例中,可將一個或多個NDP引擎整合至DRAM中。
所有類型的計算單元(例如,高效節能的嵌入式處理器、FPGA、流式傳輸處理器等)皆可用作NDP引擎。舉例而言,在一個實施例中,SSD裝置中的控制器可處理已自SSD裝置的物理儲存媒體存取的資料。亦即,可將NDP引擎安置於主機與SSD裝置之間的路徑中以用於資料處理。在另一實施例中,可將一個或多個NDP引擎整合至DRAM中。
圖1A繪示根據本文中所揭露標的的伺服器系統100的架構的第一實例性實施例的方塊圖。伺服器系統100可通過一個或多個通訊網路103連接至一個或多個用戶端裝置102,僅繪示了所述一個或多個用戶端裝置102中的一個用戶端裝置,僅繪示了所述一個或多個通訊網路103中的一個通訊網路。
伺服器系統100可包括處理器層104、通訊網狀架構層105、NDP引擎(NDP engine,NDPE)層106及儲存層107。大容量儲存層107可通過NDPE層106連接至通訊網狀架構層105,且通訊網狀架構層105可將NDPE層106及儲存層107連接至處理器層104。可利用連接於通訊網狀架構層105與SSD層107之間的NDPE層106將SSD的全資料傳送頻寬遞送至系統,同時亦減輕可由資料密集型應用或計算密集型應用所致的任何不平衡。
處理器層104可包括一個或多個處理器140及系統記憶體141。在一個實施例中,系統記憶體141可包括DRAM。在另一實施例中,系統記憶體141可包括任何類型的揮發性記憶體及/或任何類型的非揮發性記憶體。通訊網狀架構層105可包括一個或多個通訊交換機150及通訊鏈路。在一個實例性實施例中,通訊網狀架構層105可以是周邊組件互連快速(PCIe)型通訊網狀架構,但通訊網狀架構層105並不僅限於此。
NDPE層106可包括一個或多個NDP引擎。NDPE層106包括n個NDP引擎:NDPE#0至NDPE#n‑1,其中n是整數。NDPE層106的NDP引擎可以是處理器型NDP引擎、FPGA型NDP引擎或其組合。亦可存在且可使用其他類型的NDP引擎。儲存層107可包括一個或多個大容量儲存裝置。在一個實施例中,所述一個或多個大容量儲存裝置可包括SSD裝置。在另一實施例中,所述一個或多個大容量儲存裝置可包括HDD裝置。大容量儲存層107可包括n個SSD:SSD#0至SSD#n‑1。對於圖1A中所示的實例性實施例而言,每一NDP引擎與相應的SSD裝置對應。
圖1B繪示根據本文中所揭露標的的伺服器系統100’的架構的第二實例性實施例的方塊圖。伺服器系統100’可通過一個或多個通訊網路103連接至一個或多個用戶端裝置102,僅繪示所述一個或多個用戶端裝置102中的一個用戶端裝置,僅繪示所述一個或多個通訊網路103中的一個通訊網路。
伺服器系統100’可包括處理器層104、通訊網狀架構層105、NDPE層106’及儲存層107’。大容量儲存層107’可通過通訊網狀架構層105連接至NDPE層106’,且通訊網狀架構層105可將NDPE層106’及儲存層107’連接至處理器層104。
與圖1A中所示的伺服器系統100類似,伺服器系統100’的處理器層104可包括一個或多個處理器140及系統記憶體141。在一個實施例中,系統記憶體141可包括DRAM。在另一實施例中,系統記憶體141可包括任何類型的揮發性記憶體及/或任何類型的非揮發性記憶體。通訊網狀架構層105可包括一個或多個通訊交換機150及通訊鏈路。在一個實例性實施例中,通訊網狀架構層105可以是PCIe型通訊網狀架構,但通訊網狀架構層105並不僅限於此。
NDPE層106’可包括一個或多個NDP引擎。NDPE層106’包括n‑m個NDP引擎:NDPE#m至NDPE#n‑1,其中n及m是整數且m > n。NDPE層106’的NDP引擎可以是處理器型NDP引擎、FPGA型NDP引擎或其組合。亦可存在且可使用其他類型的NDP引擎。儲存層107可包括一個或多個大容量儲存裝置。在一個實施例中,所述一個或多個大容量儲存裝置可包括SSD裝置。在另一實施例中,所述一個或多個大容量儲存裝置可包括HDD裝置。大容量儲存層107可包括m個SSD:SSD#0至SSD#m-1。
圖2繪示根據本文中所揭露標的的伺服器系統100的架構及NDP引擎的方塊圖。NDP引擎可包括資料處理裝置201、記憶體202以及介面203及介面204。介面203及介面204可分別連接至儲存層107中的一個或多個SSD(由單個SSD#i表示)以及連接至通訊網狀架構105。在一個實施例中,資料處理裝置201可以是處理器嵌入式內核,諸如但不限於四重內核ARM Cortex-A53裝置。在另一實施例中,資料處理裝置201可以是FPGA裝置,在此種情形中,連接至FPGA型NDPE的SSD可分割FPGA晶片中的硬體資源(亦即,數位訊號處理器(digital signal processor,DSP)片、查找表(look-up table,LUT)、隨機存取記憶體(random access memory,RAM)等)。系統100可利用所分割的資源來針對可連接至NDPE的每一相應的SSD將核心具現化。儘管處理器型NDPE及FPGA型NDPE可具有不同的應用實施方案,但將存在單獨處理每一SSD的資料的處理元件(例如,四重內核ARM Cortex-A53、或被FPGA資源具現化的應用核心)。
NDP引擎中的記憶體202可以是DRAM且可用作元資料儲存裝置。DRAM亦可提供緩衝器,以用於SSD與NDP引擎之間的、NDP引擎與主機CPU之間的資料移動及/或在NDP引擎執行應用期間作為中間資料儲存裝置。介面203及介面204可提供自NDPE至SSD以及至主機CPU的連接。在一個實施例中,介面203及介面204可以是PCIe型介面。
圖2中所示的伺服器系統100的架構可包括兩種類型的處理單元,亦即一個或多個主機CPU以及一個或多個NDP引擎。伺服器系統中的所有NDP引擎皆不可自動地提供近端資料處理,亦即自SSD讀取資料並在NDP引擎中執行資料處理。資料處理可在主機CPU處開始。主機CPU可被配置成負責:(i)管理伺服器的作業系統;(ii)監測伺服器系統中所有NDP引擎的狀態;(iii)執行一個或多個主機側應用程式;(iv)將NDPE側的應用程式卸載至NDPE層;以及(v)將引數寫入至NDPE側的應用程式,並啟動NDPE層以自對應的SSD讀取資料且處理所述資料。
亦如圖2中所示,所述系統中可存在兩種類型的DRAM,亦即主機DRAM及NDPE DRAM。可將NDPE DRAM視為「全域」記憶體類型,其中主機中央處理單元及NDPE中的處理裝置可存取NDPE DRAM,以得到自主機中央處理單元及資料緩衝器傳遞而來的NDPE側的應用參數。應理解,本文中所使用的用語「全域記憶體」並非是圖2中所示的整個伺服器系統的全域記憶體,此乃因其他NDP引擎不可直接存取特定NDP引擎中的「全域記憶體」。
圖2中所示的伺服器系統100的NDP引擎彼此可不直接連接以將伺服器系統100簡化。如圖2中所示,主機DRAM可用作不同的NDP引擎之間的資料傳送路徑的一部分,因此若兩個NDP引擎之間存在通訊/資料傳送,則可通過主機DRAM將資料路由至對應的NDP引擎。舉例而言,若圖3A中的NDPE#n-2將自NDPE#0接收資料,則資料將沿循自NDPE#0通過主機DRAM而到達NDPE#n-2的路徑301。舉另一實例,若在每一NDPE中進行資料處理,則可將結果資料聚集於主機DRAM中以供在中央處理單元中進一步處理,如圖3B中的路徑302所示。亦應注意,NDP引擎可彼此互連,這可提供複雜的硬體連接佈線,且在一些情形中,若應用需要在不同的NDPE之間頻繁地交換資料或訊息,則可加重系統的通訊負擔。在一個實施例中,NDPE彼此可能夠經由交換機(諸如但不限於PCIe交換機)通信,從而繞過主機記憶體。
圖4A繪示原始資料通過主機側DRAM到達NDPE的典型的實例性資料流400。若需要在例如在FPGA型引擎內加速核心(亦即,應用的一部分),則伺服器系統100的中央處理單元140可首先將資料自SSD讀取至主機側DRAM 141,如圖4A的401處所示。在402處,中央處理單元140然後可將資料寫入至FPGA側的DRAM,並在403處啟動所述核心來處理FPGA中的資料。在404處,可將所得資料讀取至主機側DRAM。
圖4B繪示根據本文中所揭露標的的替代性的實例性資料流410,在替代性的實例性資料流410中原始資料無需通過主機側DRAM到達NDPE。在411處,可使用直接記憶體存取(Direct Memory Access,DMA)型過程將原始資料自SSD直接讀取至CPU/FPGA側的DRAM。在412處,可啟動核心來處理CPU/FPGA中的資料。在413處,可將所得資料讀取至主機側DRAM。因此,在使用圖4B中所示的資料流的情況下,在每一SSD前方的NDPE可以全並行方式工作。
伺服器系統可被配置成NDPE層內包括交換層,以使得能夠靈活地設計伺服器系統。圖5A繪示根據本文中所揭露標的的伺服器系統500的實例性實施例的架構的實例性實施例的方塊圖。伺服器系統500可與圖1A中所示的伺服器系統100包括相同的組件。伺服器系統500與伺服器系統100的不同點是伺服器系統500包括NDPE層106a及交換層106b。NDPE層106a及交換層106b可被適應性地配置成通過適應性地改變NDPE的數目以及NDPE與SSD之間的連接的數目來減輕伺服器系統可能出現的系統不平衡。一種極端情況是,交換層106b可被配置成使得可適應性地連接兩個SSD與兩個NDPE。另一種極端情況是,交換層106b可被配置成使得每一SSD可適應性地連接至所有NDPE。
圖5B繪示交換層106b的實例性實施例的方塊圖,在交換層106b中可使用多工器(multiplexer,Mux)511將每一對SSD適應性地連接至兩個NDPE中的任一者。圖5C繪示交換層106b的實例性實施例的方塊圖,在交換層106b中每一群組的四個SSD可適應性地連接至四個NDPE中的任一者。多工器511提供四個SSD與四個NDPE之間的適應性連接。圖5D繪示交換層106b的實例性實施例的方塊圖,在交換層106b中可使用多工器511將n個SSD適應性地連接至n個NDPE。
若伺服器系統100在中央處理單元140處正面臨著例如頻寬瓶頸,則可選擇性啟用圖5B中所示的多工器511以使用以下技術來緩解所述瓶頸。具有偶數身份(identity,ID)號碼i
的SSD將連接至具有相同IDi
的NDPE,且具有奇數ID號碼j
的SSD連接至具有IDj
-1或j
的NDPE。
參考圖5A及圖5B,可按照以下公式下確定理論上可啟用的NDP引擎的數目n
’:
[公式1]
其中PBW
是中央處理單元與NDP
引擎之間的網狀架構互連的頻寬,NBW
是網路103的頻寬,CPUBW
是中央處理單元140的頻寬,n
是可用NDPE
的整數數目,且NDPBW
是NDP引擎的頻寬(其中所有的NDPE皆具有相同的頻寬)。
應啟用的NDPE的實際數目N
由以下公式給出:
[公式2]
以下表1針對具有八個NDPE(亦即,n
=8)的伺服器系統陳述應啟用的NDPE的實例性數目。
[表1]
圖6A至圖6E中所示的灰色NDPE未被選擇性啟用。圖6A繪示N
=4的實例性伺服器系統500中選擇性啟用的NDPE。圖6B繪示在N
=5的實例性伺服器系統500中選擇性啟用的NDPE。圖6C繪示在N
=6的實例性伺服器系統500中選擇性啟用的NDPE。圖6D繪示在N
=7的實例性伺服器系統500中選擇性啟用的NDPE。圖6E繪示在N
=8的實例性伺服器系統500中選擇性啟用的NDPE。
可使用以下實例性偽碼來確定將選擇性地啟用哪一NDPE且應將哪一SSD切換至啟用的NDPE。
[公式3]
判定應將SSD切換至哪一NDPE:
圖7針對根據本文中所揭露標的具有八個NDPE(亦即,n
=8)的實例性伺服器系統來繪示實例性方法700的流程圖,實例性方法700使用上文的實例性偽碼來確定選擇性地啟用哪些NDPE且將哪些SSD切換至啟用的NDPE。考慮到實例性伺服器系統500的中央處理單元正面臨著瓶頸。過程在701處開始。在702處,確定方程式(1)的參數。然後,可依據方程式(1)確定理論上可啟用的NDP引擎的數目n
’。在703處,確定方程式(2)中的數目N。在704處,可執行上文所述的實例性偽碼。在705處,可將核心部署於將啟用的NDPE中。在706處,伺服器系統500的中央處理單元可讀取結果並可施行任何進一步的處理。在707處,伺服器系統500的中央處理單元在系統不平衡已得以減輕的情況下完善所述結果並將所述結果通過網路發送給使用者。在708處,過程結束。
熟習此項技術者應認識到,可針對各種各樣的應用對本文中所述的創新性概念做出修改及變化。因此,所主張標的的範疇不應受上文所述的具體的示例性教示中的任一者限制,而是由以下申請專利範圍界定。
100、100’、500‧‧‧伺服器系統/系統
102‧‧‧用戶端裝置
103‧‧‧通訊網路/網路
104‧‧‧處理器層
105‧‧‧通訊網狀架構層
106、106’、106a‧‧‧近端資料處理引擎(NDPE)層
106b‧‧‧交換層
107‧‧‧儲存層/大容量儲存層/固態驅動器(SSD)層
107’‧‧‧儲存層/大容量儲存層
140‧‧‧處理器/中央處理單元(CPU)
141‧‧‧系統記憶體/主機側動態隨機存取記憶體(DRAM)
150‧‧‧通訊交換機
201‧‧‧資料處理裝置
202‧‧‧記憶體
203、204‧‧‧介面
301、302‧‧‧路徑
400、410‧‧‧資料流
401、402、403、404、411、412、413‧‧‧箭頭處
511‧‧‧多工器(Mux)
700‧‧‧方法
701、702、703、704、705、706、707、708‧‧‧步驟
在以下章節中,將參考圖中所說明的示例性實施例闡述本文中所揭露標的的態樣,在圖中:
圖1A繪示根據本文中所揭露標的的伺服器系統的架構的第一實例性實施例的方塊圖。
圖1B繪示根據本文中所揭露標的的伺服器系統的架構的第二實例性實施例的方塊圖。
圖2繪示根據本文中所揭露標的的伺服器系統的架構及NDP引擎的方塊圖。
圖3A及圖3B分別繪示根據本文中所揭露標的資料通過具有NDP的伺服器系統時可沿循的實例性路徑。
圖4A繪示原始資料通過主機側動態隨機存取記憶體(dynamic random access memory,DRAM)到達NDP引擎(NDP engine,NDPE)的典型的實例性資料流。
圖4B繪示根據本文中所揭露標的原始資料無需通過主機側DRAM到達NDPE的替代性的實例性資料流。
圖5A繪示根據本文中所揭露標的的伺服器系統的架構的實例性實施例的方塊圖。
圖5B繪示根據本文中所揭露標的的交換層的實例性實施例的方塊圖,在所述交換層中可使用多工器將兩個SSD適應性地連接至兩個NDPE。
圖5C繪示根據本文中所揭露標的的交換層的實例性實施例的方塊圖,在所述交換層中四個SSD可適應性地連接至四個NDPE。
圖5D繪示根據本文中所揭露標的的交換層的實例性實施例的方塊圖,在所述交換層中可使用多工器將n個SSD適應性地連接至n個NDPE。
圖6A繪示根據本文中所揭露標的的N=4的實例性伺服器系統中的選擇性啟用的NDPE。
圖6B繪示根據本文中所揭露標的的N=5的實例性伺服器系統中的選擇性啟用的NDPE。
圖6C繪示根據本文中所揭露標的的N=6的實例性伺服器系統中的選擇性啟用的NDPE。
圖6D繪示根據本文中所揭露標的的N=7的實例性伺服器系統中的選擇性啟用的NDPE。
圖6E繪示根據本文中所揭露標的的N=8的實例性伺服器系統中的選擇性啟用的NDPE。
圖7針對根據本文中所揭露標的具有八個NDPE的實例性伺服器系統來繪示實例性方法的流程圖,所述方法使用實例性偽碼(pseudo code)來確定選擇性啟用了哪些NDPE且將哪些SSD切換至啟用的NDPE。
Claims (20)
- 一種伺服器系統,包括: 第一多個大容量儲存裝置; 至少一個中央處理單元,耦合至所述第一多個所述大容量儲存裝置;以及 至少一個近端資料處理引擎,每一近端資料處理引擎與第二多個所述大容量儲存裝置相關聯,且設置於所述中央處理單元和與所述至少一個近端資料處理引擎相關聯的所述第二多個所述大容量儲存裝置之間,所述第二多個所述大容量儲存裝置的數量小於或等於所述第一多個所述大容量儲存裝置的數量。
- 根據申請專利範圍第1項所述的伺服器系統,其中所述大容量儲存裝置包括至少一個固態驅動器裝置。
- 根據申請專利範圍第2項所述的伺服器系統,更包括網路介面,所述網路介面通過網路將所述伺服器系統通訊耦合至至少一個遠端系統,所述至少一個遠端系統在所述伺服器系統之外;以及 通訊網狀架構,設置於所述中央處理單元與所述至少一個近端資料處理引擎之間。
- 根據申請專利範圍第3項所述的伺服器系統,其中包括所述至少一個近端資料處理引擎的近端資料處理引擎的數目至少部分地基於以下各頻寬中的最小頻寬而定:與所述中央處理單元相關聯的頻寬、與所述網路相關聯的頻寬、與所述通訊網狀架構相關聯的頻寬、以及與所有的近端資料處理引擎相關聯的頻寬除以與單個近端資料處理引擎相關聯的頻寬。
- 根據申請專利範圍第3項所述的伺服器系統,更包括交換層,所述交換層設置於所述至少一個近端資料處理引擎與所述第一多個大容量儲存裝置之間,所述交換層將所述至少一個近端資料處理引擎和與所述至少一個近端資料處理引擎相關聯的所述第二多個所述大容量儲存裝置進行通訊耦合。
- 根據申請專利範圍第5項所述的伺服器系統,其中所述交換層設置於第二近端資料處理引擎與所述第一多個大容量儲存裝置之間,所述交換層將所述第二近端資料處理引擎和與所述第二近端資料處理引擎相關聯的所述第二多個大容量儲存裝置進行通訊耦合。
- 根據申請專利範圍第6項所述的伺服器系統,其中所述交換層包括網路網狀架構。
- 根據申請專利範圍第7項所述的伺服器系統,其中所述網路網狀架構包括周邊組件互連快速網路,且 其中所述至少一個近端資料處理引擎包括處理器型近端資料處理引擎或場可程式化閘陣列型近端資料處理引擎。
- 一種伺服器系統,包括: 網路介面,通過網路將所述伺服器系統通訊耦合至至少一個遠端系統,所述至少一個遠端系統在所述伺服器系統之外; 第一多個固態驅動器裝置; 至少一個中央處理單元,耦合至所述網路介面及所述第一多個固態驅動器裝置;以及 至少一個近端資料處理引擎,每一近端資料處理引擎與第二多個所述固態驅動器裝置相關聯,且設置於所述中央處理單元和與所述至少一個近端資料處理引擎相關聯的所述第二多個所述固態驅動器裝置之間,所述第二多個所述固態驅動器裝置的數量小於或等於所述第一多個所述固態驅動器裝置的數量。
- 根據申請專利範圍第9項所述的伺服器系統,更包括通訊網狀架構,所述通訊網狀架構設置於所述中央處理單元與所述至少一個近端資料處理引擎之間。
- 根據申請專利範圍第10項所述的伺服器系統,其中包括所述至少一個近端資料處理引擎的近端資料處理引擎的數目基於以下各頻寬中的最小頻寬而定:與所述中央處理單元相關聯的頻寬、與所述網路相關聯的頻寬、與所述通訊網狀架構相關聯的頻寬、以及與所有的近端資料處理引擎相關聯的頻寬除以與單個近端資料處理引擎相關聯的頻寬。
- 根據申請專利範圍第10項所述的伺服器系統,更包括交換層,所述交換層設置於所述至少一個近端資料處理引擎與所述第一多個所述固態驅動器裝置之間,所述交換層將所述至少一個近端資料處理引擎和與所述至少一個近端資料處理引擎相關聯的所述第二多個所述固態驅動器裝置進行通訊耦合。
- 根據申請專利範圍第12項所述的伺服器系統,其中所述交換層包括網路網狀架構。
- 根據申請專利範圍第13項所述的伺服器系統,其中所述網路網狀架構包括周邊組件互連快速網路,且 其中至少一個近端資料處理引擎包括處理器型近端資料處理引擎或場可程式化閘陣列型近端資料處理引擎。
- 一種伺服器系統,包括: 第一多個大容量儲存裝置; 至少一個中央處理單元,耦合至所述第一多個所述大容量儲存裝置; 至少一個近端資料處理引擎,每一近端資料處理引擎與第二多個所述大容量儲存裝置相關聯,且設置於所述中央處理單元和與所述至少一個近端資料處理引擎相關聯的所述第二多個所述大容量儲存裝置之間,所述第二多個所述大容量儲存裝置的數量小於或等於所述第一多個所述大容量儲存裝置的數量;以及 交換層,設置於每一近端資料處理引擎與所述第一多個大容量儲存裝置之間,所述交換層將每一近端資料處理引擎和與所述至少一個近端資料處理引擎相關聯的相應的所述第二多個所述大容量儲存裝置進行通訊耦合。
- 根據申請專利範圍第15項所述的伺服器系統,更包括網路介面,所述網路介面通過網路將所述伺服器系統通訊耦合至至少一個遠端系統,所述至少一個遠端系統在所述伺服器系統之外,以及 通訊網狀架構,設置於所述中央處理單元與所述至少一個近端資料處理引擎之間。
- 根據申請專利範圍第16項所述的伺服器系統,其中所述交換層設置於第二近端資料處理引擎與所述第一多個大容量儲存裝置之間,所述交換層將所述第二近端資料處理引擎和與所述第二近端資料處理引擎相關聯的所述第二多個大容量儲存裝置進行通訊耦合。
- 根據申請專利範圍第16項所述的伺服器系統,其中包括所述至少一個近端資料處理引擎的近端資料處理引擎的數目基於以下各頻寬中的最小頻寬而定:與所述中央處理單元相關聯的頻寬、與所述網路相關聯的頻寬、與所述通訊網狀架構相關聯的頻寬、以及與所有的近端資料處理引擎相關聯的頻寬除以與單個近端資料處理引擎相關聯的頻寬。
- 根據申請專利範圍第18項所述的伺服器系統,其中所述交換層是網路網狀架構的一部分。
- 根據申請專利範圍第19項所述的伺服器系統,其中所述網路網狀架構包括周邊組件互連快速網路,且 其中至少一個近端資料處理引擎包括處理器型近端資料處理引擎或場可程式化閘陣列型近端資料處理引擎。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862651707P | 2018-04-02 | 2018-04-02 | |
US62/651,707 | 2018-04-02 | ||
US16/028,281 | 2018-07-05 | ||
US16/028,281 US10884672B2 (en) | 2018-04-02 | 2018-07-05 | NDP-server: a data-centric computing architecture based on storage server in data center |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201942761A true TW201942761A (zh) | 2019-11-01 |
TWI767111B TWI767111B (zh) | 2022-06-11 |
Family
ID=68056143
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW108108272A TWI767111B (zh) | 2018-04-02 | 2019-03-12 | 伺服器系統 |
Country Status (5)
Country | Link |
---|---|
US (3) | US10884672B2 (zh) |
JP (1) | JP7246989B2 (zh) |
KR (1) | KR102407573B1 (zh) |
CN (1) | CN110347626B (zh) |
TW (1) | TWI767111B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6749030B1 (ja) * | 2019-11-08 | 2020-09-02 | 日本テクノロジーソリューション株式会社 | 加工装置及び方法 |
KR20220087297A (ko) * | 2020-12-17 | 2022-06-24 | 삼성전자주식회사 | 처리 코드를 실행하는 스토리지 장치 및 이의 동작 방법 |
KR20220145656A (ko) | 2021-04-22 | 2022-10-31 | 에스케이하이닉스 주식회사 | 호스트 및 이를 포함하는 컴퓨팅 시스템 |
US20230099831A1 (en) * | 2021-09-24 | 2023-03-30 | Samsung Electronics Co., Ltd. | Systems and methods for near-storage processing in solid state drives |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8008081B1 (en) | 2000-09-23 | 2011-08-30 | Demont & Breyer, Llc | Data processing system for providing an efficient market for specialty chemicals |
JP2007148982A (ja) * | 2005-11-30 | 2007-06-14 | Hitachi Ltd | ストレージシステム及びその管理方法 |
JP5453872B2 (ja) | 2009-03-27 | 2014-03-26 | 日本電気株式会社 | ディスクアレイ装置、ディスク制御装置、ディスクアレイ装置における負荷分散方法 |
CN103336745B (zh) * | 2013-07-01 | 2017-02-01 | 无锡北方数据计算股份有限公司 | 一种基于ssd缓存的fc hba及其设计方法 |
WO2015166540A1 (ja) * | 2014-04-28 | 2015-11-05 | 株式会社日立製作所 | ストレージ装置とそのデータ処理方法及びストレージシステム |
CN104125292A (zh) * | 2014-08-06 | 2014-10-29 | 曙光信息产业(北京)有限公司 | 一种数据处理装置、云服务器及其使用方法 |
US20160094619A1 (en) * | 2014-09-26 | 2016-03-31 | Jawad B. Khan | Technologies for accelerating compute intensive operations using solid state drives |
US10447534B1 (en) * | 2015-03-31 | 2019-10-15 | EMC IP Holding Company LLC | Converged infrastructure |
US9575689B2 (en) * | 2015-06-26 | 2017-02-21 | EMC IP Holding Company LLC | Data storage system having segregated control plane and/or segregated data plane architecture |
US10067708B2 (en) | 2015-12-22 | 2018-09-04 | Arm Limited | Memory synchronization filter |
CN105573959B (zh) | 2016-02-03 | 2018-10-19 | 清华大学 | 一种计算存储一体的分布式计算机 |
KR101923661B1 (ko) | 2016-04-04 | 2018-11-29 | 주식회사 맴레이 | 플래시 기반 가속기 및 이를 포함하는 컴퓨팅 디바이스 |
US10082957B2 (en) * | 2016-07-20 | 2018-09-25 | Western Digital Technologies, Inc. | Dual-ported PCI express-based storage cartridge including single-ported storage controllers |
US9965356B2 (en) * | 2016-09-02 | 2018-05-08 | Alibaba Group Holding Limited | Method and system of high-availability PCIE SSD with software-hardware jointly assisted implementation to enhance immunity on multi-cell upset |
CN106933510B (zh) | 2017-02-27 | 2020-01-21 | 华中科技大学 | 一种存储控制器 |
CN107341130B (zh) * | 2017-06-29 | 2020-11-17 | 上海兆芯集成电路有限公司 | 具有近端数据处理引擎的芯片组 |
-
2018
- 2018-07-05 US US16/028,281 patent/US10884672B2/en active Active
- 2018-12-04 KR KR1020180154807A patent/KR102407573B1/ko active IP Right Grant
-
2019
- 2019-03-12 TW TW108108272A patent/TWI767111B/zh active
- 2019-03-26 JP JP2019058271A patent/JP7246989B2/ja active Active
- 2019-03-27 CN CN201910237718.5A patent/CN110347626B/zh active Active
-
2020
- 2020-12-14 US US17/121,753 patent/US11803337B2/en active Active
-
2023
- 2023-10-23 US US18/382,767 patent/US20240045621A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
KR20190115402A (ko) | 2019-10-11 |
CN110347626B (zh) | 2021-10-22 |
US20240045621A1 (en) | 2024-02-08 |
CN110347626A (zh) | 2019-10-18 |
US20190303014A1 (en) | 2019-10-03 |
TWI767111B (zh) | 2022-06-11 |
US20210096747A1 (en) | 2021-04-01 |
JP2019185764A (ja) | 2019-10-24 |
KR102407573B1 (ko) | 2022-06-10 |
US11803337B2 (en) | 2023-10-31 |
US10884672B2 (en) | 2021-01-05 |
JP7246989B2 (ja) | 2023-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI767111B (zh) | 伺服器系統 | |
US11385795B2 (en) | Method and apparatus to enable individual non volatile memory express (NVMe) input/output (IO) queues on differing network addresses of an NVMe controller | |
US11487661B2 (en) | Converged memory device and operation method thereof | |
JP2021190123A (ja) | キャッシュコヒーレントインターコネクトを使用するシステム及び方法 | |
US20150127691A1 (en) | Efficient implementations for mapreduce systems | |
US8868804B2 (en) | Unified I/O adapter | |
JP2014506362A (ja) | 構成可能なポート.タイプのペリフェラル・インターコネクト・エクスプレス/シリアル・アドバンスト・テクノロジー・アタッチメントのホスト・コントローラ・アーキテクチャを容易にするための機構 | |
US9723071B2 (en) | High bandwidth peer-to-peer switched key-value caching | |
US20190094926A1 (en) | Multi-criteria power management scheme for pooled accelerator architectures | |
WO2023124304A1 (zh) | 芯片的缓存系统、数据处理方法、设备、存储介质及芯片 | |
WO2023134735A1 (zh) | 计算设备、数据处理方法、系统及相关设备 | |
KR20230041593A (ko) | 프로그래밍가능한 인터리브 입도를 갖는 cxl 타입-2 디바이스들을 위한 확장가능한 주소 디코딩 체계 | |
TW202221514A (zh) | 用於處理資料的方法及系統、儲存節點、以及用於對資料進行分區的方法 | |
WO2023051282A1 (zh) | 一种嵌入向量预取的方法、装置、系统及相关设备 | |
JP2021521529A (ja) | ネットワークスイッチのキュー | |
EP3959611A1 (en) | Intra-device notational data movement system | |
US20220027294A1 (en) | Storage card and storage device | |
JP2022125786A (ja) | 情報処理装置、情報処理プログラム、及び情報処理方法 | |
US11693590B2 (en) | Non-volatile memory express over fabric (NVMe-oF™) solid-state drive (SSD) enclosure performance optimization using SSD controller memory buffer | |
WO2017084415A1 (zh) | 一种存储器切换方法、装置及计算机存储介质 | |
US11281612B2 (en) | Switch-based inter-device notational data movement system | |
US20240070107A1 (en) | Memory device with embedded deep learning accelerator in multi-client environment | |
US20240070801A1 (en) | Processing-in-memory system with deep learning accelerator for artificial intelligence | |
KR20220012803A (ko) | 스토리지 카드 및 스토리지 장치 | |
JP2024091036A (ja) | 情報処理装置,プログラムおよび制御方法 |