O IBM Server demora muito para inicializar o UEFI para o SO

10

Eu tenho um par de servidores IBM System x3620. Esses servidores funcionam bem quando finalmente atingem o ponto em que o sistema operacional assume o controle, mas isso os leva para sempre para passar pelo novo sistema de inicialização UEFI ... uns bons cinco minutos ou mais; talvez mais. Eu não tenho tempo, mas é o tipo de coisa onde você pega uma xícara de café enquanto espera e ainda vai quando você volta.

Normalmente, a única vez que eu os fecho é para um ciclo de manutenção mensal (geralmente apenas atualizações do Windows). É um tempo de manutenção embutido e, portanto, os cinco minutos extras não contam para os nossos SLAs e não são nada demais. No entanto, no caso em que eu poderia ter uma interrupção eu gostaria de obter esses 5 minutos de volta. Existe alguma coisa que eu possa fazer para dizer-lhes para ir em frente e arrancar já? Eu já desabilitei tudo o que posso encontrar para desativar as opções extras de inicialização.

    
por Joel Coel 22.08.2011 / 22:57

2 respostas

14

Todas as IBM uEFI Machines levam idades para inicializar, pois após a inicialização do uEFI e a inicialização do módulo, a emulação de BIOS herdada entra em ação e as ROMs de opção PCI-E são executadas, etc. é "normal" em todas as máquinas IBM uEFI - não importa se é um servidor blade ou de rack padrão.

Você pode desativar a inicialização de BIOS herdada, a opção ROMs, otimizar a ordem de inicialização e geralmente manter essa máquina no nível de firmware mais recente oferecido pela IBM.

    
por 22.08.2011 / 23:21
3

Concordo que a implementação legada do System X uEFI é tão dolorosamente lenta que posso até evitar vendê-los como uma plataforma para meus clientes.

Medir o formato IBM no momento em que ele inicia uma inicialização de chave USB legada até que eu receba um prompt do sistema operacional é ridiculamente longo. Eu estou usando o SmartOS (um derivado do illumos / opensolaris para todos os efeitos, uma vez que ele é executado e atua muito como o Solaris 11) que funciona como o filhote de cachorro Linux, por exemplo. Ele carrega um blob "comprimido" de 275MB (o sistema operacional inteiro) e, em seguida, inicializa o sistema operacional na memória. Isso realmente mostra o problema com a implementação uEFI da IBM de inicialização herdada .

  BEG: 1:27:05 pm (start SmartOS USB 2.0 USB key)
  END: 1:33:38 pm (done into running SmartOS - we read 275MB)
  ---
  TOOK:   6:33    (six minutes and 33 seconds - pretty slow - only 0.75MB/sec.)

É quase como se a implementação de UEFI usasse um tamanho de bloco pequeno, como leituras de 512 bytes, em vez de um buffer maior durante as leituras. Quando estiver no SO, posso avaliar o desempenho da chave USB que inicializei, IMHO se o código UEFI da IBM apenas lesse um tamanho de bloco 8192 ou melhor ainda um tamanho de bloco 32768 a inicialização resultante seria super rápida.

Então, uma vez em um sistema operacional SmartOS, eu vi as seguintes características de desempenho para minha chave USB, variando de 512 bytes a 131072 bytes. Parece que o tamanho do bloco 8192 (12,3 MB / seg em um SO inicializado) ou melhor ainda um tamanho de bloco 32768 (20,2 MB / seg em um sistema operacional inicializado) seria boas escolhas. Também parece que um tamanho de bloco de 512 (0.64 MB / s em um sistema operacional inicializado) corresponde muito próximo dos resultados que pareço ter em minhas longas botas.

time dd if=/dev/dsk/c1t0d0p0 of=/dev/null bs=512 count=524288
    524288+0 records in
    524288+0 records out
    real 31m19.499s
    => 00.64MB/sec. on  SmartOS like Solaris 11 (this is the speed of the IBM bios boot speed)

time dd if=/dev/dsk/c1t0d0p0 of=/dev/null bs=1024 count=262144
    262144+0 records in
    262144+0 records out
    real 1m39.989s
    => 02.56MB/sec. SmartOS like Solaris 11

time dd if=/dev/dsk/c1t0d0p0 of=/dev/null bs=2048 count=131072
    131072+0 records in
    131072+0 records out
    real 0m50.215s
    => 05.09MB/sec. SmartOS like Solaris 11

time dd if=/dev/dsk/c1t0d0p0 of=/dev/null bs=4096 count=65536
    65536+0 records in
    65536+0 records out
    real 0m33.056s
    => 07.74MB/sec. SmartOS like Solaris 11

time dd if=/dev/dsk/c1t0d0p0 of=/dev/null bs=8192 count=32768
    32768+0 records in
    32768+0 records out
    real 0m20.757s
    => 12.33MB/sec. SmartOS like Solaris 11

time dd if=/dev/dsk/c1t0d0p0 of=/dev/null bs=32768 count=8192
    8192+0 records in
    8192+0 records out
    real 0m12.785s
    => 20.02MB/sec. on SmartOS like Solaris 11 (as expeected and seen on a Win7 box)

time dd if=/dev/dsk/c1t0d0p0 of=/dev/null bs=131072 count=2048
    2048+0 records in
    2048+0 records out
    real 0m11.532s
    => 22.19MB/sec. SmartOS like Solaris 11

Eu estava usando o seguinte um novo IBM x3550 M3 com UEFI (BIOS) rev 1.13 (ram de 12 GB e um processador Xenon de 2.266 GHz)

    Firmware Type     Version String    Release Date
    IMM               YUOOC7E           09/30/2011
    UEFI              D6E154A           09/23/2011
    DSA               DSYT89P           10/28/2011

Devo dizer que estou muito desapontado com a "velocidade" de inicialização via USB no modo de BIOS legado na implementação de UEFI da IBM.

O pensamento para a minha imagem de 275MB um Supermicro XSCA9F ou um Oracle-Sun X4275 inicializa uma imagem de chave de 275 MB em apenas 32 ou 33 segundos, respectivamente, enquanto o IBM x3550 M3 ocupa 363 segundos para o mesmo imagem (11 vezes mais lenta) .

Esse desempenho é totalmente inaceitável e o problema existe em toda a linha do System X. Eu estive em contato com a IBM e eles apenas dizem tentar uma carga de inicialização uEFI (que é como dizer para mim aprender a especificação UEFI, aprender GRUB2 e escrever seu próprio gerenciador de inicialização personalizado, sim é factível, mas eu não tenho um extra 2 -3 semanas para mexer com essas coisas). Sim, usar uma inicialização uEFI "pura" deve funcionar rápido, mas eu não posso provar isso, no entanto, eu não poderia usar "distros padrão" e também como eu indiquei que seria forçado a escrever meu próprio gerenciador de inicialização.

Esse problema "slow legacy booting" foi relatado por mim no IBM Problem / Ticket # A02PGGK, eu até tentei entrar em contato com o desenvolvedor da uEFI diretamente (acho que é Michael Brinkman) diretamente, no entanto a IBM não parece se importar em reconhecer esta questão e a grande comunidade de pessoas e empresas que são impactadas.

Eu também publiquei uma análise semelhante a um tópico no link que também discute "inicialização lenta" de volta em set. 2009 aqui é o mesmo problema que tenho visto

Boot time is too slow. It take about 20 minutes to boot a VMware ESX when EFI is used, compared to less than 2 minutes with the normal bios

esta é a mesma lentidão 10X ou 11X que eu experimento, espero que algum dia a IBM conserte isso.

Jon Strabala

    
por 02.03.2012 / 18:03

Tags