was successfully added to your cart.

LSI不同RAID Stack測試(For LSI SAS2008)

By 2016-06-29邏輯層分析

此篇為LSI IR與IMR Stack之間的比較測試… 不過在此之前還是說明一些LSISAS2008相關的特徵 先看架構方塊圖…

924593_orig

 

可以看到有幾個部件, 大體上有一些重點:
1. 這是Software RAID, 硬凹的話, 沒意義的稱作”Hardware-assisted Software RAID”, 有沒有比較好聽 了一點呢?
2. Fusion MPT是一個I2O裝置, 主要拿來和Host協調.
3. 這顆有整合PPC440 533MHz IOP, 但是明確用途不知, 姑且稱作他會有副作用.
4. 2MB SRAM不是Cache喔, 請注意! 他只是單純的buffer用來存放相關的FIFO數據.
5. 那個32-bit Memory Bus是串接低速的OPB Bridge, 銜接例如FLASH, NVRAM這類等.
6. LSISAS2008的internal Bus應該是PLB4, 128-bit, crossbar架構, 頻寬其實很大.

再來看另一張比較:

intel_compare

這張左邊兩個當然是Intel自家開發的RAID Stack.. ERST2只會在它們自家的Server主板才看的到.. RST就應該不用說了吧..
這邊有一個重點特性, 就是IR3 RAID其實就是MegaRAID… 但是要點在於那個Persistent Controller Log… 這是一個與Event Log不同的地方..

他是Firmware Log, 這是極為有用的除錯Log…. 對應LSI就是TTY log…
MegaRAID支持這項機能…
這項功能相當有用… 相關的相容性問題或著錯誤問題可以由這Log來查…

另外IR的Software Stack支持MSI-X 當然我是指6Gb/s以後的產品…

3Gb/s產品全部都只能運行在Legacy Mode… 這是一個相當重要的特徵.. 雖然他不是甚麼新技術… IR和IMR的支持有所不同… IR提供大量的IRQ資源…

ir_irq_resource

IMR比較基本面…

mr_irq_resource由於在用途上有所不同因而有差異… LSISAS2008在IR下.. 不支持Stagger Spn-up 不支持Spin-down 相關的MAID機能通通都沒有.. 而在IMR下就是相反了…

下面就是不厚道的貼一部分測試.. 這邊是故意拿兩顆SAS HDD來測試… Seagate的7.2K SAS ES2… 直接就是RAID 0, 64K ioMeter不同測試設定: (QD深度從1個單位達到沒啥意義的256) >>Read(讀取)

io_meter_read_config

>Write(寫入)

io_meter_write_config-1

結果表(請點擊放大觀看):

io_meter_stack_compare

結果不好說…
不方便講可能的原因性, 不做亂猜測.. IMR的Response Time和Intterupts比IR高出不少…

下面這個HD Tach的情況比較怪異, IR連續測了4次左右, 結果一樣, 寫入很奇怪!..

>IMR情況

megaraid_hdtach

>IR情況

ir_hdtach

歡樂的ATTO當然是少不了的, 一律直接QD10…

>>IMR情況

megaraid_atto_qd10

>>IR情況

ir_atto_qd10

IR的情況也同樣比較詭異… AS SSD直接測SEQ. I/O:

IMR情況

megaraid_asssd

IR情況

 

ir_asssd

沒有差距太遠, IR我也是跑好幾次, 寫入似乎偏弱….. 最後的HDD Tune看看就好(其實沒甚麼參考性)…

IMR情況

ir_hdtune_write-1
ir_hdtune_read

IR情況

megaraid_hdtune_write

megaraid_hdtune_read

###關於LSISAS2008的補充: 對岸網友的詢問:

唉,有時候真的會弄不清楚這些 RAID 的種類,不知道這樣說對不對:
– 軟RAID,Driver based 的,就是不裝 driver 認不了的那種,例如 ICH, P67
– 軟+硬 RAID,可以支援 Firmware based RAID,不裝 driver 也能夠認得了,不過沒有自帶 IOP (?!),所以 RAID 5 靠 CPU? 例如 LSI SAS2008
– 全硬 RAID,有 IOP 可以算 RAID 5,不用 Host CPU 自己全部搞定,例如 LSISAS2108

“- 軟RAID,Driver based 的,就是不裝 driver 認不了的那種,例如 ICH, P67
– 軟+硬 RAID,可以支持 Firmware based RAID,不裝 driver 也能夠認得了” 都要裝driver(除非你打穿它(pass-through), 但是這樣不能用相關的RAID Utility做RAID)… 不管firmware-based RAID或著driver-based RAID也好..
他們全部都是Software RAID…
你可以把像ICH10或著P67這類稱為典型的ROMB RAID… 確實LSI可能在f/w封裝RAID算法..
不過這依然改變不了LSISAS2008是S/W RAID的事實…
像依照主板晶片採用的RAID..
例如Intel封裝的RST…
這類也可以稱為Firmware-based…
他依然有封入相關的RAID代碼在firmware… 不過通常是相關的啟動暫存器和相關的RAID BIOS代碼…
沒有所謂的軟+硬RAID…
稱其為H/W-assisted S/W RAID也只是針對LSI產品的特殊性…

“不過沒有自帶 IOP (?!),所以 RAID 5 靠 CPU? 例如 LSI SAS2008” 我想你指的IOP應該是指I/O Processor.. 不過LSISAS2008本身就是一種IOP… 我認為你應該要有更明確的稱呼….

Pure-H/W RAID的條件很簡單:
1. Hardware RAID Assist的存在
2. Internal MCU做為控制硬件Cache Memory的設計
3. Built-in Processor的存在
4. firmware stack的控制必須要將相關的I/O Processing轉移到RAID Controller上處理.. 可以看如下這張方塊圖…

lsisas1078_layout

ppc440spe

在記憶體控制器部分..
他銜接了XOR Engine..
你可以把XOR Engine稱為XOR加速器.. 這個是決定H/W RAID的最大關鍵… 根據這個設計與AMCC的PPC440spe幾乎長一個模樣..

thx

Author thx

More posts by thx

Leave a Reply