Organização de Computadores - Aula 03 - Barreira de potência e multicores

00:22:19
https://www.youtube.com/watch?v=0FK13IR3P9M

Resumen

TLDRA aula aborda a transformação na arquitetura de computadores devido à barreira de potência. Aumentos na frequência de clock, que inicialmente melhoraram o desempenho, também levaram a um aumento na dissipação de calor, resultando no "Power Wall". Essa situação motivou a indústria a desenvolver processadores multicore, permitindo que um número maior de instruções fosse processado simultaneamente. Para aproveitar totalmente essa nova arquitetura, a programação paralela tornou-se essencial, e benchmarks foram introduzidos para medir e comparar o desempenho.

Para llevar

  • 💻 Aumento da frequência de clock levou ao aumento da dissipação de potência.
  • ⚡ A barreira de potência é o limite na eficiência de processadores de alto desempenho.
  • 🔄 Processadores multicore ajudam a aumentar a vazão sem aumentar o clock.
  • 💡 Programação paralela é essencial para explorar o potencial de multicore.
  • 📊 Benchmarks são fundamentais para medir o desempenho de computadores.

Cronología

  • 00:00:00 - 00:05:00

    A aula três aborda a barreira de potência multicore, um ponto crítico no desenvolvimento e avaliação do desempenho computacional. A discussão inicial retoma os conceitos de desempenho em processadores, enfatizando que ele depende da contagem de instruções, ciclos por instrução e tempo de ciclo. O aumento da frequência de clock foi a principal estratégia da indústria para melhorar o desempenho, com a frequência média crescendo de 12 MHz nos anos 80 para 3,6 GHz nos anos 2000. No entanto, o aumento da frequência trouxe desafios significativos de dissipação de potência, obrigando a indústria a reconsiderar as tecnologias de refrigeração e funcionamento dos processadores.

  • 00:05:00 - 00:10:00

    O aumento da frequência de um processador também resulta em maior dissipação de energia, que é calculada em função da carga capacitiva, tensão ao quadrado e frequência. Embora a relação entre frequência e potência seja direta, fatores como a redução da carga capacitiva e a diminuição da tensão operacional ajudaram a contornar essa curva de aumento. A tensão, que caiu de 5V para 1V, foi crucial, mas a continuidade dessa redução enfrenta limites práticos devido a possíveis falhas no funcionamento dos transistores, estabelecendo assim a chamada barreira de potência.”,

  • 00:10:00 - 00:15:00

    A questão das limitações de desempenho levou ao surgimento de processadores multicore no início dos anos 2000. Com o aumento do número de núcleos, a abordagem buscou melhorar a vazão, permitindo que múltiplas tarefas fossem realizadas simultaneamente. No entanto, essa mudança não alterou o tempo de execução dos algoritmos existentes, tornando essencial que a programação fosse adaptada para aproveitar o potencial dos núcleos múltiplos, requerendo paralelização nas operações para reduzir o tempo de execução global.

  • 00:15:00 - 00:22:19

    Benchmarking se tornou uma ferramenta crítica na avaliação de desempenho, exigindo conjuntos de programas que representem fielmente o uso real dos processadores. O desenvolvimento de padrões de benchmark, como os propostos pela SPEC, permite uma avaliação padronizada do desempenho, considerando variações nas aplicações e tipos de processadores, com foco em métricas como tempo de execução e vazão. Essa análise culmina na última parte da aula, que resume a evolução computacional em face das barreiras de potência, destacando a transição para processadores multicore como uma resposta necessária ao paradigma em mudança.

Ver más

Mapa mental

Vídeo de preguntas y respuestas

  • O que é a barreira de potência?

    É a limitação na dissipação de potência dos processadores que impede o aumento da frequência de clock sem aumentar excessivamente o calor.

  • Como a tecnologia evoluiu?

    A frequência de clock dos processadores aumentou significativamente, mas isso veio acompanhado de um aumento proporcional na dissipação de potência.

  • O que são processadores multicore?

    São processadores que possuem múltiplos núcleos de processamento, permitindo maior vazão e eficiência sem aumentar o clock.

  • Qual a importância dos benchmarks?

    Os benchmarks são conjuntos de programas usados para medir e comparar o desempenho de diferentes computadores.

  • O que é a especificação da SPEC?

    É uma entidade que padroniza benchmarks para avaliar o desempenho de processadores.

  • Quais fatores influenciam a dissipação de potência?

    A dissipação de potência depende da frequência, carga capacitiva e tensão dos transistores.

  • Quais foram algumas estratégias para contornar a barreira de potência?

    Adotar processadores multicore para melhorar a vazão e adaptar a programação para executar tarefas em paralelo.

  • A redução da tensão de operação afeta a performance?

    Sim, a redução da tensão contribui para menos dissipação de potencia sem comprometer a operação dos transistores.

  • Qual é a principal métrica de desempenho?

    O tempo de execução é a principal métrica para avaliar o desempenho dos processadores.

  • O que é paralelismo em nível de instrução?

    É a técnica de executar várias instruções simultaneamente para aumentar a eficiência e desempenho do processamento.

Ver más resúmenes de vídeos

Obtén acceso instantáneo a resúmenes gratuitos de vídeos de YouTube gracias a la IA.
Subtítulos
pt
Desplazamiento automático:
  • 00:00:05
    [Música]
  • 00:00:21
    Olá hoje nós temos a aula de número três
  • 00:00:24
    de organização de computadores e nós
  • 00:00:26
    vamos falar de barreira de potência
  • 00:00:28
    multicor que é uma mudança do paradigma
  • 00:00:31
    de desenvolvimento da computação e de
  • 00:00:33
    avaliação de desempenho através dos
  • 00:00:36
    benchmarks bom pra gente lembrar como é
  • 00:00:38
    que a gente finalizou a aula passada né
  • 00:00:41
    Nós estávamos discutindo Justamente a
  • 00:00:43
    questão do desempenho onde nós vimos que
  • 00:00:45
    o desempenho depende da contagem de
  • 00:00:47
    instruções do número de ciclos por
  • 00:00:49
    instruções e do tempo do ciclo de cloque
  • 00:00:52
    daquela implementação do meu processador
  • 00:00:55
    né Ah e nós discutimos também que tudo
  • 00:00:58
    mais sendo o mesmo a melhor maneira ou a
  • 00:01:01
    maneira mais fácil de ganhar o
  • 00:01:03
    desempenho de aumentar o desempenho é
  • 00:01:05
    através do aumento da nossa frequência
  • 00:01:07
    do cloque do processador e foi esse o
  • 00:01:10
    principal motivação da indústria para
  • 00:01:13
    ter melhoria de desempenho foi
  • 00:01:15
    justamente aumentar a frequência de
  • 00:01:18
    cloque desse processador então se nós
  • 00:01:21
    observarmos essa curvinha azul da começo
  • 00:01:24
    da década de 80 a frequência média de um
  • 00:01:26
    processador aqui em torno de 12 MHz essa
  • 00:01:29
    curva vem crescendo quando a gente chega
  • 00:01:32
    aqui nos anos 2000 nós estamos falando
  • 00:01:34
    de
  • 00:01:35
    3.6 GHz de frequência então houve um
  • 00:01:39
    ganho muito grande com relação a essa
  • 00:01:41
    frequência de cloque que permitiu o
  • 00:01:44
    ganho de desempenho desse sistemas
  • 00:01:46
    computacionais ao longo da evolução da
  • 00:01:49
    Computação mas como tudo na engenharia a
  • 00:01:52
    gente tem que pagar algum preço por esse
  • 00:01:54
    ganho né e o preço associado a esse
  • 00:01:56
    ganho de desempenho através do aumento
  • 00:01:58
    da frequência foi justamente o que
  • 00:02:00
    aconteceu com a potência dissipada tá
  • 00:02:03
    então a gente tinha aqui da ordem de
  • 00:02:05
    3.3 W No na década de 80 chegando a esse
  • 00:02:10
    pico em 2004 com o pen 4 prescot de 103
  • 00:02:15
    w esse Justamente esse aumento nessa
  • 00:02:18
    dissipação de potência fez com que a
  • 00:02:20
    indústria parasse para observar o que
  • 00:02:23
    que estava acontecendo e reavaliar as
  • 00:02:25
    decisões que estavam sendo tomadas do
  • 00:02:27
    ponto de vista de tecnologia porque
  • 00:02:29
    dissipar 100 w de calor de um
  • 00:02:32
    processador né é muito é muito trabalho
  • 00:02:36
    né Não adianta só trocar a ventilação o
  • 00:02:39
    sistema de ventilação desse processador
  • 00:02:41
    Ah se continuasse aumentando dessa forma
  • 00:02:46
    essa essa potência do processador e o
  • 00:02:48
    calor que teria que ser dissipado
  • 00:02:50
    simplesmente essas sistemas de
  • 00:02:51
    ventilação que a gente tem não
  • 00:02:52
    resolveriam para alguns sistemas de aut
  • 00:02:55
    desempenho alguns
  • 00:02:56
    supercomputadores a gente chegou a ter
  • 00:02:58
    sistemas que faziam refrigeração a água
  • 00:03:00
    dentro do desse supercomputador para
  • 00:03:03
    poder reduzir o calor que tinha ali
  • 00:03:04
    dentro até porque se esse calor é muito
  • 00:03:07
    grande o transistor né o nosso elemento
  • 00:03:10
    a nossa chave ali dentro do processador
  • 00:03:12
    vai deixar de funcionar corretamente se
  • 00:03:14
    esse transistor não tá funcionando
  • 00:03:15
    corretamente por causa do calor o
  • 00:03:17
    processador não vai agir não vai fazer
  • 00:03:19
    as contas não vai seguir as instruções
  • 00:03:20
    da maneira que ele deveria e a gente vai
  • 00:03:23
    ter problemas de funcionamento Então
  • 00:03:25
    esse ponto aqui onde a gente tem esse
  • 00:03:27
    esse limite de dissipação de esse limite
  • 00:03:31
    de potência né associado a um único
  • 00:03:33
    processador fez com que a indústria rev
  • 00:03:36
    reavaliar a maneira de implementar esses
  • 00:03:39
    processadores para não continuar
  • 00:03:42
    Crescendo com essa dissipação de
  • 00:03:44
    potência bom como é que a gente faz para
  • 00:03:47
    calcular para saber qual é a potência
  • 00:03:49
    que um determinado processador vai
  • 00:03:51
    dissipar primeiro aspecto eu preciso
  • 00:03:53
    determinar Qual é a tecnologia que esse
  • 00:03:55
    processador utiliza quando a gente olha
  • 00:03:58
    as implementa ações das últimas décadas
  • 00:04:01
    aí desde das da década de 80 que é o que
  • 00:04:03
    tá apresentado no nosso gráfico anterior
  • 00:04:06
    a gente tá utilizando a tecnologia semos
  • 00:04:09
    se eu tivesse utilizando tecnologia ttl
  • 00:04:11
    que é uma tecnologia Ah que foi
  • 00:04:13
    utilizada anteriormente teria uma
  • 00:04:15
    fórmula diferente de calcular se a
  • 00:04:17
    indústria da eletrônica utilizar uma
  • 00:04:19
    nova desenvolver uma nova tecnologia que
  • 00:04:21
    ven a substituir a tecnologia atual vai
  • 00:04:24
    ser uma outra maneira de calcular essa
  • 00:04:26
    essa potência dissipada bom no caso da
  • 00:04:28
    tecnologia semos a fonte primária de
  • 00:04:31
    dissipação de potência é o chaveamento
  • 00:04:33
    do transistor o transistor é o nosso
  • 00:04:35
    elemento base para representar os zeros
  • 00:04:38
    e zooms que o processador é capaz de
  • 00:04:40
    entender ele funciona como uma chave
  • 00:04:42
    liga desliga e justamente nesse
  • 00:04:45
    chaveamento entre mudar de zero para um
  • 00:04:47
    ou de um para zero é que ocorre a
  • 00:04:49
    dissipação da energia ou a essa essa
  • 00:04:52
    geração de energia né essa perda de
  • 00:04:54
    energia no transistor portanto a perda
  • 00:04:58
    de energia depende da da frequência né
  • 00:05:00
    nessa frequência que a gente tem por
  • 00:05:02
    exemplo de 3 GHz do processador quer
  • 00:05:04
    dizer que ele tá fazendo operações ele
  • 00:05:06
    pode estar mudando de zero para um de um
  • 00:05:07
    para zero nessa frequência então quanto
  • 00:05:10
    maior a minha frequência maior a
  • 00:05:12
    dissipação de energia então a fórmula
  • 00:05:14
    que vai reduzir essa potência Ela
  • 00:05:16
    depende da carga capacitiva tensão ao
  • 00:05:18
    quadrado e da frequência Então se a
  • 00:05:21
    gente voltar aqui no nosso
  • 00:05:24
    gráfico a medida que essa frequência
  • 00:05:27
    aumentou eu tive um aumento da potência
  • 00:05:31
    também tá Porque existe uma relação
  • 00:05:34
    direta entre frequência e potência mas
  • 00:05:36
    aí a gente olha aqui fala Poxa mas não
  • 00:05:38
    tá aumentando iguais as curvas já que
  • 00:05:41
    esse relacionamento é um relacionamento
  • 00:05:42
    direto é proporcional bom Por que que
  • 00:05:45
    não houve Esse aumento da mesma forma
  • 00:05:48
    por causa dos outros componentes a gente
  • 00:05:50
    tem aqui a carga capacitiva e a tensão
  • 00:05:52
    ao quadrado bom carga capacitiva o que
  • 00:05:55
    que é isso Isso é uma característica da
  • 00:05:58
    minha tecnologia depende Depende de como
  • 00:06:00
    eu vou interligar os meus transistores
  • 00:06:02
    os meus elementos dentro do meu
  • 00:06:03
    processador então o pessoal de
  • 00:06:05
    eletrônica trabalha nessa área
  • 00:06:07
    justamente tá e ao longo do tempo houve
  • 00:06:10
    mudanças nas tecnologias na eletrônica e
  • 00:06:13
    houve uma redução da carga
  • 00:06:16
    capacitiva bom e a tensão bom a tensão
  • 00:06:22
    ela foi reduzida ao longo dessa evolução
  • 00:06:24
    de 5 v para 1 V Ah mas lá na aula de
  • 00:06:27
    eletrônica a gente viu que funcionava
  • 00:06:28
    com c volt transistor Sim essa é a regra
  • 00:06:32
    de funcionamento geral mas graças à
  • 00:06:34
    teoria de escala de denard que foi
  • 00:06:35
    proposta na década de 70 Ah Ele discutiu
  • 00:06:38
    uma maneira de mexer na geometria do
  • 00:06:40
    transistor e conseguir reduzir essa
  • 00:06:42
    tensão de operação sem que houvesse
  • 00:06:45
    perda da capacidade de funcionamento do
  • 00:06:47
    transistor como uma chave que é o que a
  • 00:06:49
    gente precisa aqui no processador Então
  • 00:06:51
    graças a essa redução da tensão de 5 v
  • 00:06:54
    para 1 V dado que a tensão tem uma
  • 00:06:57
    influência quadrática isso fez com que a
  • 00:06:59
    curva não tivesse essa relação direta de
  • 00:07:02
    crescimento de frequência e de potência
  • 00:07:04
    que a gente vê no gráfico então por isso
  • 00:07:07
    que ah a gente teve essa aumento da
  • 00:07:10
    frequência em torno de 1000 1000 vezes
  • 00:07:12
    né nesse período de tempo mas por causa
  • 00:07:15
    dessa redução da tensão e por conta
  • 00:07:18
    também da mudança da tecnologia da carga
  • 00:07:20
    capacitiva é que essas curvas não
  • 00:07:21
    cresceram da mesma forma bom a gente
  • 00:07:24
    pode continuar diminuindo a tensão a
  • 00:07:26
    gente vai se perguntar se já diminuiu de
  • 00:07:28
    cinco para um porque não diminuir mais
  • 00:07:29
    um pouco e aí a gente tem um pequeno
  • 00:07:32
    problema não com as nossas tecnologias
  • 00:07:35
    não dá para eu continuar diminuindo essa
  • 00:07:38
    tensão e garantindo que o meu transistor
  • 00:07:40
    vai operar da forma correta tá isso pode
  • 00:07:43
    ter vazamento de corrente pode ter uma
  • 00:07:44
    série de outros problemas ligados à
  • 00:07:46
    eletrônica certamente o pessoal que
  • 00:07:48
    trabalha com isso tá buscando
  • 00:07:49
    alternativas tá buscando estratégias Mas
  • 00:07:51
    a gente não tem como em princípio
  • 00:07:53
    reduzir mais essa tensão de operação a
  • 00:07:56
    carga capacitiva ainda tem uma certa
  • 00:07:58
    diminuição por conta conta dos avanços
  • 00:07:59
    da eletrônica mas não é nada que vá
  • 00:08:02
    compensar Esse aumento significativo da
  • 00:08:05
    frequência que nós gostaríamos de ter
  • 00:08:07
    para ter essa relação Direta com o ganho
  • 00:08:08
    de desempenho então justamente por essa
  • 00:08:11
    composição de fatores é que a gente
  • 00:08:13
    chegou no que a gente chama de barreira
  • 00:08:15
    de potência ou no inglês o Power wall eu
  • 00:08:17
    não consigo mais diminuir essa potência
  • 00:08:20
    para menos de 100 w na operação do meu
  • 00:08:22
    processador Então como que eu vou fazer
  • 00:08:24
    para continuar tendo ganho de desempenho
  • 00:08:27
    como que a gente vai fazer para
  • 00:08:28
    continuar tendo essa evolução na
  • 00:08:30
    computação bom de volta paraa prancheta
  • 00:08:33
    vamos pensar em novas estratégias novas
  • 00:08:36
    alternativas é sempre conveniente antes
  • 00:08:39
    de pensar em novas estratégias novas
  • 00:08:41
    alternativas a gente olhar a visão do
  • 00:08:43
    que aconteceu no passado então de novo
  • 00:08:45
    olhando aqui nesse gráfico a gente tem
  • 00:08:47
    final da década de 70 até os anos metade
  • 00:08:50
    da década de 2000 aqui a gente observa o
  • 00:08:53
    ganho de desempenho com relação ao vax
  • 00:08:57
    11780 como como uma referência ao longo
  • 00:09:00
    da evolução dessa desses diversos
  • 00:09:03
    computadores então até a metade da
  • 00:09:05
    década de 80 a gente teve ganhos de
  • 00:09:08
    desempenho relacionados principalmente à
  • 00:09:11
    tecnologia então melhoria nos sistemas
  • 00:09:13
    de eletrônicos então Eh o uso desses
  • 00:09:17
    sistemas o empacotamento desses
  • 00:09:19
    transistores então uma taxa de
  • 00:09:21
    crescimento de 25% ao ano a partir da
  • 00:09:24
    meados da década de 80 até começos dos
  • 00:09:27
    anos 2000 foi onde a gente teve um ganho
  • 00:09:29
    de desempenho significativo em torno de
  • 00:09:31
    50% ao ano e aqui é justamente onde a
  • 00:09:34
    arquitetura de computadores a área de
  • 00:09:36
    organização de computadores teve uma
  • 00:09:38
    contribuição significativa porque veio a
  • 00:09:40
    ideia novas ideias de como organizar
  • 00:09:42
    esse esse sistema Esse processador de
  • 00:09:45
    como mexer no processador lidar com
  • 00:09:47
    hierarquia de memória a ideia de
  • 00:09:49
    pipeline ah melhorar o sistema de
  • 00:09:52
    comunicação entre os processos entre os
  • 00:09:54
    dispositivos dentro de um processador
  • 00:09:56
    então toda essa evolução que eu Ouve na
  • 00:09:59
    área de organização e arquitetura de
  • 00:10:00
    computadores foi que permitiu que a
  • 00:10:02
    gente tivesse esse
  • 00:10:03
    crescimento quando chegou mais ou menos
  • 00:10:06
    no começo dos anos 2000 essas evoluções
  • 00:10:08
    né Essas organizações avançadas já não
  • 00:10:11
    permitiam mais esse ganho tão
  • 00:10:12
    significativo de desempenho Ah aqui
  • 00:10:15
    aparece a ideia de paralelismo em nível
  • 00:10:16
    de instrução teve algum ganho de
  • 00:10:18
    desempenho Só que essa velocidade do
  • 00:10:20
    processador quando comparada a
  • 00:10:23
    velocidade ao tempo de acesso das nossas
  • 00:10:25
    memórias trouxe uma limitação então se
  • 00:10:28
    eu tenho um processador operando uma
  • 00:10:30
    taxa de 3 4 GHz e o tempo de acesso à
  • 00:10:34
    minha memória é da ordem de 50 nanos
  • 00:10:37
    segundos existe um descompasso entre o
  • 00:10:40
    tempo de acesso desses elementos o
  • 00:10:42
    processador está muito mais rápido do
  • 00:10:44
    que a memória Então existe uma limitação
  • 00:10:47
    no nesse acesso à memória que vai
  • 00:10:49
    limitar como que esse processador pode
  • 00:10:51
    se desenvolver pode executar as tarefas
  • 00:10:53
    porque eu preciso Oler as instruções que
  • 00:10:55
    o processador vai executar para poder
  • 00:10:57
    falar para Esse processador executar
  • 00:10:59
    então Houve essa limitação que fez o
  • 00:11:01
    crescimento fosse da ordem de 20% ao ano
  • 00:11:04
    isso somada a nossa barreira de energia
  • 00:11:07
    né que eu não posso continuar aumentando
  • 00:11:08
    a frequência para ter esse Gane de
  • 00:11:10
    desempenho fez com que os pesquisadores
  • 00:11:13
    e a indústria na área de computação de
  • 00:11:16
    desculpa na área de arquitetura de
  • 00:11:17
    computadores reavaliem a maneira de ter
  • 00:11:20
    ganho de desempenho não dá mais para eu
  • 00:11:22
    continuar aumentando o clock não tem
  • 00:11:24
    muito mais como mexer nessa organização
  • 00:11:26
    interna do processador para ter ganho de
  • 00:11:28
    desempenho O que que a gente pode fazer
  • 00:11:30
    o que que a gente pode melhorar aí então
  • 00:11:33
    a gente lembra das nossas métricas de
  • 00:11:35
    desempenho né a gente tem duas métricas
  • 00:11:38
    de desempenho principais o tempo de
  • 00:11:40
    execução que é o que a gente vem
  • 00:11:41
    perseguindo e vem olhando nesse nesse
  • 00:11:43
    último ciclo aumentando frequência
  • 00:11:45
    melhorando a organização e a vazão se eu
  • 00:11:49
    não consigo mais melhorar o tempo de
  • 00:11:50
    execução o que que eu posso fazer para
  • 00:11:52
    melhorar a minha vazão para melhorar o
  • 00:11:54
    meu sistema por essa métrica eu posso
  • 00:11:56
    adicionar mais processadores posso
  • 00:11:59
    adicionar mais núcleos de computação e é
  • 00:12:01
    justamente aqui que entra a ideia dos
  • 00:12:03
    processadores multicore que apareceram
  • 00:12:06
    no começo dos anos 2000 2004 2005 então
  • 00:12:10
    se eu não tenho como melhorar o meu
  • 00:12:11
    tempo de execução eu vou melhorar a
  • 00:12:14
    minha vazão a minha quantidade de
  • 00:12:15
    instruções realizadas por unidade de
  • 00:12:17
    tempo então eu vou ao invés de ter um
  • 00:12:19
    único processador um único núcleo
  • 00:12:21
    computacional um núcleo de processador
  • 00:12:23
    dentro do meu processador eu vou ter
  • 00:12:24
    dois então a gente vai ter lá o primeiro
  • 00:12:28
    primeiro processador que apareceu Ele
  • 00:12:29
    tinha dois núcleos o que que isso quer
  • 00:12:31
    dizer bom se eu tenho dois núcleos eu
  • 00:12:34
    posso em termos de vazão executar o
  • 00:12:36
    dobro de tarefas no limite
  • 00:12:38
    potencialmente mas o que que isso muda
  • 00:12:40
    pro meu tempo de execução em princípio
  • 00:12:43
    se eu pegar o mesmo algoritmo de
  • 00:12:45
    ordenação que eu tinha lá atrás ou o
  • 00:12:47
    mesmo algoritmo sequencial para executar
  • 00:12:49
    não vai mudar o nada o meu tempo de
  • 00:12:50
    execução porque eu não mexi no tempo de
  • 00:12:53
    execução essa mudança de acrescentar
  • 00:12:55
    núcleos está mexendo na capacidade de
  • 00:12:57
    vazão desse process
  • 00:12:59
    ador e ah a indústria quando veio com
  • 00:13:03
    essa abordagem de multicore ela veio com
  • 00:13:06
    o objetivo de dobrar o número de cores
  • 00:13:08
    por processador a cada geração de
  • 00:13:10
    tecnologia ou seja cada vez que a Intel
  • 00:13:12
    muda a sua tecnologia muda a sua fábrica
  • 00:13:15
    ela tem o objetivo de dobrar o número de
  • 00:13:17
    núcleos e isso é mais uma meta para
  • 00:13:19
    tentar manter esse ganho de
  • 00:13:22
    desempenho bom alguns exemplos de
  • 00:13:24
    multicore aqui do ano de 2008 por
  • 00:13:27
    exemplo o AMD opter X4 ele tinha quatro
  • 00:13:30
    núcleos por chip e uma dissipação aqui
  • 00:13:32
    de 120 w frequência em torno de 2.5 GHz
  • 00:13:37
    o Intel ne Hallen que é um contemporâneo
  • 00:13:39
    também trabalhava com quatro núcleos
  • 00:13:41
    frequência em torno de 2.5 GHz e uma
  • 00:13:43
    dissipação de Potência em torno de 100 w
  • 00:13:47
    ah um outra posição diferente foi BM
  • 00:13:50
    Power 6 ele optou por ter dois núcleos
  • 00:13:53
    só que trabalhar com uma frequência de
  • 00:13:54
    4.7 GHz Ou seja eu tenho uma frequência
  • 00:13:57
    mais alta portanto eu vou ter uma
  • 00:13:59
    dissipação maior de potência né Então
  • 00:14:02
    nesse mesmo chip eu vou trabalhar com um
  • 00:14:04
    número menor de núcleos uma abordagem
  • 00:14:07
    bem diferente também é que foi dação
  • 00:14:09
    ultrapark T2 em que ela tinha oito
  • 00:14:11
    núcleos então eu tenho uma densidade
  • 00:14:13
    muito maior de transistores de
  • 00:14:14
    componente naquele chip só que para
  • 00:14:17
    poder manter a frequência em torno de
  • 00:14:19
    desculpa para poder manter a dissipação
  • 00:14:21
    de potência nesse limite de 100 w eles
  • 00:14:24
    reduziram a frequência para 1.4 Então a
  • 00:14:27
    gente tem estratégias diferentes
  • 00:14:29
    adotadas nesses três modelos aqui o
  • 00:14:32
    número de núcleos com frequências
  • 00:14:34
    diferente para tentar se manter nesse
  • 00:14:36
    limite de dissipação de potência que a
  • 00:14:39
    gente consegue fazer a a dissipação do
  • 00:14:41
    calor associada a esses
  • 00:14:44
    processadores bom mas o que que muda a
  • 00:14:47
    hora que eu tá trabalhando com multicor
  • 00:14:49
    né como é que eu faço para ter meu ganho
  • 00:14:51
    de desempenho já que não vai mudar
  • 00:14:52
    significativamente meu tempo de execução
  • 00:14:55
    eu preciso trabalhar explicitamente com
  • 00:14:57
    programação para paralela tá então eu
  • 00:15:00
    não posso mais fazer o meu algoritmo de
  • 00:15:02
    ordenação ou fazer ou resolver o mesmo
  • 00:15:05
    problema da mesma forma que eu resolvi
  • 00:15:08
    esse problema quando eu tinha um único
  • 00:15:10
    processador um único núcleo de maneira
  • 00:15:12
    sequencial eu preciso buscar formas
  • 00:15:14
    Alternativa de resolver o problema para
  • 00:15:16
    que eu possa paralelizar a resolução
  • 00:15:18
    desse problema para que esse problema
  • 00:15:20
    possa ser resolvido com partes dele nos
  • 00:15:23
    diferentes núcleos que eu tenho e aí
  • 00:15:25
    ganhar porque na vazão dessas instruções
  • 00:15:28
    tá então por exemplo numa multiplicação
  • 00:15:30
    de matrizes eu vou distribuir a
  • 00:15:33
    multiplicação de partes da Matriz para
  • 00:15:35
    cada um dos núcleos diferentes e aí sim
  • 00:15:37
    eu vou ter uma redução no tempo de
  • 00:15:39
    execução da minha solução geral porque
  • 00:15:41
    eu fui capaz de paralelizar e ter ganho
  • 00:15:43
    de vazão na resolução dessas partes tá
  • 00:15:47
    Ah o balanceamento de carga entre as
  • 00:15:50
    tarefas não é trivial né quando a gente
  • 00:15:53
    pensa no num programa como é que eu vou
  • 00:15:56
    distribuir essas tarefas eu tenho que
  • 00:15:58
    pens pensar na maneira não só de
  • 00:15:59
    distribuir esses blocos de tarefa mas de
  • 00:16:01
    garantir o sincronismo entre esses
  • 00:16:03
    elementos de
  • 00:16:05
    comunicação bom ah um outro aspecto
  • 00:16:09
    importante pra gente conversar que tá
  • 00:16:11
    tanto relacionado à questão dos
  • 00:16:12
    múltiplos núcleos quanto a própria
  • 00:16:14
    avaliação de desempenho é a ideia dos
  • 00:16:15
    benchmarks eu não posso simplesmente
  • 00:16:17
    pegar o meu algoritmo de ordenação meu
  • 00:16:19
    Bubble sort e sair rodando em todos os
  • 00:16:22
    computadores que eu gostaria de comparar
  • 00:16:24
    o desempenho e achar que isso vai me
  • 00:16:26
    prover um resultado significativo porque
  • 00:16:29
    o Bubble sort ele vai executar um
  • 00:16:31
    determinado conjunto de instruções então
  • 00:16:33
    é importante pra gente buscar um
  • 00:16:36
    conjunto de programas que caracterizem
  • 00:16:39
    bem o usuário médio ou que caracterizem
  • 00:16:42
    bem um determinado tipo de aplicação
  • 00:16:44
    então quando eu vou pensar num desktop
  • 00:16:46
    eu rodo um conjunto de tarefas variadas
  • 00:16:48
    processador de texto navegador a
  • 00:16:52
    compilação de programas então tem várias
  • 00:16:54
    tarefas diferentes que vão estar sendo
  • 00:16:56
    executadas se eu pensar num servidor web
  • 00:16:58
    ele tem um outro conjunto de instruções
  • 00:17:00
    um outro conjunto de acesso da entrada e
  • 00:17:02
    saída diferente então é importante que
  • 00:17:04
    eu tenha um conjunto de programas que
  • 00:17:06
    seja capaz de caracterizar esses tipos
  • 00:17:09
    de acessos diferentes e é isso que tá
  • 00:17:11
    por trás da ideia do benchmark né então
  • 00:17:14
    o benchmark é um conjunto de programas
  • 00:17:16
    usado para medir o desempenho de um
  • 00:17:19
    computador bom como é que a gente
  • 00:17:21
    padroniza um benchmark a gente sabe que
  • 00:17:23
    é alguma coisa boa uma primeira entidade
  • 00:17:25
    que apareceu para fazer isso foi a spec
  • 00:17:27
    Standard performance evaluation
  • 00:17:28
    Corporation que é uma associação fundada
  • 00:17:31
    por fabricantes de computador então
  • 00:17:33
    vários desses fabricantes que a gente
  • 00:17:35
    conhece alguns que já não tão mais por
  • 00:17:37
    aqui que as empresas já se foram se
  • 00:17:39
    reuniram e propuseram esses conjunto de
  • 00:17:42
    programas para usar para fazer essa
  • 00:17:44
    avaliação tá
  • 00:17:47
    Ah então por exemplo aqui para vocês
  • 00:17:49
    terem uma ideia a gente tem um conjunto
  • 00:17:51
    de da spec de inteiros tá então esse
  • 00:17:55
    conjunto de programas que estão aqui
  • 00:17:57
    eles têm objetivo de avaliar o uso da
  • 00:18:00
    Minha CPU do meu processador usando
  • 00:18:02
    funções cálculos de inteiros existe um
  • 00:18:04
    outro conjunto específico para ponto
  • 00:18:06
    flutuante por exemplo existem aplicações
  • 00:18:08
    web aplicações de banco de dados e assim
  • 00:18:10
    por diante bom o que que tá dentro desse
  • 00:18:13
    conjunto de aplicações de programas para
  • 00:18:15
    caracterizar inteiros eu tenho
  • 00:18:17
    interpretador de processamento de string
  • 00:18:19
    tem algoritmo de compressão tem outro
  • 00:18:22
    compilador de linguagem C otimização
  • 00:18:24
    combinatória um jogo o jogo go que é um
  • 00:18:27
    jogo que usa até técnica de Inteligência
  • 00:18:29
    Artificial busca de Genoma jogo de
  • 00:18:31
    xadrez simulação de computação quântica
  • 00:18:34
    compressão de vídeo um simulador de
  • 00:18:36
    eventos discreto então foi procurou-se
  • 00:18:39
    buscar uma série de programas que
  • 00:18:42
    estressem componentes diferentes de
  • 00:18:44
    instrução aí eu vou executar cada um
  • 00:18:47
    desses programas vou medir aqui contagem
  • 00:18:50
    de instrução CPI médio quantidade de
  • 00:18:53
    ciclos e vou ter um tempo de execução
  • 00:18:56
    bom a gente tem tempos de execução que
  • 00:18:57
    vão
  • 00:18:58
    desde
  • 00:19:00
    637 Como é o primeiro até 1345 como
  • 00:19:03
    éesse outro variando bem variado em
  • 00:19:06
    função do algoritmo a spec propõe uma
  • 00:19:09
    fórmula de média geométrica tem lá na
  • 00:19:12
    nossa referência no livro texto a gente
  • 00:19:14
    usa essa fórmula geométrica para chegar
  • 00:19:16
    num número por exemplo esse número aqui
  • 00:19:19
    11.7 é um número que caracteriza o
  • 00:19:22
    desempenho do AMD opteron X4 Então se a
  • 00:19:26
    gente for lá no site da spec a gente
  • 00:19:28
    pode pegar qualquer um dos processadores
  • 00:19:30
    e ver qual que do que os fabricantes
  • 00:19:32
    fizeram os testes submeteram pra avalia
  • 00:19:35
    pra exposição público dos dados e ver
  • 00:19:37
    qual que é o número desse processador
  • 00:19:39
    então se você tá na dúvida qual
  • 00:19:40
    processador é mais interessante para
  • 00:19:42
    você você pode olhar Quais são esses
  • 00:19:44
    números e ter essa medida de
  • 00:19:46
    desempenho então é importante a gente
  • 00:19:48
    trabalhar com medidas padronizadas a
  • 00:19:50
    spec trabalha com a benchmarks de
  • 00:19:53
    inteiro benchmarks de fonto flutuante
  • 00:19:55
    tem benchmarks transacionais benchmarks
  • 00:19:57
    web paraa par pares de programação
  • 00:19:59
    paralela existem outros benchmarks e por
  • 00:20:01
    exemplo limpar é um benchmark
  • 00:20:04
    conhecido bom então pra gente concluir
  • 00:20:08
    esse capítulo né esse Conjunto das três
  • 00:20:10
    primeiras aulas a gente tem que pensar
  • 00:20:12
    nas relações que foram estabelecidas na
  • 00:20:15
    evolução que foi a computação né a gente
  • 00:20:18
    começou com computadores de propósito
  • 00:20:19
    específico que tinham que ser
  • 00:20:21
    programados manualmente e hoje a gente
  • 00:20:24
    tem computadores que usam o próprio
  • 00:20:26
    código que leem o próprio código cóigo
  • 00:20:28
    para gerar esses resultados então Houve
  • 00:20:30
    essa evolução houve uma evolução
  • 00:20:32
    significativa de tecnologia houve uma
  • 00:20:34
    redução do custo e desempenho né Por
  • 00:20:37
    causa da tecnologia
  • 00:20:39
    subjacente a gente usa para estudar para
  • 00:20:42
    entender as camadas de abstração as
  • 00:20:44
    camadas hierárquicas principal métrica
  • 00:20:46
    de desempenho é o tempo de execução a
  • 00:20:48
    gente usa os benchmarks como referência
  • 00:20:51
    para programação paralela né para para
  • 00:20:55
    computadores Paralelos a gente observa
  • 00:20:56
    vazão a a vazão é uma métrica que eu
  • 00:20:59
    posso usar para comparar dois
  • 00:21:00
    computadores desde que ele tenham o
  • 00:21:02
    mesmo conjunto de instrução se forem
  • 00:21:04
    computadores de um único núcleo ah e o
  • 00:21:07
    fato da gente ter atingido esse limite
  • 00:21:10
    de barreira de energia de potência né
  • 00:21:12
    esse Power Wall fez com que houvesse
  • 00:21:14
    essa mudança de paradigma E que ao invés
  • 00:21:17
    da gente trabalhar com processadores de
  • 00:21:19
    um único núcleo a gente começou a
  • 00:21:20
    trabalhar com processadores de múltiplos
  • 00:21:22
    núcleos ou
  • 00:21:24
    multicor bom com isso a gente conclui o
  • 00:21:26
    Capítulo um Então a gente tem como
  • 00:21:28
    referências do nosso livro texto as
  • 00:21:30
    sessões de 1.5 a 1.9 a sessão 1.10 ela
  • 00:21:34
    trata da evolução histórica da
  • 00:21:35
    computação e é interessante também como
  • 00:21:38
    conhecimento que seja
  • 00:21:48
    [Música]
  • 00:21:57
    lida
  • 00:22:03
    [Música]
  • 00:22:18
    p
Etiquetas
  • processadores
  • multicore
  • barreira de potência
  • benchmark
  • frequência de clock
  • desempenho
  • programação paralela
  • tensão
  • carga capacitiva
  • eficiência