英伟达要“跳到”CPU
2025-11-05 12:22
对于它们除此以皆的在过较宽,日见数万人,花费,密度和耐久度上的提升,SSDs有理由已是意味着另一种CPU复杂性的候选设不下方案。在这篇名里,我们明确提显露了用作GPU来用作本地的或者远故又称的SSD来适配GPU的CPU作为一种更为很优点和非常很强可伸缩性的设不下方案。我们将来得该设不下方案和在此再前最好的解决具体情况设不下方案的效能。
设不下方案:我们明确提显露了一种属于自己的系统该软件叫做BaM(大型减缓器CPU)。BaM的最终目标是来适配GPU的CPUMB,并必要地减小打印器显露访光纤速度快,同时给予很高复杂性的GPU当前一般本土化,使得GPU操作数能关机按均需的,细粒本土化的访存立即,来适配CPU复杂性。在这篇paper里,我们明确提显露并且据下同不下了一些更为为不可或缺点,并且整个BaM的的设不下明确提显露了三个不可或缺的技术开发挑战来必要地支持者这些减缓技术开发的发展的按均需访存立即。
首再,对于按均需的访存立即来真是,传统意义的CPU拓扑的邮件一般本土化方式则以来模拟邮箱变换来量本土化理论上待访存信息的位复置。然而,技术开发的发展稀疏地显露访大型信息结构上但会致使所致地TLB缺失,而且串自为本土化并自为显露访立即但会致使大量的GPU操作数。BaM明确提显露了一种很高模版,很高客运量的软体CPU来对它进自为替代。这个CPU是很持续性实例本土化的,可以让开发者根据他们技术开发的发展的均供给进自为设复置。有了软体CPU,BaM不具体来真是模拟邮箱变换,因此就不但会被显露串自为本土化的重大事件必要影响比如TLB缺失。
其次,基于CPU拓扑的邮件一般本土化用作缺页妥善处理进自为维护,并且运自为在传统意义的CPU上的邮件的系统客户服务有信息倾倒的均供给。以CPU为里心的建模,这里指通过CPU来妥善处理缺页时的信息倾倒,对于OS的缺页妥善处理函数来真是受制于中层的CPU当前级并自为性理应该可自为。为了解决具体情况这个具体情况,BaM给予了一个软件级的库用于在GPUCPU里意味着很高模版的NVMe递交/关机信息流,这使得按均需显露访的GPU操作数在软体CPU没命里的显然仍然能很高客运量地关机访存。这种软件层级的方式则使得软体每次访存的负担较小,并且支持者很高层级的当前级并自为。
第三,为了能避免模拟邮箱变换和缺页妥善处理的很高负担,技术开发的发展开发人员采行了对信息进自为区块并且根据每种量本土化方式则压制信息倾倒的方式则。传统意义邮件的系统客户服务里这样的CPU-GPU该系统造成的很高蒙受逼迫开发者粗分层地倾倒信息。不幸地是,由于对我们最终目标程序的信息显露访排斥于无规律和稀不及的。这些粗分层的信息倾倒致使SSD和CPU/GPU的CPU里很多有无论如何的寄存器,一个反常是I/O拓展。如参考文献里所述的指导工作,I/O拓展增加了更为为不可或缺自然资光的必要光纤速度快例如PCIe链路。
表格1里,对于A100,访存光纤速度快受受限制PCIe Gen4的x16光纤速度快,它是32GB/s,无论如何大约为A100CPU光纤速度快的2%。更为严重影响的访存由于I/O拓展造成了的访存光纤速度快的丢失可以认为是技术开发的发展效能丢失的一个不可或缺信号。在BaM里SSD用作并自为信息流和多个SSD,我们意味着的的系统里GPU可以有限较迟地进自为细分层的I/O立即,来显然用作SSD的的设备并且引人注意地增加I/O拓展地层级。
在我们从未保有的认知里,BaM是第一个减缓器里心的建模,GPU可以分立地定位和关机信息访存立即不管它是储假定CPU或者打印的设备里,不具体来真是CPU的压制。当传统意义的更大而浮夸的路由器体系结构上在软件层级对于打印的设备信息流的意味着显现显露来必要具体情况时,除此以皆信息里心开始转回零最初人的必要建模,并且NiC/DPU进自为的必要的系统性性核对也为减缓器为里心的访存建模,比如BaM,给予了属于自己开放性。
我们从未通过现成的嵌入式子系统份邮件了一个BaM十分相似的系统。选用多种显然相同一般来真是的指导工作增益,多种信息集对BaM十分相似的系统进自为褒贬价,展显露了BaM能与最显露众的解决具体情况设不下方案降到显然相同低水平,或是略比较慢一点,甚至是非常显露色。
总结一下,我们主要做显露了以下这几点开创性:
1.明确提显露了BaM,一个以减缓器为里心的体系结构上,GPU操作数能细分层,按均需访存,不管它是打印在CPU或者其他打印的设备里。
2.容许按均需的,很高客运量的细分层访存立即,通过很高并自为的I/O信息流意味着
3.为开发人员给予很高客运量,很低过较宽的CPU和软体API,来来进行局部并且压制它们技术开发的发展里的信息倾倒。
4.对于开销持续性性的CPUMB可控的减缓器,明确提显露和褒贬量了一种经过概念检验者的的设不下。
我们不下划开光嵌入式和软体冗余的细节,来使任何人都能紧密结合BaM的系统。
故事情节和动机
A.CPU为里心的访存捷径里的软体负担
这个以皆展显露了对于BaM建模故事情节信息的不可或缺褒贬量信息,来使得习者更为好地理解BaM的系统里的更为为不可或缺点。
按均需的访存立即可以分为两种一般来真是a)隐式和有数接的 b)显式和必要的。隐式和有数接的访存捷径在CPU为里心的建模里可以选用适配CPUCPU拓扑的邮件一般本土化到GPU操作数里的方式则意味着。NVIDIA Pascal体系结构上里,GPU涡轮和程式设不下建模容许GPU操作数来隐式地显露访大型的模拟CPU普通人,这些但会以皆原产于主存里,选用了标准本土化模拟CPU一般本土化(UVM)。再前的指导工作展显露了UVM涡轮可以被适配成相连邮件的系统的该软件来显露访打印,当一个链接是一个CPU拓扑的邮件里的一以皆,并且它在GPUCPU和主存里缺失。
这个方法有的主要实用性是所有的访存操作都是简单的访存操作,可以在GPU的CPU光纤速度快上进自为显露访只要页和待显露访的信息打印在GPU的CPU。然而,这个反理应的捷径在模拟邮箱变换和缺页妥善处理时,当待显露访的信息全都GPUCPU里并且它均只能被必要打印留校GPUCPU里时但会造成了软体负担。因此,我们可以碰到对于UVM意味着来真是举例来真是的页光纤客运量但会已是基于模拟邮箱变换和缺页妥善处理的按均需访存立即的上界。
左图1.跨显然相同信息集的 BFS 左图给定技术开发的发展程序的 UVM 链接错误负担
左图1里的每一条都展显露了关机的主存到GPUCPU的信息光纤光纤速度快对于UVM缺页立即在英伟达A100 GPU,PCIe Gen4的系统里执自为BFS左图给定在5个显然相同的信息集上(参见表格4),边本表格在UVM邮箱三维空有数里,子程序在主存里,根据左图1,UVM缺页机制关机的PCIe光纤速度快大约为14.52GBps,它只有测的PCIe Gen4光纤速度快26.3GBps的55.2%。从数据APP的信息来看,在我们的检验里有数的缺页妥善处理速度快降到了大约500K IOP。从表格3里可以看显露,500K IOP只有Samsung 980proSSD的一半显然客运量,并且比Intel Optane SSD的显然客运量不及10%。再则,UVM缺页妥善晶片组的IOP由于几种环境因素被大约束,其里包在括局限为数的可用作自然资光来妥善处理TLB确实以及串自为涡轮器的意味着。在我们的检验里,我们推断显露主CPU上的UVM缺页妥善处理在进自为左图给定效能检验的时候100%执自为了。
由于假定这些大约束,即使我们通过复刻的系统层到UVM涡轮的方式则紧密结合了一个意味着的的系统,并且推论它没附加的负担,对于理论上的UVM意味着来在一个十分的很高速度快来做到对SSD的细分层的显然用作依旧是不可能的。因此,BaM选用了软体CPU和很高日见数万人的软件层级的NVMe信息流来能避免TLB和缺页妥善处理的效能不利因素,并且给予显式和必要的打印显露访方式则。
B.一个具体的I/O拓展的例证
一个以CPU为里心的妥善处理缺页立即的捷径建言开发人员来对信息进自为区块并且编读到CPU的标识符来根据各个量本土化的过渡期来压制信息倾倒。尽管这种以CPU为里心的建模在一些经典的很强最好的原不下划行家,在在和稠密的访存模框的GPU技术开发的发展里有较好的指导工作具体情况,但当它被技术开发的发展到我们的最终目标程序例如信息统不下分析上会时就但会显现显露来具体情况。用于该系统的执自为一段时有数负担和CPU的压制逼迫开发者选用粗分层的信息光纤,它但会愈演愈烈I/O拓展的恶本土化。
把在纽大约显露租车信息集上执自为统不下分析具体情况作为一个例证。推论我们进自为问到:具体情况1:从Williamsburg开始的不及于旅自为距离是多不及?这个具体情况建言显像整个信息集里的pickup\_gid罗列来找合乎从Williamsburg到达的前提的建设项目。然后那些旅行者里的trip\_dist有数值均只能被加上去来激发具体情况的答案。然而,由于对trip\_dist罗列的显露访和pickup\_gid罗列的显露访是分立的,在CPU为里心的建模里,CPU不能尽迟哪个trip\_dist有数值是被建言的。所以,为了弱本土化打印光纤速度快,在此再前最显露众的GPU减缓信息统不下分析的开放性,文献里的RAPIDS,但会从GPU的打印里能用这两罗列里的所有的自为。因为只有901k从Williamburg到达的旅途和因此只有0.05%的第二罗列信息但会被用作。上述具体情况致使RAPIDS在这个具体情况上造成了了6.34倍的I/O拓展。
如果把具体情况改成:具体情况1:从Williamsburg开始的旅自为的不及于总花费是多不及?那么有三罗列但会被显露访到:pickup\_id,trip\_dist和total\_amt。为了这个问到,RAPIDS致使了10.36倍的I/O拓展由于它光纤了两个显然信息分立的罗列,trip\_dist和total\_amt到GPU的CPU里。这个问到可以适配为回答一些非常感兴趣的具体情况通过减小信息分立的量本土化,比如税项(具体情况3),打车费(具体情况4),通自为费(具体情况5)和税费(具体情况6),但是关机这些但会致使CPU为里心的建模里的严重影响的I/O拓展,如左图2里简述,在BaM的这些细分层的,按均需的访存能力能愈演愈烈这些I/O拓展的具体情况。
左图2.用作最再进的 RAPIDS的系统对 GPU 减缓的信息统不下分析技术开发的发展程序里的I/O拓展反常
C.过较宽,日见数万人,信息流厚度和模版性
很高客运量的访存的系统的的设不下都要前提地遵循Little相对论:。T是最终目标地客运量,例如盼望的每秒的访存数,L是不及于过较宽,例如从开始到关机每个访存的时限,Qd是均只能在一段一段时有数内支架最终目标客运量的总和信息流厚度。
如果一个的系统可以可以激发访存立即在不据据下同不下T的不及于速度快下,那么T但会被访存信息里的大以皆更为为不可或缺自然资光不利因素大约束。在我们的BaM十分相似的系统的具体情况里,我们想关机对更为为不可或缺自然资光的举例来真是来进行。PCIe x16第四代相连保有512B和4KB的访存分层。因此再考虑据下同不下的有数的PCIe x16第四代光纤速度快非常不及是26GBps,对于512B显露访里的T有数值是26GHps/512B=51M/sec,4KB的显露访里是26GBps/4KB=6.35M/sec。
L的有数值具体来真是用作的SSD的设备和的网络的过较宽,显露访一块Intel Optane SSD通过x4 PCIe第四代的网络很强11us的不及于过较宽,显露访Samsung 980pro小飞机SSD通过PCIe x4第四代的网络很强324us的不及于过较宽。根据Little相对论,要支持者盼望的51M的每次512B的显露访,对于Optane SSD来真是,的系统均只能收纳一个很强51M/s*11us=561的立即项的信息流(对于每次4KB的方式则来真是是70项)。对于Samsung 980pro SSD,均只能的能支持者显然相同最终目标客运量的Qd是51M*324us=16524(对于4KB来真是是2057)。
注意上述信息流厚度可以通过多个信息流被传播,只要这些信息流被SSD的设备积极地用作。因此,在也就是真是总能,这个的系统都须要有将近有561项并自为立即假定于递交信息流里来支持者最终目标客运量T。很引人注意,它须要有很多倍这个数借此并自为可用作立即里来支架信息流厚度,从而降到T的一段一段时有数内的客运量。
意味着对于技术开发的发展的一个过渡期,我们有X个并自为的可用作显露访立即。意味着这些立即可以被入三队在客运量将近降到T的显然,我们可以盼望为了支架客户服务所有立即的邮寄速度快是邮寄总一段时有数减去邮寄立即X/(L+X/51M)。当X远大于51M乘以L时,被支架的邮寄速度快但会很近51M。对于Intel Optane SSD来真是,技术开发的发展均只能有大约8K的并自为可用作的显露访在每个执自为过渡期里,而商品级的Samsung 980pro SSD 大约均只能256K并自为显露访来紧密结合可支架的显露访速度快在51M,512B的分层(2K和64K并自为显露访,4KB的分层对于Intel Optane和Samsung 980pro SSD来真是)。这意思是,保有有限的并自为可用作的显露访,商品级的SSD可以降到路由器级的SSD的客运量低水平。
因此,一个的系统均只能有将近10个Intel Optane SSD或者多达50个Samsung SSD,所以SSD不是访存的不利因素。更为前提真是,由于所有的SSD在读到时候的客运量都远远很很低习时候的客运量,所以一个很强大量读到立即的技术开发的发展更为难以但会致使SSD造成了效能不利因素。
D.NVMe信息流
NVMe备忘录时的工业级除此以皆的定行家的标准备忘录来关机很高客运量的访存给路由器级和商品级的SSD给予模拟本土化支持者。NVMe备忘录有数支持者64K的并自为递交(SQ)和关机(CQ)信息流,每个的设备都很强64K的所有没。NVMe的设备涡轮在CPU里平均分配了一个CPU池供SSD的设备里的DMA涡轮进自为用作来关机习和读到立即。在传统意义的CPU为里心的建模里这些信息流和CPU假定于的系统CPU里。
一个技术开发的发展程序进自为访存立即但会致使涡轮从I/OCPU池里该立即平均分配一块CPU并且在SQ的前部一个NVMe I/O立即入三队,并给它一个分立的立即标明。
再次该涡轮程序读到入一个属于自己头有数值到指定的SQ的只读到操作数,在NVMe SSD的BAR三维空有数里,举个例证,它激发了该信息流的doorbell。为了提很高经济性,一个涡轮在多次将立即入三队SQ时激发一次doorbell。
对于习立即来真是,SSD的设备压制器通过它的DMA涡轮显露访它的打印介质并且光纤信息到链接好的CPU。对于一个读到立即,SSD的设备压制器通过DMA把信息从它的CPU里搬到它的打印介质里。一旦一个立即被客户服务,SSD压制器就但会在CQ里插入一个所有没。当主压制器验证到CQ里有一个还包在括立即标明的所有没,它但会关机这个立即并且拘禁信息流里的三维空有数和立即的CPU。关机所有没也但会告知涡轮SQ里有多不及所有没被NVMe压制器妥善处理掉下来了。涡轮用作这个信息来拘禁SQ里的三维空有数。为了和再前的进度无线电通信,涡轮再次但会激发CQ信息流的十分相似属于自己CQ牛的doorbell,为了经济性,一个SSD的设备在一次光纤里的多个立即里都可以插入CQ所有没。
因为SSD的设备的过较宽从未被增加通过再进的技术开发例如显然用Optane或者ZNAND打印形式,软体负担变成了整个I/O显露访过较宽的不可或缺以皆。事实上,我们的测信息展显露了对于Intel Optane SSD,软体过较宽多达36.4%的比例。BaM的设不下软体CPU和很高客运量的NVMe信息流就是用来增加或者能避免这些软体负担。
BaM的系统和结构上
BaM的设不下的最终目标是企图解决具体情况GPU的缺乏的CPUMB并且弱本土化必要的访存光纤速度快,同时为减缓器给予很高复杂性的一般本土化,来关机按均需的,细分层的,很高客运量的打印的设备显露访。BaM明确提显露了一种以减缓器为里心的建模,GPU操作数可以在信息打印的位复置必要显露访信息,在CPU或者在皆部打印里,不均只能CPU来压制信息倾倒。为了降到这个借此,BaM在GPU的CPU里给予了NVMe的I/O信息流和CPU并且拓扑UVMe的doorbell操作数到GPU的邮箱三维空有数。由于这样做但会使得GPU操作数去显露访TB层级的NVMe SSD的信息,BaM须要明确提显露三个更为为不可或缺的挑战来给予一个很高效的解决具体情况设不下方案。
1)由于NVMe备忘录和的设备但会造成了不可或缺的要吃,BaM均只能弱本土化GPU的并自为性来保持多个立即在运自为里并且必要地来遏止这些过较宽(参阅III-C以皆)
2)因为NVMe的设备的光纤速度快非常局限并且GPU的CPUMB也必均需,BaM须要为技术开发的发展程序冗余这些自然资光(参阅III-D以皆)
3)因为我们的最终目标是通过已假定的嵌入式来褒贬量BaM,BaM嵌入式和软体须要借助这些现成的子系统的挑战(参阅III-F以皆)
这个以皆研讨了BaM怎么企图解决具体情况这些挑战。
A.BaM的系统简述
左图3里展显露了BaM的系统简述。BaM给予了很高复杂性的程式设不下一般本土化,例如N维数据结构上和键有数值对的储藏方式则,使得开发人员能很难以地将BaM复刻到它们在此再前已经有地GPU技术开发的发展里。一个技术开发的发展程序可以调用BaM API来紧密结合一个从一般本土化地信息结构上到NVMe涡轮上的信息块范围内的拓扑。再次开发人员可以例本土化这些一般本土化通过把拓扑传递给一个该一般本土化信息结构上的一个初始本土化。这个拓扑的元信息从未有限在SSD里找均只能的信息块。
左图3.BaM里GPU操作数的一般来说
每一个GPU操作数用作这种一般本土化来量本土化待显露访的信息块的对齐。再次这个操作数把这个对齐作为键有数值在BaM软体CPU(III-D)里进自为录入,如左图3简述。这个一般本土化也但会有wrap-level 的coalescer来减小显露访的经济性。如果一个显露访立即命里了cache,操作数但会必要显露访GPUCPU里的信息,如果Cache没命里,操作数但会从后故又称打印里调取信息。BaM软体CPU在设复置集里对后故又称打印的光纤速度快冗余选用了两个方式则:(1)通过消灭冗余的后故又称CPU的显露访立即。(2)通过容许软件来对它们的信息进自为细分层的cache驻留压制。
如果一个NVMe SSD正在备份信息,GPU操作数但会转到BaM IO堆叠(参阅III-C)来入三队一个NVMe立即,并且到时NVMe SSD来递交一个响理应关机所有没。BaM IO堆叠的借此是分割和NVMe备忘录的系统性的软体负担通过弱本土化GPU的前所未见的操作数并自为性和关机很低过较宽对多个递交/关机信息流的立即所有没的批妥善处理来总和本土化UVMe备忘录里doorbell操作数最初版本的廉价蒙受,并增加NVMe备忘录里的更为为不可或缺七区。当送达到一个doorbell最初版本立即时,NVMe SSD但会能用的系统性的递交信息流所有没,妥善处理在SSD和GPUCPU里进自为信息光纤的立即。在光纤的就此,NVMe SSD但会在关机信息流里递交一个关机所有没。在关机所有没递交以后,这个操作数但会最初版本对理应键有数值的cache的状况并在再次显露访从GPUCPU里调取的信息。
B.和以CPU为里心的的设不下的来得
当和传统意义的如左图4a里简述的以CPU为里心的建模来得时,BaM有三个主要占优势。首再,在以CPU为里心的建模里,由于CPU管理打印信息的光纤和GPU量本土化,它但会致使在打印和GPUCPU有数的信息拷贝并且多次关机量本土化驱动程序来覆盖一个前所未见的信息集。每个核的关机和开端都但会造成了CPU和GPU有数的该系统负担。由于BaM容许GPU操作数来同时关机量本土化和从打印里能用信息如左图4b简述,GPU不均只能和CPU平常该系统,并且更为多的指导工作可以通过单个GPU核关机。更为前提真是,一些操作数的访存过较宽也可以通过量本土化其他操作数而得到同时,因而提很高了结构上上的效能。第二,因为在以CPU为里心的的设不下里量本土化增益加在GPU上而信息倾倒压制由CPU关机,对于CPU来真是,尽迟哪个以皆的信息在什么时候均只能十分困难,因此它但会致使调取很多不均只能的寄存器。有了BaM,一个GPU操作数只在它均只能的时候能用特定的信息,增加了CPU为里心的建模里备受头疼的I/O拓展负担。第三,在以CPU为里心的建模里,开发人员耗费精力去分割技术开发的发展程序的信息并且分开量本土化特殊任务和信息光纤来增加显露访打印的设备的过较宽。BaM使得开发人员能自然地在大型的信息集上来进行GPU的操作数并自为性来增加访存过较宽。
左图4.传统意义的以 CPU 为里心的量本土化建模与 BaM 量本土化建模的来得如(a)和(b)简述。BaM 使 GPU 操作数只能必要显露访打印,从而意味着细分层的量本土化和 I/O 分开。BaM 的更为为不可或缺子系统的演算视左图如 (c) 简述。
C.I/O堆叠
BaM的I/O堆叠显露于两个借此,第一,它使得GPU操作数用作NVMe信息流和NVMe SSD进自为无线电通信。第二,它紧密结合了很高日见数万人的信息流,来进行了GPU强大的并自为性来借助NVMe软体堆叠的挑战。在这里,我们描述一下BaM的I/O堆叠时如何降到这些最终目标的。
1)投入使用必要的从GPU操作数显露访NVMe的机制
为了关机GPU操作数来必要地显露访NVMe SSD里的信息,我们均只能:1)从CPUCPU里漂移NVMe信息流和I/OCPU到GPUCPU里2)在NVMe SSD的BAR三维空有数里关机GPU操作数来读到信息流的doorbell操作数。为了降到这个借此,我们紧密结合了一个自定行家的Linux涡轮,它在的系统里对于每一块NVMe SSD但会始创一个符号的设备。用作BaM API的技术开发的发展程序可以针上这个符号的设备来用作他们想用作的SSD。
在自定行家的Linux的设备涡轮里,BaM用作了GPUDirect的RDMA属性来平均分配和管理GPUCPU里的NVMe信息流和I/OCPU。BaM用作nvidia\_p2p\_get\_pages 驱动程序API来通常NVMe信息流里的页和GPUCPU里未及平均分配的I/OCPU,再次拓扑这些页作为DMA立即来自于另一个PCIe的设备,显然相同NVMe SSD,用作nvidia\_p2p\_map\_pages驱动程序API,它使得SSD能关机对GPUCPU的对等信息习读到。
我们用作了异步的GPUDirect来拓扑NVMe SSD的doorbell到CUDA邮箱三维空有数,所以GPU操作数可以按均需地激发doorbell。这但会建言SSD的BAR三维空有数首再拓扑到技术开发的发展的邮箱三维空有数,再次BAR三维空有数但会被拓扑到CUDA的邮箱三维空有数用作保有cudaHostRegisterIoMemory flag的cudaHostRegister API。用作cudaHostGetDevicePointer,技术开发的发展能借助模拟邮箱,GPU操作数可以用作它来显露访NVMe doorbell操作数从而激发doorbell。
2)很高客运量的I/O信息流
既然GPU操作数可以必要和NVMe的设备无线电通信,我们均只能冗余数千的GPU操作数的该系统,当它们用作共享信息流时。如II-D里描述的,NVMe备忘录建言涡轮来读到SSD的BAR三维空有数里的doorbell操作数有数值。由于这些doorbell操作数是只读到的,当一个操作数激发doorbell,也就是入三队一个I/O立即,他须要情况下没其他的操作数正在读到显然相同的操作数并且它在读到的有数值必要的,和再前读到的其他有数值相对,它是一个全属于自己有数值。一个不明朗的解决具体情况设不下方案但会是在入三队一个立即到递交信息流和激发doorbell时上针,然而,对于GPU里数以千不下的并自为操作数来真是,这样的的设不下设不下方案但会致使严重影响的过较宽,因为所有的I/O立即都须要串自为本土化。
比如真是地,BaM用作了细分层的CPU该系统来容许多个操作数来并自为的入三队I/O立即并且无论如何转到一个临界七区来激发doorbell。为了降到这个借此,我们对于GPUCPU里的每一个递交信息流维护了前面的信息流:1)信息流牛的本地拷贝,2)信息流头的本地拷贝,3)原子关键字定时,4)turn\_counter数据结构上,一个和信息流由显然相同尺寸的整容数据结构上,5)一个mark位线性,总个位和信息流尺寸显然相同。当一个操作数均只能一个入三队立即时,它首再原子地减小关键字定时,离开的关键字有数值减去信息流的个数的商来关联一个信息流里的entry,而舍入turn亦然格它的位复置。操作数用作它的entry来在turn\_counter数据结构上里进自为录入,并且在这个位复置里进自为不下数直到它的不下数有数值和操作数的turn有数值显然相同。当它的不下数有数值降到操作数的turn有数值时,操作数可以复制它的NVMe立即到它关联的信息流里的位复置。在复制以后,这个操作数但会设复置这个位复置的mark标明位,这个操作数再次但会较迟地重登这个位作为比特线性里理论上的前部。如果它是显露乎意料的,它但会转到临界七区来移显露前部并且它但会重复地去顺序地重登比特线性里的比特,直到它命里一个没设复置的比特或者信息流已满。在这个时候,操作数想到了属于自己头有数值并且可以用它来进自为doorbell。这个操作数再次但会最初版本GPU CPU里的前部的备份,再次进入临界七区。
如果操作数没有人转到临界七区,它但会促使为了让想到它在mark比特线性里的位被重登。这个方法有的主要实用性是多个操作数可以找它们在信息流里的位复置,并且把它们的立即读到到的系统性的信息流里而不去立即也就是真是的针,事实上,大以皆要入三队一个立即到递交信息流的操作数都不曾转到临界七区,因为一个要转到临界七区的单当前可以尽可能地移显露前部。
在一个操作数的立即递交以后,这个操作数可以对关机信息流进自为无针轮询,来找对于已递交立即的关机项。这个方法有的主要实用性是很多操作数都能在信息流里找它们的位复置并且在不借助任何针的显然把他们的立即读到到他们的系统性的信息流所有没里。当它找这个关机所有没,它须要标明这个关机所有没从未被NVMe压制器再前的无线电通信流程所商品。移显露关机信息流的牛并且用作属于自己牛部激发doorbell立即也可以通过和操作数移显露递交信息流的牛显然相同的方式则关机。操作数争相地去重登理论上牛的标明并且转到临界七区的操作数重复地重登标明想到它不能做为止。
然而,在操作数能进入关机信息流地临界七区再前,它须要也最初版本递交信息流的牛部来拘禁三维空有数尽可能下一轮立即能入三队。每个关机信息流的所有没都有一个URL,他使得NVMe压制器和涡轮无线电通信告知它这个位复置可以移显露递交信息流的牛部。操作数从它可以重复置标明的就此一个关机信息流所有没里习取此URL。然后它从理论上递交信息流牛开始迭代,直到关机所列里指定的牛有数值,将每个位复置的 turn\_counter 有数值加一。操作数再次通过最初版本在GPUCPU里的本地关机信息流牛的备份来最初版本递交信息流牛并且进入临界七区。如果一个操作数注意到递交信息流牛从未移显露过它的所有没,它不但会再转到临界七区。
D.BaM软体CPU
BaM 软体CPU用以容许冗余用作局限的GPUCPU和GPU皆光纤速度快。传统意义的驱动程序种系统的CPU管理(平均分配和译文)的须要支持者多种多样的,已停产的技术开发的发展/嵌入式的均供给。这样但会致使他们还包在括了大量的临界七区,大约束了多操作数意味着的经济性。BaM选用在每个技术开发的发展未及设未及平均分配所有的软体均只能的模拟和物理CPU的方法有来企图解决具体情况这个不利因素。这个方法有容许BaM软体CPU管理来增加临界七区,尽在插入或者返还一个CPU自为的流程里去立即针。继而,BaMCPU支持者更为多的并自为显露访,特别是信息在GPUCPU里的时候。
当一个操作数通过一个x来询问CPU的时候,它但会必要地核对的系统性CPU自为地原子状况。如果它是必要的,操作数但会减小该CPU自为的指称技术开发。如果被显露访的CPU自为全都CPU种,操作数但会针住CPU自为,并且找一个非法的自为腾显露来,然后从后故又称CPU里调取CPU自为。当立即关机以后,筹划立即的操作数但会通过把它的状况复置为合法和减小它的指称不下数的方法有来解针CPU自为。这样上针的方式则防止了对同一很高速CPU自为的后故又称CPU的多个立即,来进行信息里的三维空有数局部并有数限度地增加对后故又称CPU的立即为数。当一个操作数结束用作某一个CPU自为时,它的指称不下数但会被增加。
BaMCPU用作了一个时钟替换方法。这个CPU有一个简而言之定时,当一个操作数均只能找一个CPU向下时它但会减小。这个定时的离开有数值告诉操作数哪一个CPU向下是为了让要用作的。如果被选里的CPU向下在此再前从未被拓扑到一个由非0指称有数值的CPU自为,操作数但会继续并且再次减小简而言之定时来为了让替换下一个CPU向下。当操作数推断显露一个看做一个CPU自为的CPU向下保有非0的指称不下数有数值,操作数但会为了让通过将CPU自为的状况设复置为临时状况来回收它。如果显露乎意料了,操作数但会标明这个CPU自为拒绝接受并且偏离CPU向下到操作数想要带到的CPU自为的拓扑。否则,它但会再次减小定时并且为了让用作下一个CPU向下。
Warp 拆分:虽然BaM的软体CPU总和本土化了到后故又称CPU的立即为数,但它减小了每次显露访CPU自为时的管理负担。同一个warp里的操作数平常总括,众所周知是当近十年操作数为了让显露访CPU里的近十年寄存器时。为了借助这个,BaM的CPU用作wrap级的既有在软体层次意味着了wrap拆分。当操作数去显露访cache时,\_\_match\_any\_sync wrap既有被用来来该系统其他在wrap里的操作数,并且一个吞没被量本土化显露来使得每个操作数都想到其它某个wrap里的操作数在显露访显然相同的x。在该组里,操作数尽迟一个核心人物,并且只有核心人物可以操纵被立即的CPU自为的状况。这组里的操作数用作\_\_shfl\_sync既有进自为该系统,并且核心人物将GPUCPU里被立即的x的邮箱广播给这个组。当信息从未在GPUCPU里时,这个拆分对于增加显露访负担极度必要,因为那是每次显露访减小的负担最引人注意的时候。
E.BaM一般本土化和软体API
本表格1.很强 BamArray 一般本土化的 GPU 驱动程序下例
BaM软体堆叠给开发人员给予了一个基于数据结构上的很高复杂性API(BamArray),由用作属于自己程式设不下语言定行家的该软件组衍生物(比如C++,Python或者Rush)。因为GPU驱动程序操作显然相同的数据结构上,BaM 的一般本土化标准本土化了开发人员纤调驱动程序以便对整个信息集进自为操作的指导工作,如本表格1简述。
相对之下,以 CPU 为里心的建模均只能将完整的、不可或缺的技术开发的发展程序重读到,以冗余地将量本土化和信息光纤区块来适理应GPU 局限的CPU。
BamArray 的绑定下标codice_对开发人员伪装了BaM的所有不确定性。codice_通过必均需一个检索 BaM CPU并在没命里时发显露 I/O 立即的领导操作数,使显露访操作数只能拆分它们的显露访。当立即关机,领导操作数但会和其他在同个wrap里的操作数倾听CPU自为的指称。每个操作数用作这个指称来离开合适的一般来真是为T原素到调用函数。
Bam的子程序啊均只能平均分配一些内部的信息结构上,他们但会在技术开发的发展程序的一般来说里重复用作。如果没自定行家,子程序但会隐式地在一个库的初始本土化里牵涉到。否则,技术开发的发展程序均只能通过BaM子程序调用里的模框实例来专业本土化CPU,一个C++里的标准例证。我们也给予了BaMArray的四种CPU意味着方式则(1)SSD和BaMCPU(下例有数值)(2)通常的CPUCPU和BaMCPU(3)通常的CPU(4)GPUCPU。然而,在大以皆具体情况里,专业本土化和纤调不是恰当须要的,就像我们再次再IV以皆里参考的有数BaM的下例实例用作的具体情况。
F.BaM十分相似的系统的的设不下
用作信息里心级 4U 路由器里可用的 PCIe 插向下的 BaM 的设不下面对着几个挑战。这些电脑程式里可以用作的PCIe向下是悠闲地。举个例证,例如,Supermicro AS-4124 的系统每个socket有五个 PCIe Gen4 ×16 插向下,如果一个GPU进占了一个插向下,它啊在不适用范围内socket有数的的网络子系统的显然具体情况下显露访4x16的PCIe的设备。前提真是,由于以前的多核CPU的chiplet的设不下,即使每个socket里的5个PCIe可以彼此之间显露访,他们也须要穿过CPU内部的的网络子系统。
穿过这些显然相同的的网络子系统进自为显露访但会致使严重影响的效能损失因为每个的网络里都假定包在的变换,减小了过较宽并大约束了客运量。然而,如我们再II-C里研讨的,BaM 嵌入式理应支持者适配到大量 NVMe 的设备,以给予使 ×16 PCIe Gen4 GPU 光纤速度快饱和状态所均需的客运量,而无均需太多负担。
表格2.BaM十分相似的系统的国际标准
为了解决具体情况这个具体情况,我们为BaM体系结构上紧密结合了录音机自定行家的BaM十分相似电脑程式,用作了如左图5里简述的大量已经有的子系统。表格2里展显露了用作在十分相似的系统里主要子系统的国际标准。BaM 十分相似用作很强个性本土化PCIe拓扑的PCIe适配笔记本电脑来适配SSD的为数。PCI因特网支持者很低过较宽和很高客运量的PCIe的设备之有数的对等显露访。适配笔记本电脑有两个显然相同的进去,在此再前都分立相连到ROM。每个进去支持者8个x16 PCI而插向下(如左图5a里简述),我们在每个进去里为一个NVIDIA A100 GPU用作一个x16插向下,并且其余插向下备有显然相同一般来真是的SSD。在此再前,每个进去具体情况下支持者 7 个U.2(Optane或Z-NAND)SSD,因为U.2形状空置了大量三维空有数。由于PCIe因特网支持者PCIe分岔,一个PCIe多SSD转接卡支持者每个进去据据下同不下16个M.2 NANDSSDSSD。
左图5.用作现成子系统意味着的BaM十分相似
表格3.显然相同一般来真是 SSD 与 DRAM DIMM 的来得
SSD 技术开发的折里:表格III参阅了对三种一般来真是的现成 SSD的BaM的系统的的设不下、开销和经济性有显着必要影响的量本土化。RD IOPS (512B, 4KB) 和 WR IOPS (512B, 4KB) 罗列分别揭示了在512B 和4K分层下测的每种SSD的随机习读到客运量。$/GB 罗列揭示了每种 SSD 一般来真是的每 GB 开销,基于为紧密结合的系统的每个的设备、适配笔记本电脑和转接卡理论上的理论上报价。Latency 罗列揭示测的不及于的设备过较宽(以 µs 为单位)。对 SSD 一般来真是的这些量本土化进自为来得表格明,商品级 NAND SSD SSD 价格便宜,很强更为具可玩性的属性,而很低过较宽涡轮器(如 Intel Optane SSD 和 Samsung Z- NAND更为廉价,很强更为理想的属性。例如,对于用作 BaM 的读到入密集型技术开发的发展程序,Intel Optane涡轮器给予最佳的读到入 IOP 和耐久性。
不再考虑中层 SSD 技术开发,如表格 III 简述,BaM和DRAM-only解决具体情况设不下方案再比在每GB开销总体有4.4-21.8倍的占优势,即使在用作适配笔记本电脑和转接框的显然。此皆,这一占优势随着每台的设备减小的额皆MB而增较宽,这使得 BaM 在SSDMB和技术开发的发展程序信息个数的减小的显然很强很持续性可兼容性。
褒贬 下同
这个以皆进自为了对BaM十分相似软嵌入式的系统的褒贬量并且展显露了:
BaM 可以变换成有限的 I/O 立即以使中层打印的系统饱和状态(参阅IV-A)。 即使有数一个SSD,BaM的效能也可以降到活超越最显露众的解决具体情况设不下方案(参阅IV-B和IV-C)。 BaM 的设不下与所用作的 SSD 打印介质也就是真是,可意味着特定于技术开发的发展的经济很高效的解决具体情况设不下方案。 BaM 显着减缓了信息统不下分析指导工作增益的I/O拓展和CPU压制负担(参阅IV-C)。 BaM 效能随着 SSD 的填充而适配。综上,我们展显露了和最显露众的解决具体情况设不下方案相对,十分相似4个Optane SSD的BaM在BFS和CC左图统不下分析信息增益上降到了不及于0.92倍和1.72倍的减缓效能,并且单个Optane SSD在信息统不下分析增益上降到了4.9倍的减缓效能。在显然相同的打印形式上观察到了和SSD显然相同的效能。
A.用作纤依此测的BaM的值得注意客运量
设复置:我们首再褒贬量了BaM在用作Intel Optane SSD的衍生物随机显露访纤依此上可意味着的值得注意客运量。我们把整个SSD的MB拓扑到III里描述的GPU的邮箱三维空有数。我们平均分配所有的可用的SSD的SQ/CQ信息流对到GPU的CPU里,信息流厚度为1024。我们再次关机一个CUDA驱动程序,它的每个操作数都从SSD里立即一个分立的512寄存器的块。每个操作数递交一个NVMe立即到一个指定的信息流里。信息流以循环方式则储备GPU操作数用作。然后,我们偏离拓扑到单个 NVIDIA A100 GPU 的操作数和 SSD 的为数。对于多个 SSD,立即以循环方式则前提原产在 SSD 之有数。我们将每秒 I/O 操作 (IOP) 指标为一个量本土化,该量本土化定行家为GPU递交的立即和驱动程序执自为一段时有数。
左图6.在 Intel Optane P5800X SSD 上用作 BaM 进自为 512B 随机习读到依此适配。BaM 的 I/O 堆堆叠可以降到每个 SSD 的瞬时 IOP,并针对随机习取和读到入显露访进自为差分适配
结果:左图 6 揭示了 512B 随机习读到显露访依此的测 IOP,BaM的每个SSD可以降到IOPs的瞬时并且可以根据附加的SSD差分减小,对于习和读到都适用范围内。用作单个Optane SSD,BaM无论如何均只能据据下同不下16K-64K的GPU操作数来降到近瞬时的IOP。用作7个Optane SSD,BaM能降到35M随机的习IOP和7.4M的随机读到IOP,是Intel Optane SSD的512B显露访分层可降到的有数瞬时。下半年检验里SSD的有数为数在此再前受受限制适配笔记本电脑的进去MB。一旦我们关机进去级联的开发,可以进自为额皆的下半年。相似的效能和兼容性可以在Samsung SSD里碰到,并且也可以用作4KB的显露访个数,但是受限制份量并没在此处参阅。这些结果检验者了 BaM 的基础体系结构上软体可以匹配中层打印的系统的瞬时效能。我们下一步但会用作技术开发的发展程序依此来对BaM进自为褒贬量。
B.左图统不下分析里的效能获利
表格4.左图统不下分析信息集
设复置:首再,我们褒贬量BaM在左图统不下分析技术开发的发展里的效能获利。我们用作表格4参阅的左图来进自为褒贬量。K,U,F,M是SuiteSparse 矩阵闭包在里四个有数的左图,而 UK 和 Sk 取自 LAW。这些左图信息集涵盖了显然相同的层次,包在括互动网络、网络爬虫、生物医学,甚至衍生物左图。
BaM的一个最终目标就是给予比DRAM-only左图统不下分析解决具体情况设不下方案更为有竞争力的效能。为此,最终目标低水平线的系统 T 容许 GPU 操作数在左图象统不下分析执自为期有数必要对打印在ROMCPU里的信息执自为拆分细分层显露访。由于输入左图都可以填入ROMCPU里,因此我们可以必要来得 BaM 和 T 之有数的效能。
我们在最终目标的系统和紧密结合于表格3里参阅的显然相同SSD上的BaM分别运自为两种左图统不下分析方法,体悟必均需查询 (BFS) 和相连子系统 (CC)。在 BFS 里,每个 GPU warp 被平均分配给理论上迭代里正在显露访的端口,其里 warp 里的所有操作数密切合作给定端口的陌生人本表格。CC 意味着遵循与 BFS 显然相同的平均分配,只是技术开发的发展程序首再核对左图里的所有端口,因此呈现显露比 BFS 更为出现异常的显露访种系统。对于 BFS,我们统不下了运自为将近 32 个很强两个以上陌生人的光端口后的不及于运自为一段时有数。
我们不对 UK 和 Sk 信息集执自为 CC,因为 CC 仅在无向左图上运自为。就此,我们将 BaM 软体CPU个数通常为 8GB,CPU自为个数为 4KB。
左图7.用作单个Intel Optane SSD 的 BaM 和最终目标的系统(T)的左图象统不下分析效能。不及于而言,BaM 的故又称到故又称一段时有数比最终目标迟 1.1 倍(BFS)和 1.29 倍(CC)。
一个SSD的结构上上效能:左图7个展显露了最终目标的系统(T)和用作单个Intel Optane SSD的BaM(B\_I),Samsaung DC 1735(B\_S)和商品级的Samsung grade 980 Pro SSD(B\_SC)。想到一下,最终目标的系统 T 受惠于ROM和 GPU 之有数的完整 ×16 Gen4 PCIe 光纤速度快,而 BaM 仅受限制单个 SSD 的 ×4 Gen4 PCIe 该软件。
然而,在所有左图和方法里,在不再考虑 T 的系统的初始邮件调用一段时有数的显然,选用摩托罗拉傲腾 SSD (B\_I) 的 BaM 的效能从略迟到比最终目标 T 的系统比较慢 4.4 倍的反常都假定。这是因为由于只有一个SSD,BaM的效能被SSD的x4 Gen4 PCIe该软件的客运量大约束。如果我们再考虑T的系统的初始邮件调用一段时有数,BaM不及于比T的系统在BFS和CC这两个方法上分别要迟1.1和1.29倍。在这两种显然,GPU 量本土化驱动程序通过 BaM 1D 数据结构上一般本土化执自为按均需左图的边信息显露访。这容许 BaM 将来自 SSD 的某些操作数的信息光纤与其他操作数的量本土化分开。比如真是,最终目标的系统 T 均只能等到邮件调用到CPU里才能将量本土化特殊任务卸载到 GPU。T的系统的监管者的主存光纤速度快不能借助调用初始邮件的过较宽。这但会致使BaM拿到了更为很高的故又称对故又称过较宽。
Samsung DC 1735和Intel Optane SSD对于所有的增益几乎尤其显然相同的最初能。因为这两个涡轮器的4KB随机习IOP瞬时都被PCIe x4 该软件大约束了。然而对于CC指导工作增益里的两个信息集(U和M),Sansung DC 1735的效能来得差,并且我们初始的统不下分析宣称了这是因为SSD压制器在妥善处理CC用作出现异常随机显露访模框显露访这两个左图时的较宽前部过较宽。将重点建设项目转回到开销商业价值上,BaM 十分相似用作一个三星 980 Pro SSD,与最终目标的系统(包在括邮件调用一段时有数)相对,BFS和CC指导工作增益不及于比较慢1.97倍和1.85倍。这些对于商品级 SSD 来真是是非常令人鼓舞的结果,因为它们给予了迄今为止所有 SSD 技术开发里的最佳价有数值。
左图8.CPU自为个数对用作一块Intel Optane SSD 进自为左图象统不下分析的 BaM 效能的必要影响
CPU自为个数的层次:我们为了让纤调 BaM 软体CPU的CPU自为个数从 512B 到 8KB,以了解显露访分层对左图象统不下分析指导工作增益的必要影响。想到一下,BaM CPU自为个数尽迟了对打印的显露访分层。由于其很高IOP数万人因此用作单个 Intel Optane SSD 关机了褒贬量(参阅表格 III)。从左图8里可以碰到,由于我们把CPU自为个数从4KB增加到512B,BFS和CC指导工作增益分别比较慢了1.41倍和2.31倍。这是因为左图指导工作增益在其紧靠本表格里表格现显露三维空有数局部,并且可以从更为大的显露访里受惠。此皆,我们的统不下分析信息揭示,对于512B显露访分层,BFS 和 CC 技术开发的发展程序可以降到 4.76M IOPs 和 4.97M IOPs。对于4KB显露访分层,分别可以降到 1.37M IOPs 和 1.52M IOPs。这意味着 512B 和 4KB 打印显露访的光纤速度快大约为 2.5GBps 和 6GBps,近一个 Optane SSD 的瞬时可意味着光纤速度快。
显现显露来了三个主要推断显露:
在 BaM 里运自为的指导工作增益可以变换成有限的 I/O 立即以使涡轮器的客运量饱和状态. 4K 的分层在某些左图里来进行了大型紧靠本表格的三维空有数局部,并且为较小的紧靠本表格光纤的额皆寄存器不但会减缓效能,因为 PCIe 光纤速度快没过饱和状态。 BaM 的细分层显露访增加了 I/O 放大,从而提很高了必要光纤速度快。否则,在将CPU自为个数从 4KB 增加到 512B 时,技术开发的发展程序的速度快但会减缓 8 倍。将CPU自为个数从 4KB 减小到 8KB 几乎不但会必要影响结构上上效能。这是因为在 4KB 时,技术开发的发展程序近 SSD PCIe 光纤速度快大约束,并且前提减小CPU自为个数不但会提很高光纤速度快。在Samsung的设备里观察到显然相同的效能改变和趋势,受限制份量不研讨。
左图9.适配Optane SSD的为数
适配到多个SSD:我们适配 SSD 的为数并跨 SSD 复制信息以减小 BaM 的聚合光纤速度快。左图9展显露了很强4KBCPU自为的Optane SSD的适配结果。用作 BaM 十分相似的左图象统不下分析指导工作增益可以最好地适配到两个 Optane SSD,但若为信息据下同不下两个,获利开始递减。如果用作据据下同不下两个SSD,用作BaM十分相似的左图统不下分析技术开发的发展就不能以有限的速度快激发I/O立即来必要地满足附加的设备。即使技术开发的发展程序很强有限的 I/O 并自为度,理论上的 GPU 驱动程序意味着和信息布局都针对来进行局部和增加 I/O 立即的为数进自为了冗余,而不是举例来真是变换成 I/O 立即的速度快以伪装较宽过较宽。这些相互冲突的最终目标均只能通过显像每个操作数的指导工作平均分配或减小每个操作数的指导支出来探索的设不下三维空有数,以便 GPU 操作数可以以更为很高的速度快变换成 I/O 立即以充分来进行据据下同不下 2 个 Optane SSD。此皆,BaM 软体堆叠里的一些冗余,例如自动偏离 I/O 立即的个数和未及取,尚没意味着。我们将在今后解决具体情况这些具体情况。在此再前,用作四个Intel Optane SSD的的系统和再考虑邮件调用一段时有数的最终目标的系统T相对从未可以在BFS和CC技术开发的发展上给予不及于0.92和1.72倍的减缓比。BaM在所有信息集上对于BFS和CC增益降到了不及于0.72 和1.51倍的减缓比。三星 SSD 也显现显露来了显然相同的趋势,但三星 980 Pro SSD 可以最好地适配到 4-10 个 SSD,然后再适配SSD才但会在左图象指导工作增益上显现显露来获利递减。
C.信息统不下分析里的I/O拓展获利
除了左图象统不下分析之皆,我们还褒贬量了 BaM 十分相似对大公司信息统不下分析指导工作增益的效能占优势。这些最初兴的信息统不下分析被广泛用于解释、推断显露或中选随一段时有数推移或从非非标准信息湖利用的信息里的有内涵的种系统。信息统不下分析检验用以真是明 BaM 的设不下在妥善处理大型非标准信息集时增加 I/O 拓展和软体负担的好处。
设复置:II-B里研讨了在NYC显露租车信息集上的I/O拓展具体情况。该信息集由 200GB 编码信息组衍生物,以冗余自为罗列 (ORC) PDF组织起来为 1.7B 自为和 49 罗列。我们用作了II-B以皆里描述的6个信息的系统性的问到来和最显露众的GPU减缓信息统不下分析开放性RAPIDS进自为来得。低水平线和BaM都用作一块Intel Optane P5800X SSD。我们用作两种配复置来褒贬量低水平线:a)SSD 里所有信息的冷热具体情况和 b)信息已被提取到 Linux CPU 链接CPU的变暖具体情况。
左图10.用作一个 Optane SSD的前提下,在NYC显露租车信息集的信息统不下分析检索里BaM 和 RAPIDS 的效能。BaM 比以 CPU 为里心的 RAPIDS 开放性迟 4.9 倍。
结果:在大多数显然,选用单个摩托罗拉傲腾 SSD 的 BaM 在冷热配复置和变暖配复置里均比不上 RAPIDS 效能,如左图 10 简述。对于 Q1,变暖配复置的低水平线比 BaM 略有占优势,因为它可以来进行整个 CPU DRAM 光纤速度快和 PCIe ×16 Gen4 光纤速度快在ROM和 GPU 之有数光纤信息,而 BaM 则受到 SSD 光纤速度快的大约束。随着信息的系统性量本土化的填充,BaM 效能提很高,如左图 10 简述。效能提很高的原因是 BaM 由于按均需信息提取而增加了 I/O 放大,但低水平线须要将整个罗列光纤到 GPU CPU。如左图 2 简述,通过额皆的信息的系统性量本土化,低水平线(包在括变暖和冷热)但会造成了更为多的I/O拓展和CPU上用于查找和漂移信息以及管理GPUCPU的软体负担。但是,BaM 只能按均需显露访信息以及分开量本土化、CPU管理和许多 I/O 立即,这使得它妥善处理多个信息的系统性罗列的经济性几乎与妥善处理单个信息的系统性罗列一样很高。
的系统性指导工作
A.冗余的以CPU为里心的建模
大多数 GPU 程式设不下建模和技术开发的发展程序的的设不下都推论指导工作信息集简便 GPU CPU。如果没,则用作平铺等特定于技术开发的发展程序的技术开发来妥善处理 GPU 上的大信息。
SPIN和 NVME建言用作 GPUDirect RDMA 从SSD到GPU 投入使用对等 (P2P) 的必要CPU显露访,这样就可以全都信息通路里用作CPU。SPIN 将 P2P 复刻到标准 OS 邮件堆堆叠里,并为顺序习取投入使用链接CPU和未及习设不下方案。GAIA前提将 SPIN 的链接CPU从 CPU 适配到 GPU CPU。Gullfoss给予了一个很低级该软件,并能很高效地设复置和用作 GPUDirect API。Hippogriffdb为 OLAP 信息库的系统给予 P2P 信息光纤前提功能。GPUDirect Storage是用作 GPUDirect RDMA 技术开发在 NVIDIA CUDA 软体堆叠里将信息路径从 CPU 迁移到 GPU 的除此以皆电子产品。在 RADEON-SSG 电子产品线里可以碰到 AMD 的显然相同坚持不懈。所有这些指导工作仍然选用以 CPU 为里心的建模,其里 CPU 负责信息光纤压制。BaM 给予从 GPU 对打印的显式和必要细分层显露访,容许 GPU 里的任何操作数关机、习取和读到入信息到 SSD。
B.以减缓器为里心的建模的再前为了让
ActivePointers、GPUfs、GPUNet 和 Syscalls for GPU再前曾为了让投入使用以减缓器为里心的信息选曲建模。GPUfs和Syscalls for GPU首再容许GPU从ROMCPU立即邮件信息。ActivePointers在GPUfs之上填充了显然相同一般本土化的CPU拓扑,以容许GPU操作数像数据结构上一样显露访邮件信息。Dragon建言将打印显露访纳入UVM链接错误机制。然而,所有这些方法有都具体来真是并自为性引人注意较很低的CPU来妥善处理大规模并自为GPU的信息均供给。因此,如II以皆里简述,这些方法有再一致使自然资光来进行缺乏和结构上上效能不佳。此皆,所有这些指导工作都没来进行GPUDirect RDMA前提功能,而是具体来真是再将信息光纤到CPUCPU,然后再光纤到GPUCPU的指导工作方式则。
C.嵌入式适配
通过必要用SSD替换简而言之CPU或将其与GPUCPU的系统紧密复刻来适配对GPU的非易失性CPU的支持者设不下方案从未被明确提显露。DCS建言借助专用嵌入式单元(如 FPGA)意味着打印、网络和减缓器之有数的必要显露访,为粗分层信息光纤给予所均需的变换。除此以皆有人明确提显露在GPU内投入使用持续性本土化。我们默许这些坚持不懈,并前提检验者了为最初兴指导工作增益投入使用大CPUMB的前提。更为不可或缺的是,BaM用以用作既有的嵌入式和的系统在很强非常大的真实信息集的故又称到故又称技术开发的发展程序里给予重力效能。
假设
在这项指导工作里,我们明确提显露了一个案例,使 GPU 只能在称为 BaM 的属于自己系统体系结构上里协调对 NVMe 电子元件涡轮器 (SSD) 的很高客运量、细分层显露访。BaM 通过按均需习取或读到入更为精细的分层(由这些 GPU 上运自为的量本土化标识符尽迟)来愈演愈烈习取比所均需信息更为多的信息的 I/O 放大具体情况。用作现成的嵌入式子系统,我们用作显然相同的 SSD 一般来真是意味着 BaM 十分相似,并在多个技术开发的发展程序和信息集上进自为了检验,结果表格明 BaM 是DRAM-only和其他以 CPU 为里心的最显露众解决具体情况设不下方案的可自为替代设不下方案。
。深圳妇科医院去哪家好襄阳白癜风医院电话
长沙男科检查费用
真空污水收集系统
宁波牛皮癣医院怎么样
下一篇: 负有海尔科技合作,院士为何来找HOPE

-
卫健委研究出台更多生育支持措施 母婴消费行为领域有望得到提振
国家卫健责人均收入家庭监巡视员杨金瑞在发布会上回应,各地各其他部门尽力行动,推进优化受孕新政策勤务实施。一是叫停社会抚养费等制约政策,国家保健生活品质责会同无关其他部门尽早有关警政法规、规章

-
诺娃独立游戏无线通讯 2022-#10
。发送给尤其有用快照可以用蹩脚的形式存储配表了来自:FlorenShaw读到作者引语:用于 Excel2Json 开源 来将表
- 11-07这4种令无数姑娘迷恋的食物,类似时期真的不能碰?
- 11-07尺寸比丰田埃尔法还大!比亚迪大型时髦MPV曝光,下月将亮相
- 11-07投资者提问:请问贵公司系列产品能应用于虚拟电厂吗
- 11-07中国恒大(03333.HK)拟增聘中金等作为财务顾问协助开展风险化解管理工作
- 11-07被画面拖累的8款佳作,谁说是NS不用加强性能!?
- 11-07李霄鹏已开始为国足岗位,将奔赴广州,朱广沪出山辅佐他!
- 11-072022款 凯迪拉克CT5 时尚型 直降3.5万
- 11-07投资者提问:公司四季度的生产量比三季度是否有提高?
- 11-07比亚迪:是时候,给特斯拉看看我壮硕的脊柱了
- 11-07曾经火爆全球的《涂鸦跳跃》为什么变为了?丨初代网红手游回忆录