Ferro de 5 GHz: uma história sobre como criar um VDS superfast



Se nossa boa e velha tarifa "Velozes e Furiosos" fosse um homem, agora ele fumaria nervosamente de lado e recordaria os melhores anos. Mas como tudo começou. Então, em 2018, fomos os primeiros a conectar o NVMe e modificar a tarifa com uma escala flexível de recursos, que existe desde 2016. Então ele foi o mais rápido de todas as nossas tarifas. Mas os tempos estão mudando e, apesar do Gold 5115 ainda ser considerado um processador ágil, as soluções já apareceram e se divertiram.

Em geral, minha história é sobre como os Velozes e Furiosos tiveram que deixar relutantemente o primeiro degrau do pódio e ficar em terceiro lugar na velocidade depois de duas novas tarifas - Bitrix.Turbo e CPU.Turbo, que lançamos durante este ano.

Posso prometer que haverá muitos detalhes sobre hardware, testes de processador e (bem, necessárias) máquinas virtuais e um pouco de cozinha interna. Então, vamos começar.

Esta é uma corrida de sobrevivência - agora será divertida!


Em fevereiro de 2019, lançamos uma nova tarifa Bitrix: Turbo: servidores com processadores Intel Core i9-9900K com uma frequência de clock de 5 GHz no modo Turbo Boost. Fizemos testes de desempenho - então escrevi meu primeiro artigo , e os caras do próximo departamento viram a receita para tirar o máximo proveito do Bitrix . i9 atendeu às nossas expectativas, o lançamento ocorreu. Obrigado a todos, divergem ...

De fato, o Bitrix Turbo acabou sendo muito popular entre nossos clientes. Até agora, só temos tempo para adicionar servidores ao cluster. Portanto, tiramos conclusões e decidimos não parar por aí, mas continuar nossa pesquisa no campo de processadores de alta frequência.

Como o Bitrix.Turbo foi concebido (e acabou!) Por uma tarifa muito especializada, e os clientes de Fast e Furious apreciaram mais a flexibilidade, decidiu-se complementar a linha com uma tarifa de velocidade para todos aqueles que precisam de “ainda mais frio, ainda mais rápido”.

Como o i9-9900K nos apresentou algumas "surpresas", decidimos imediatamente que lançaríamos em outros processadores. Sim, era assim, já na fase de projeto de uma solução de hardware para o Bitrix. Turbo, tivemos uma "experiência fascinante e rica". Bem, ou ele é nós. Como esse é o caso, vou desviar um pouco da narrativa principal e, literalmente, contar brevemente sobre essa experiência.

Um servidor padrão para a tarifa Bitrix O turbo é montado em uma plataforma de unidade única: uma placa-mãe baseada no chipset Intel Q370, um processador Intel i9-9900K, 64 GB de RAM, duas unidades NVMe de 2 TB em RAID1.

A implementação dessa solução foi extremamente divertida e interessante. O fato é que, de acordo com a Intel, o TDP deste processador é de 95 watts. De fato, se você usa placas-mãe, por exemplo, com o chipset H310, o processador com carga de pico não ultrapassa esses limites: acelera silenciosamente um núcleo a 5 GHz e o restante na faixa de 4,7 a 4,8 GHz. Mas se a plataforma usa um chipset com uma classe mais alta, por exemplo, Q370 e maior potência do processador, o processador acelera para um número maior de núcleos de até 5 GHz: de 2 a 5 e o TDP aumenta para quase 200 watts.

Resfriar um “fogão” em um design de unidade única não é uma tarefa fácil. O processador começou a acelerar e reduziu a frequência em todos os núcleos para 4,4-4,5 GHz. Era extremamente difícil controlar tal situação. Para ser sincero, pela primeira vez me deparei com uma discrepância tão forte entre as especificações e a implementação real de um fabricante tão grande e sério como o Blues.

Devido ao fato de que naquele momento era o único processador disponível com freqüências nominais tão altas, tivemos que trabalhar duro antes de nos permitir usá-lo para uma nova tarifa e recorrer a soluções não triviais: use casos especiais com um poderoso resfriamento a ar e organize racks de resfriamento não menos legais. Tudo isso em conjunto permite garantir que mais núcleos operem no máximo a uma frequência de 5 GHz sem superaquecimento e aceleração, mas aumentam o consumo de energia e o ruído, o ruído selvagem.

Infelizmente, naquele momento, não foi possível introduzir o resfriamento líquido: por um lado, não havia uma solução adequada na quantidade certa para começar; por outro lado, havia muitas perguntas sobre a confiabilidade dos existentes - realmente não queríamos afogar os servidores.

Agora, de volta à história principal.

Rake Dancing




Como você sabe, os fabricantes de processadores testam suas soluções no mercado de desktops e, em caso de resultado positivo, as implementam no segmento de servidores. Só podíamos esperar a aparência do servidor analógico da Intel i9-9900K. E quase um ano depois, esse analógico apareceu - era o Intel Xeon E-2288G. A Intel levou em consideração as deficiências de seu antecessor: o processador ficou bastante limitado no pacote de calor (95 W). Como em qualquer processador de servidor da Intel, a memória ativada para ECC apareceu e a capacidade máxima suportada aumentou para 128 GB.

Nós descobrimos o processador, é hora de lidar com a plataforma do servidor. Encontrar o caminho certo se tornou um problema sério para nós, pois procurávamos um que fosse adequado às características táticas e técnicas, tivesse um custo adequado e suportasse todas as possibilidades de uma pedra tão rápida.

Como o processador é novo, a escolha de plataformas tem sido muito, muito limitada. Após um estudo minucioso e meticuloso, decidimos por três opções: a primeira caiu durante os primeiros testes, - o fabricante lançou uma versão bruta do firmware da plataforma com suporte para o E-2288G, com a qual toda a solução funcionava extremamente instável, e só era possível aguardar uma nova versão e estabilização da plataforma anos. O segundo não permitiu organizar a refrigeração completa dos circuitos de energia, o que é muito importante para esse processador. O novo processador era muito difícil para eles. Mas o terceiro surgiu em todos os aspectos. Não apenas atendeu, como também superou nossas expectativas. Não posso divulgar modelos - um segredo comercial.

Também decidimos abandonar o resfriamento extremo do ar em favor do líquido (a seguir denominado "água"), para o qual planejamos gradualmente transferir servidores para o projeto Bitrix.Turbo. O progresso não pára e é maravilhoso.

Como resultado, a transição para o resfriamento a água tornou possível aumentar o desempenho do Intel i9-9900K e do Intel Xeon E-2288G, sem ultrapassar o limite de temperatura de 65 graus na carga contínua máxima em todos os fluxos. Tendo passado muito tempo trabalhando em todas as possibilidades, bem como em todas as situações de emergência possíveis e até impossíveis (eu era muito cético em relação à "água"), tendo realizado longos testes com cargas máximas, até fui forçado a concordar que essa solução merece viver por muito tempo e felizmente. Portanto, familiarize-se - a nova taxa de CPU.

As características de desempenho de hardware e software para a nova tarifa

Ferro Plataforma de processador único de unidade única, processador Intel Xeon E-2288G com sistema de refrigeração a água, 64 GB de RAM ECC, subsistema de disco em duas unidades Intel M.2 NVMe em RAID1.

Suave Como usamos os painéis do ISPsystem VMmanager 5, a escolha do SO não é muito rica; portanto, o SO Linux CentOS 7 com Oracle Unbreakable Enterprise Kernel Versão 5 (UEK5) 4.14, qemu 2.12, libvirt 4.5.

Teste


Desta vez, o teste foi realizado em duas execuções.

Primeiro, comparamos os processadores: i9-9900K em "ar", i9-9900K em "água" e E-2288G em "água". Não começamos a realizar um conjunto completo de testes neste último com resfriamento a ar devido à falta de sentido do empreendimento - ficou imediatamente claro o que e como seria. Também não testei o processador Intel Gold 5115, usado nas tarifas Velozes e Furiosos. Esses servidores vêm em uma configuração de processador duplo e em testes multithread, a pureza da comparação é perdida.

Então começamos a testar cinco máquinas virtuais: uma na tarifa Velozes e Furiosos e quatro na CPU. O teste foi realizado com o processador host emulado em um servidor pai vazio (sem vizinhos) nas variações de tarifa “2 núcleos / 4 gig” (esta é a configuração mais popular da configuração comparável em Velozes e Furiosos).



As características de desempenho das plataformas

Tarifa Bitrix Turbo

  • Intel i9-9900K
  • Placa-mãe: Asus PRIME Q370M-C
  • RAM: 16 GB DDR4-2666MT / s Kingston 4 peças
  • SSD: 2TB Intel NVMe M.2 2 peças em RAID1

CPU Tariff Turbo

  • Intel Xeon E-2288G
  • RAM: 16 GB DDR4-2666MT / s Kingston 4 peças
  • SSD: 2TB Intel NVMe M.2 2 peças em RAID1

A lista de testes que foram realizados:

  1. Geekbench
  2. Sysbench
  3. Phoronix Test Suite

Uma descrição detalhada desse complexo está no meu último artigo . Um dia reunirei coragem, acrescentarei detalhes e publicarei separadamente.


Resultados do teste do processador




De acordo com o teste Geekbench no modo single-thread, o Xeon E-2288G está um pouco atrás do i9-9900K - a diferença é de apenas 0,8%. No modo multiencadeado, o i9-9900k já está atrás - em 7,63%.

Outros resultados do teste












Em todos os testes, com exceção do GeekBench, o i9-9900K em "água" é melhor do que ele próprio em "ar". O E-2288G é melhor que seu "progenitor" em todos os testes, exceto no teste GeekBench de rosca única e no teste Apache. Acredito que os resultados desses testes foram afetados pelas otimizações internas do processador, o que nos permitiu embalá-lo em um pacote de calor estável. Em outros testes de thread único, o desempenho está no mesmo nível com um erro - não ultrapassaremos os 5 GHz :-)

Nós estamos indo além.

Teste de servidor virtual


Vamos comparar até cinco máquinas virtuais.

Antes de tudo, como sempre, uma máquina virtual executando o CentOS Linux 7 com o kernel 3.10. Além disso, devido ao fato de o servidor host usar o núcleo Unbreakable Enterprise Kernel Release 5 (UEK5) da Oracle, que permite aumentar o desempenho em novos processadores, vamos ver como o desempenho de uma máquina virtual com o CentOS 7 e o kernel UEK5 (4.14) será alterado na taxa de CPU. Turbo. Se eu já fiz o teste do CentOS 7 com dois kernels diferentes, por que não olhar para os testes aprovados pelas máquinas virtuais em outros sistemas operacionais Linux e em outras versões do kernel? Pegue as versões mais recentes do Ubuntu LTS e Debian: Ubuntu 18.04 (kernel 4.15) e Debian 10 (kernel 4.19).

Então, na linha de partida:

  • Velozes e Furiosos CentOS 7 (3.10),
  • CPU Turbo CentOS 7 (3.10),
  • CPU Turbo CentOS 7 (uek5 4.14)
  • CPU Turbo Ubuntu 18.04 (4.15),
  • CPU Turbo Debian 10 (4.19).

Assim, compararemos duas tarifas e dois CentOS 7 com kernels diferentes e três versões do sistema operacional popular. Há muito tempo que eu queria provocar uma coisa dessas, não sabia em qual artigo colocar :-)

Os testes são os mesmos, bem, eu realmente os amo.

Resultados do teste do servidor virtual




De acordo com os resultados do teste Geekbench no modo single-thread, o primeiro lugar é na CPU da VM. Turbo com o núcleo UEK5. Além disso, a diferença entre Velozes e Furiosos e CPU. Turbo (3.10) já é de 65,02% e com o núcleo UEK5 - todos com 67,01%. A diferença entre CPU, Turbo no Centos 7 e Debian é de 0,2% a favor do UEK5.

No modo multiencadeado, a CPU é a líder, Turbo Debian. Está à frente da CPU: Turbo (3,10) em 2,19% e da CPU. Turbo (UEK) em 1,13%. Ao mesmo tempo, o CPU Turbo (3.10) está à frente de Velozes e Furiosos em 55,48%. A diferença entre CPU, Turbo (UEK) e Velozes e Furiosos chega a 57,13%.

Outros resultados do teste













No teste Geekbench de thread único e multi-thread, bem como nos testes Sysbench, C-ray, OpenSSL, o CentOS 7 com kernels e Debian 10. está aproximadamente no mesmo nível.O Ubuntu 18.04 está em último lugar.

No teste de compactação: Compress-7zip e Compress-bzip - o primeiro lugar no Debian 10, o segundo lugar é compartilhado pelo CentOS 7 com os dois kernels, o terceiro lugar no Ubuntu 18.04.

No teste encode-mp3, os locais foram distribuídos da seguinte forma: Debian 10, Ubuntu 18.04, CentOS 7 UEK5, CentOS 7 com o kernel 3.10.

No teste Himeno de thread único, o CentOS 7 3.10 e o CentOS 7 UEK5 ficaram em primeiro e segundo, o Debian 10 foi o terceiro e o Ubuntu 18.04 foi o quarto com um grande atraso.

No teste ffmpeg, o primeiro lugar é no CentOS 7 UEK5, o segundo no Debian 10, o terceiro lugar é compartilhado pelo CentOS 7 3.10 e Ubuntu 18.04.

No teste John The Ripper, o Debian 10 ficou em primeiro lugar, o segundo com o CentOS 7 com o mesmo resultado, o terceiro com o Ubuntu 18.04.

No teste do Apache, o CentOS7 UEK5 lidera por uma ampla margem, seguido pelo Debian 10, CentOS 7 3.10, Ubuntu 18.04.

No teste do GCC, a diferença entre as VMs na tarifa da CPU.O Turbo é insignificante.

Em todos os testes, a VM ocupa o último lugar na tarifa Velozes e Furiosos - há uma diferença de frequências.



Curiosamente passou no teste de máquinas virtuais. O atraso da VM na tarifa de Velozes e Furiosos era óbvio. Os resultados para VMs com o CentOS 7 com diferentes kernels também foram óbvios: eles deveriam ter sido próximos ou com uma ligeira margem em relação a um kernel mais recente. Somente o teste do Apache foi inesperado. Mas a revelação completa foram os resultados do Debian 10 e Ubuntu 18.04 - liderando na maioria dos testes do Debian 10 e ficando para trás na maioria dos testes do Ubuntu 18.04.

É difícil dizer o que exatamente influencia essa disseminação de resultados. Talvez um kernel e software mais recente. Ou um conjunto de serviços lançados “prontos para o uso”: testes foram realizados em VMs recém-implantadas sem nenhuma configuração. Se o Debian 10 após o lançamento iniciar um número muito pequeno de serviços que podem ser contados nas mãos de duas mãos de um operador experiente de fresadora, o Ubuntu 18.04 não começou a se incluir em uma estrutura tão estreita :-)

Em geral, para aqueles que decidem sobre sua própria experiência para garantir que a nova taxa de CPU.O Turbo seja corretamente chamado de alta velocidade, recomendo levar em consideração dois pontos. Primeiro, o sistema operacional - no Debian, será mais rápido sem xamanismo, com o CentOS 7 também é ótimo, mas se você conjurar com o kernel, é super. Quem se importa em instalar o UEK5 no CentOS 7 - nos comentários. E em segundo lugar, deve-se lembrar que ainda testamos em nós vazios. E isso significa que, sob carga, os resultados serão um pouco diferentes, mas ainda altos. Bom para todos.

Até 3 de outubro, os servidores estão sujeitos à tarifa da CPU. O Turbo pode ser solicitado no site firstvds.ru com um desconto de 25% por 1 mês usando o código promocional HABR_TURBO . O código promocional será gravado à meia-noite de 4 de outubro de 2019. Você também pode fazer o servidor para um teste gratuito de três dias.



PS Em todas as fotos, nosso generalista de RH Sonya.

Testado e escrito por você por Trashwind , administrador sênior do sistema do departamento de operações.

Source: https://habr.com/ru/post/pt468003/


All Articles