Elbrus VS Intel. Comparando o rendemento dos sistemas de almacenamento Aerodisk Vostok e do motor

Elbrus VS Intel. Comparando o rendemento dos sistemas de almacenamento Aerodisk Vostok e do motor

Ola a todos. Seguimos presentándoche o sistema de almacenamento de datos Aerodisk VOSTOK, baseado no procesador ruso Elbrus 8C.

Neste artigo analizaremos (como prometemos) un dos temas máis populares e interesantes relacionados con Elbrus, a produtividade. Hai bastantes especulacións sobre a actuación de Elbrus, e absolutamente polares. Os pesimistas din que a produtividade de Elbrus é agora "nada", e que levará décadas poñerse ao día cos produtores "máximos" (é dicir, na realidade actual, nunca). Por outra banda, os optimistas aseguran que o Elbrus 8C xa está dando bos resultados, e nos próximos dous anos, co lanzamento de novas versións de procesadores (Elbrus 16C e 32C), poderemos "poñernos ao día e superarnos" os principais fabricantes de procesadores do mundo.

En Aerodisk somos persoas prácticas, polo que tomamos a ruta máis sinxela e comprensible (para nós): probar, rexistrar os resultados e só despois sacar conclusións. Como resultado, realizamos un gran número de probas e descubrimos unha serie de funcións operativas da arquitectura Elbrus 8C e2k (incluídas agradables) e, por suposto, comparámola con sistemas de almacenamento similares en procesadores de arquitectura Intel Xeon amd64.

Por certo, falaremos con máis detalle sobre as probas, os resultados e o desenvolvemento futuro dos sistemas de almacenamento en Elbrus no noso próximo seminario web "OkoloIT" o 15.10.2020 de outubro de 15 ás 00:XNUMX. Podes rexistrarte na seguinte ligazón.

Rexistro para o webinar

Banco de probas

Creamos dous stands. Ambos soportes consisten nun servidor con Linux, conectado mediante switches 16G FC a dous controladores de almacenamento, nos que se instalan 12 discos SAS SSD de 960 GB (11,5 TB de “capacidade bruta” ou 5,7 TB de capacidade “utilizable”, se utilizamos RAID). -10).

Esquemáticamente o stand ten este aspecto.

Elbrus VS Intel. Comparando o rendemento dos sistemas de almacenamento Aerodisk Vostok e do motor

Stand No. 1 e2k (Elbrus)

A configuración do hardware é a seguinte:

  • Servidor Linux (2xIntel Xeon E5-2603 v4 (6 núcleos, 1,70 Ghz), 64 GB DDR4, 2xFC adaptador 16G 2 portos) – 1 pc.
  • Interruptor FC 16 G – 2 pzas.
  • Sistema de almacenamento Aerodisk Vostok 2-E12 (2xElbrus 8C (8 núcleos, 1,20 Ghz), 32 GB DDR3, 2xFE adaptador FC 16G 2 portos, 12xSAS SSD 960 GB) - 1 pc.

Stand no 2 amd64 (Intel)

Para comparar cunha configuración similar en e2k, usamos unha configuración de almacenamento similar cun procesador de características similares ao amd64:

  • Servidor Linux (2xIntel Xeon E5-2603 v4 (6 núcleos, 1,70 Ghz), 64 GB DDR4, 2xFC adaptador 16G 2 portos) – 1 pc.
  • Interruptor FC 16 G – 2 pzas.
  • Sistema de almacenamento Aerodisk Engine N2 (2xIntel Xeon E5-2603 v4 (6 núcleos, 1,70 Ghz), 32 GB DDR4, 2xFE FC-adaptador 16G 2 ports, 12xSAS SSD 960 GB) - 1 pc.

Nota importante: os procesadores Elbrus 8C utilizados na proba só admiten memoria RAM DDR3, isto é, por suposto, "malo, pero non por moito tempo". Elbrus 8SV (aínda non o temos en stock, pero pronto o teremos) admite DDR4.

Metodoloxía da proba

Para xerar a carga, usamos o popular programa Flexible IO (FIO).

Ambos sistemas de almacenamento están configurados segundo as nosas recomendacións de configuración, en función dos requisitos de alto rendemento no acceso en bloque, polo que utilizamos pools de discos DDP (Dynamic Disk Pool). Para non distorsionar os resultados das probas, desactivamos a compresión, a deduplicación e a caché RAM en ambos os sistemas de almacenamento.

Creáronse 8 D-LUN en RAID-10, de 500 GB cada un, cunha capacidade útil total de 4 TB (é dicir, aproximadamente o 70% da capacidade útil posible desta configuración).

Executaranse escenarios básicos e populares para o uso de sistemas de almacenamento, en particular:

as dúas primeiras probas emulan o funcionamento dun DBMS transaccional. Neste grupo de probas interésanos as IOPS e a latencia.

1) Lectura aleatoria en pequenos bloques 4k
a. Tamaño do bloque = 4k
b. Ler/Escribir = 100%/0%
c. Número de obras = 8
d. Profundidade da cola = 32
e. Cargar carácter = Aleatorio completo

2) Gravación aleatoria en pequenos bloques 4k
a. Tamaño do bloque = 4k
b. Ler/Escribir = 0%/100%
c. Número de obras = 8
d. Profundidade da cola = 32
e. Cargar carácter = Aleatorio completo

as dúas segundas probas emulan o funcionamento da parte analítica do DBMS. Neste grupo de probas tamén nos interesan as IOPS e a latencia.

3) Lectura secuencial en pequenos bloques 4k
a. Tamaño do bloque = 4k
b. Ler/Escribir = 100%/0%
c. Número de obras = 8
d. Profundidade da cola = 32
e. Cargar carácter = Secuencial

4) Gravación secuencial en pequenos bloques 4k
a. Tamaño do bloque = 4k
b. Ler/Escribir = 0%/100%
c. Número de obras = 8
d. Profundidade da cola = 32
e. Cargar carácter = Secuencial

O terceiro grupo de probas emula o traballo de lectura en streaming (exemplo: transmisións en liña, restauración de copias de seguridade) e gravación en streaming (exemplo: videovixilancia, gravación de copias de seguridade). Neste grupo de probas xa non nos interesan as IOPS, senón os MB/s e tamén a latencia.

5) Lectura secuencial en grandes bloques de 128k
a. Tamaño do bloque = 128k
b. Ler/Escribir = 0%/100%
c. Número de obras = 8
d. Profundidade da cola = 32
e. Cargar carácter = Secuencial

6) Gravación secuencial en grandes bloques de 128k
a. Tamaño do bloque = 128k
b. Ler/Escribir = 0%/100%
c. Número de obras = 8
d. Profundidade da cola = 32
e. Cargar carácter = Secuencial

Cada proba terá unha duración dunha hora, excluíndo o tempo de quecemento da matriz de 7 minutos.

Resultados da proba

Os resultados das probas resúmense en dúas táboas.

Elbrus 8S (SHD Aerodisk Vostok 2-E12)

Elbrus VS Intel. Comparando o rendemento dos sistemas de almacenamento Aerodisk Vostok e do motor

Intel Xeon E5-2603 v4 (sistema de almacenamento Aerodisk Engine N2)

Elbrus VS Intel. Comparando o rendemento dos sistemas de almacenamento Aerodisk Vostok e do motor

Os resultados resultaron moi interesantes. En ambos os casos, fixemos un bo uso da potencia de procesamento do sistema de almacenamento (70-90% de utilización), e nesta situación, os pros e os contras de ambos procesadores son claramente evidentes.

En ambas as táboas, as probas nas que os procesadores "se senten seguros" e mostran bos resultados resáltanse en verde, mentres que as situacións que os procesadores "non lles gustan" resáltanse en laranxa.

Se falamos de carga aleatoria en pequenos bloques, entón:

  • desde o punto de vista da lectura aleatoria, Intel é certamente por diante de Elbrus, a diferenza é 2 veces;
  • dende o punto de vista da gravación aleatoria é definitivamente un empate, ambos procesadores mostraron resultados aproximadamente iguais e decentes.

Nunha carga secuencial en pequenos bloques a imaxe é diferente:

  • tanto á hora de ler como de escribir, Intel está significativamente (2 veces) por diante de Elbrus. Ao mesmo tempo, se Elbrus ten un indicador de IOPS inferior ao de Intel, pero parece decente (200-300 mil), entón hai un problema obvio cos atrasos (son tres veces máis altos que os de Intel). Conclusión, á versión actual de Elbrus 8C realmente "non lle gustan" as cargas secuenciais en pequenos bloques. Está claro que hai traballo por facer.

Pero nunha carga secuencial con bloques grandes, a imaxe é exactamente o contrario:

  • ambos procesadores mostraron resultados aproximadamente iguais en MB/s, pero hai un PERO.... O rendemento da latencia de Elbrus é 10 (dez, Karl!!!) veces mellor (é dicir, menor) que o dun procesador similar de Intel (0,4/0,5 ms fronte a 5,1/6,5 ms). Ao principio pensamos que era un fallo, así que revisamos os resultados, fixemos unha nova proba, pero a nova proba mostrou a mesma imaxe. Esta é unha gran vantaxe de Elbrus (e da arquitectura e2k en xeral) sobre Intel (e, en consecuencia, a arquitectura amd64). Agardemos que este éxito se desenvolva aínda máis.

Hai outra característica interesante de Elbrus, á que un lector atento pode prestar atención mirando a táboa. Se observas a diferenza entre o rendemento de lectura e escritura de Intel, en todas as probas, a lectura está por diante da escritura de media nun 50% máis. Esta é a norma á que todos (incluídos nós) estamos afeitos. Se miras a Elbrus, os indicadores de escritura están moito máis próximos aos indicadores de lectura; a lectura está por diante da escritura, por regra xeral, nun 10-30%, sen máis.

Que significa isto? O feito de que a Elbrus "lle encanta" escribir, e isto, á súa vez, suxire que este procesador será moi útil en tarefas nas que a escritura prevaleza claramente sobre a lectura (quen dixo a lei de Yarovaya?), que tamén é unha vantaxe indubidable na arquitectura e2k, e cómpre desenvolver esta vantaxe.

Conclusións e futuro próximo

As probas comparativas dos procesadores de gama media Elbrus e Intel para tarefas de almacenamento de datos mostraron resultados aproximadamente iguais e igualmente dignos, mentres que cada procesador mostrou as súas propias características interesantes.

Intel superou moito a Elbrus na lectura aleatoria en pequenos bloques, así como na lectura e escritura secuenciais en pequenos bloques.

Ao escribir aleatoriamente en pequenos bloques, ambos procesadores mostran resultados iguais.

En termos de latencia, Elbrus ten un aspecto significativamente mellor que Intel nunha carga de streaming, é dicir. en lectura e escritura secuenciais en grandes bloques.

Ademais, Elbrus, a diferenza de Intel, afronta igual de ben as cargas de lectura e escritura, mentres que con Intel, ler sempre é moito mellor que escribir.
A partir dos resultados obtidos, podemos extraer unha conclusión sobre a aplicabilidade dos sistemas de almacenamento de datos Aerodisk Vostok no procesador Elbrus 8C nas seguintes tarefas:

  • sistemas de información con predominio das operacións de escritura;
  • acceso ao ficheiro;
  • transmisións en liña;
  • CCTV;
  • copia de seguridade;
  • contido multimedia.

O equipo do MCST aínda ten algo no que traballar, pero xa se ve o resultado do seu traballo que, por suposto, non pode menos que alegrarse.

Estas probas realizáronse no kernel Linux para e2k versión 4.19; actualmente en probas beta (en MCST, en Basalt SPO, e tamén aquí en Aerodisk) existe un kernel Linux 5.4-e2k, no que, entre outras cousas, ten O programador foi seriamente rediseñado e moitas optimizacións para unidades de estado sólido de alta velocidade. Ademais, especificamente para os núcleos da rama 5.x.x, MCST JSC lanza un novo compilador LCC, a versión 1.25. Segundo os resultados preliminares, no mesmo procesador Elbrus 8C, un novo núcleo compilado cun novo compilador, un entorno de núcleo, utilidades do sistema e bibliotecas e, de feito, o software Aerodisk VOSTOK permitirá un aumento aínda máis significativo do rendemento. E isto sen substituír equipos: no mesmo procesador e coas mesmas frecuencias.

Agardamos o lanzamento dunha versión de Aerodisk VOSTOK baseada no núcleo 5.4 cara a finais de ano e, en canto remate o traballo na nova versión, actualizaremos os resultados das probas e tamén os publicaremos aquí.

Se agora volvemos ao comezo do artigo e respondemos á pregunta, quen ten razón: os pesimistas que din que Elbrus non é “nada” e que nunca chegarán ao día dos principais fabricantes de procesadores, ou os optimistas que din que “xa case atraparon”. arriba e pronto superará"? Se non procedemos de estereotipos e prexuízos relixiosos, senón de probas reais, entón os optimistas definitivamente teñen razón.

Elbrus xa está a mostrar bos resultados en comparación cos procesadores amd64 de nivel medio. O Elbrus 8-ke está, por suposto, lonxe dos modelos de primeira liña de procesadores de servidor de Intel ou AMD, pero non estaba destinado alí; os procesadores 16C e 32C lanzaranse para este fin. Despois falaremos.

Entendemos que despois deste artigo haberá aínda máis preguntas sobre Elbrus, polo que decidimos organizar outro seminario en liña "OkoloIT" para responder a estas preguntas en directo.

Nesta ocasión o noso convidado será o director xeral adxunto da empresa MCST, Konstantin Trushkin. Podes rexistrarte no seminario web usando a seguinte ligazón.

Rexistro para o webinar

Grazas a todos, coma sempre, esperamos críticas construtivas e preguntas interesantes.

Fonte: www.habr.com

Engadir un comentario