以下內(nèi)容整理于演講實錄,未經(jīng)演講人最終確認:
為什么做FPGA,可以看到一些趨勢,第一個是數(shù)據(jù)爆炸,第二是人工智能的興起,第三個就是后摩爾定律時代,不可避免要走向異構(gòu)計算。說到NVMe Over Fabric,主要解決Storage Disaggreation,把原來插在服務(wù)器背板的NVMe拿出來,可以推到遠端,和從傳統(tǒng)的DAS走向SAN這個概念是一樣,把高性能資源重復利用,同時又能夠集中管理。某種意義上講,F(xiàn)PGA是一種芯片可編程的芯片,不需要做很多的工作,這里有一個關(guān)鍵點,賽靈思發(fā)展FPGA分三個階段,第一個階段我們?yōu)樾酒鲵炞C,做原型系統(tǒng),移動通訊爆發(fā)的年代,外面的各個基站,我們做這種天線矩陣、信號處理,包括任何雷達里面都會有FPGA的芯片,為什么要講到數(shù)據(jù)中心,就是因為我們在全球有一個比較大的云,Microsoft Azure大量部署FPGA做異構(gòu)計算,很多教授都講過,為什么FPGA介入數(shù)據(jù)中心,就是為了做異構(gòu)計算。做異構(gòu)計算我們講很關(guān)鍵一點,ARM在移動系統(tǒng)慢慢往數(shù)據(jù)中心走,大家都知道,做NVMe,我們就要關(guān)心PCIe,從某種角度,對ARM來講是一個非常大的弱點,很少有手機的GPS能夠支持PCIe,而賽靈思FPGA方案可以提升基于ARM的控制系統(tǒng)性能的可靠性。
對于DISAGGREGATION和FPGA的芯片來講,我們天生可以支持5個PCIe盤,可以掛100G的系統(tǒng),某種意義上講,既可以支持PCIe也可以支持100G,底層都是串行服務(wù)。所以說,我們還不僅做這個,還可以加入一些定制的加速功能,就是我們講的可以做coding、RAID、哈希、壓縮等等,還有做客戶的定制內(nèi)容。整體的架構(gòu)來講的話,可以做到一個標準的24盤位JBOF,提供對外輸出100G性能,把100G的帶寬跑滿4K性能。
測試環(huán)境,上面測延時,下面測IOPS。在下面使用四個盤連在板子上,直接連接過來,測試性能,我們可以看到,在4K的情況下,隨機讀都是在2.32Millon,寫的話基本上在1.1Millon左右,盤的寫和讀的概念比較大,延時差別,不管是順序讀的還是無序讀,是在2-8M之間,寫增加的延遲是在5-10M之間,為什么延時增加不一樣,大家如果做PCIe協(xié)議,就知道讀寫是不一樣的,寫的時候不需要返回,讀的話需要一個返回,所以不涉及介質(zhì)的話,寫是比讀要好。在后續(xù)寫的時候,其實是數(shù)據(jù)準備好了以后,發(fā)包,RAID讀數(shù)據(jù),然后寫在后面的盤上,這就造成讀寫增加延時,對于小包沒有苛刻要求的話,在寫的時候把包里面數(shù)據(jù)放進去,這樣就可以做到讀和寫延時差不多的時間。
關(guān)于存儲產(chǎn)品路線,我們看標準的盤,或者具有標準的NVMe標準接口,都可以通過FPGA連接上去,會有一定的DDR控制器,在FPGA里有一個NVMe IP設(shè)置,在NVMe里通過一個地址轉(zhuǎn)換成可以發(fā)送到后端的NVMe標準命令。
我們現(xiàn)在做的東西就是想做一個NVMe HBA,比如說客戶要一個盤要128T,那我可以找三星英特爾,他說不好意思我可能要等到兩年以后,那怎么辦?
我甚至可以支持虛擬化,可以做很多的基于NVMe的事,基于此,中段可以從16個盤變成一個盤,大大降低對主機CPU的占用,這些我都會放在FPGA里,減少CPU的使用?,F(xiàn)在大家都面臨一個問題,CPU拿來賣而不是拿來跑盤。舉個例子,對100G的包做一個分流,所有的I/O的包全部通過硬件輸出,因此任何一個小小的ARM都可以來做存儲控制器,所以要做I/O和數(shù)據(jù)分流。我們的計劃就是,把NVMe加進去,大家可以想像,假如我是一張網(wǎng)卡,對于主機來看我是一個NVMe盤,我這個盤子上面可以切成很多的小盤子,對于用戶來講,我們所做的事情就是希望把和CPU打交道的接口,能夠通過FPGA做硬件的實現(xiàn),降低I/O等等對CPU的占用。一個IP打包,然后集成到一個芯片,或者一個系統(tǒng)里面。
賽靈思成立于1984年,已經(jīng)35年了,總部在硅谷,中國北京有一個研發(fā)中心,我們現(xiàn)在所有的員工有4000人,我們客戶差不多有2萬多個客戶??匆幌拢覀?nèi)虼蟾庞?300多個合作伙伴,我們出品全球第一款FPGA,第一個掛ARM存儲系統(tǒng),隨著數(shù)據(jù)爆炸和AI的興起,以及后網(wǎng)絡(luò)時代的到來,不可定義的就要FPGA。把原來差的服務(wù)器拿出來,可以推到遠端,從傳統(tǒng)的原來的DAS走向SAS這個概念是一樣,把我們高性能的資源重復利用,同時又能夠集中管理,好處頗多。
賽靈思的創(chuàng)新在于基于FPGA方案,實現(xiàn)了數(shù)控分離,在ARM系統(tǒng)上實現(xiàn)I/O控制,形成完整的數(shù)據(jù)通路。