Benchmarks:
JBOD 1 HDD = Single Disk 16KB Clusters (Read Ahead, Write Cache, NCQ Enabled)
2 HDD's [RAID 0] 16KB Clusters (Read Ahead, Write Cache, NCQ Enabled)
3 HDD's [RAID 0] 16KB Clusters (Read Ahead, Write Cache, NCQ Enabled)
* Neste benchmark dei logo com um problema, como podem ver o grafico não vai numa curva decrescente como acontece nos outros, o que leva a crer que existe algures um bottleneck.
4 HDD's [RAID 0] 16KB Clusters (Read Ahead, Write Cache, NCQ Enabled)
* E neste a velocidade em vez de aumentar ainda diminuiu.
5 HDD's [RAID 0] 16KB Clusters (Read Ahead, Write Cache, NCQ Enabled)
* Este então custou-me mesmo a acreditar e corri meia duzia de vezes sempre com o mesmo resultado.
Foi então que me lembrei de algo que li num forum, que ter o NCQ activo em discos não empresariais que não sabem usar como deve ser o NCQ em RAID afecta negativamente a performance e foi então que desliguei o NCQ e voltei a correr os benchmarks, com os seguintes resultados:
4 HDD's [RAID 0] 16KB Clusters (Read Ahead, Write Cache Enabled,
NCQ Disabled)
* Como podem notar houve uma melhoria na velocidade assim que desliguei o NCQ (
Native Command Queuing).
5 HDD's [RAID 0] 16KB Clusters (Read Ahead, Write Cache Enabled,
NCQ Disabled)
* Uma melhoria enorme face a velocidade com o NCQ ligado mas mesmo assim, não só é mais lento que o RAID 0 de 4 discos, como o gráfico vai a direito o que leva a crer neste ponto que havia algures um bottleneck.
Resolvi no entanto passar para o RAID 5 para ver como se comparava face ao RAID 0, esquecendo por enquanto o bottleneck.
Mal sabendo eu que ia encontrar mais a frente algo ainda mais surpreendente, e o qual espero eu que vocês me possam ajudar a resolver.
4 HDD's [RAID 5] 16KB Clusters (Read Ahead, Write Cache Enabled,
NCQ Disabled)
Lembrei-me de tentar com varios clusters para ver se tinha uma melhoria de performance, e encontrei uma melhoria ligeira usando clusters de 32KB.
4 HDD's [RAID 5]
32KB Clusters (Read Ahead, Write Cache Enabled,
NCQ Disabled)
Passei então para 5 HDD's em RAID 5:
5 HDD's [RAID 5]
32KB Clusters (Read Ahead, Write Cache Enabled,
NCQ Disabled)
* 5 HDD's em RAID 5, devem em teoria ter quase a velocidade de leitura de um RAID 0 de 4 HDD's, por isso considerei este valor normal, e passei a testes com o RAID 5 degradado, ou seja, desliguei um dos discos SATA para simular um disco estragado e voltei a correr o HD Tach e foi aqui que encontrei algo verdadeiramente estranho!!!
-> As
características do RAID 5 em termos de velocidade para quem percebe pouco de RAID's é que tem
excelente velocidade de leitura e velocidade de escrita fraca uma vez que para alem de escrever os dados nos discos
tem também que calcular a paridade e escreve-la também (no caso da rr2340 que tem apenas um processador IOC em vez de IOP (Hardware RAID) precisa de alguma ajuda do cpu para fazer os cálculos embora ela mesma faça parte dos cálculos ao contrario das muitas placas de Software RAID que há no mercado).
Ora quando eu desliguei um dos SATA's e degradei o RAID 5, estava a contar ficar com velocidades de leitura na ordem dos 100MB/s, uma vez que agora os
cálculos da paridade tinham que ser feitos para ler os dados do disco que desliguei, passando assim teoricamente a velocidade de leitura a ser fraca e a escrita muito rápida
(uma vez que já não é preciso calcular e escrever a paridade na escrita), e foi aqui que tive uma grande surpresa:
4 HDD's (1 dos HDD's desligado) [RAID 5 Degradado]
32KB Clusters (Read Ahead, Write Cache Enabled,
NCQ Disabled)
* Velocidade superior a qualquer outra vista antes, a burst uma loucura, a unica coisa dentro do esperado foi a utilização do CPU por causa do calculo da paridade, obviamente que pensei logo que o HD Tach tinha-se passado e depois de correr varias vezes com o mesmo resultado tentei benchar com o HD Tune.
Com exactamente os mesmos resultados...
Reconstrui o RAID 5 voltando a ligar o disco (a rebuild demorou +/- 3h)
e os valores de leitura voltaram ao normal:
Foi então que me lembrei de testar a escrita:
* Repeti estes testes muitas vezes sempre com os mesmos resultados.
É esta a minha pergunta para os especialistas como é que isto é possível!?
Como é que com um RAID 5 já inicializado tenho quase 2x mais velocidade de escrita (onde ainda tem que ser calculada a paridade) do que leitura.
Tenho pesquisado mesmo muito e até agora a minha placa é para mim única no mundo, porque nas outras acontece exactamente o contrario em termos de velocidades...
Sugestões para aumentar a velocidade de leitura aceitam-se!!!
Conclusão:
É verdade que esta placa controladora custa perto de 500€, no entanto se levarmos em conta que tem 16 portas não é assim tão cara, basta pensarmos que a Adaptec Raid AAR-1430SA custa 102€ e tem apenas 4 portas SATA e não tem um processador que ajude nos cálculos do RAID, nem o suporte de sistemas operativos da rr2340 e que precisávamos de ocupar 4 slots PCIe para termos as mesmas 16 portas SATA da rr2340, isto já para não comparar com placas de 16 portas de outras marcas que são muito mais caras chegando até ao dobro, isto já para não mencionar o preço de 16 HDD's, embora não tenham se ser comprados todos ao mesmo tempo uma vez que a placa suporta OLE de RAID's.
Por isso para quem pretende ter um File Server em casa
(para empresa recomendo algo melhor, como hardware raid com memoria integrada na controladora e a respectiva battery backup unit para activar o read/write ahead), ou porque se cansou de gravar DVD's ou porque quer ter tudo há mão através do streaming ou ambos, recomendo esta controladora com um:
9/10