arm big.little - uspwiki.icmc.usp.br/images/1/15/g10.pdf · arm big.little™ eduardo molina - nº...
TRANSCRIPT
![Page 1: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/1.jpg)
ARM big.LITTLE™
Eduardo Molina - nº USP 10415231Fernanda Maciel Federici - nº USP 10295093Reinaldo Mizutani - nº USP 7062145
![Page 2: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/2.jpg)
AGENDA
▰ Atualização
▰ Utilização
▰ Principais resultados
2
▰ História
▰ ARM big.LITTLE™
▰ Funcionamento
▰ Mudanças
![Page 3: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/3.jpg)
Como ERA ? 3
1
![Page 4: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/4.jpg)
ARM
▰ Anos 90▻ Expansão e auge
▰ Início dos anos 2000▻ Desmoronamento do setor de
tecnologia
▻ Desvalorização geral do mercado
4https://community.arm.com/processors/b/blog/posts/a-brief-history-of-arm-part-2
![Page 5: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/5.jpg)
▰ Era da maturidade 2002 - 2005▻ ARM projetada em SoCs (system on chip)
▻ Mercado de telefones e celulares
▻ ARM tornou-se padrão
▻ Sucesso = Parceria: relação simbiótica de “melhor juntos”
▻ Crescimento: ARM9 -> ARM7 -> ARM9E -> ARM10
▻ Tecnologia ARM10 e ARM11
▻ Processamento: baixa potência e alto desempenho
▻ Triplicou funcionários: de 400 para 1300 em 3 anos. 5
ARM
https://community.arm.com/processors/b/blog/posts/a-brief-history-of-arm-part-2
![Page 6: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/6.jpg)
▰ A nova era dos processadores de Cortex 2005 - 2012▻ Família Cortex
▻ Diversificação da ARM
▻ Cortex-A (ARM11): Aplicações móveis de ponta com maior desempenho
▻ Cortex-R: Processadores de alto desempenho e em tempo real
▻ Cortex-M: Núcleos de baixo consumo de energia e baixo custo para a indústria de microcontroladores
6
ARM
https://community.arm.com/processors/b/blog/posts/a-brief-history-of-arm-part-2
![Page 7: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/7.jpg)
▰ DESAFIO (mercado de smartphones)▻ Aumento de desempenho + manutenção de longa bateria▻ Cortex-A9
▻ Processador multi-core
▻ Faixa dinâmica de processamento
▻ “big.LITTLE” (2011) ▻ Aprimoramento
7
ARM
https://community.arm.com/processors/b/blog/posts/a-brief-history-of-arm-part-2
![Page 8: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/8.jpg)
ARM big.LITTLE™ 8
2
![Page 9: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/9.jpg)
“ ● Arquitetura de processamento heterogênea
● ARM Holdings● 2 tipos de processador
○ “LITTLE”○ “big”
99https://en.wikipedia.org/wiki/ARM_big.LITTLE
![Page 10: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/10.jpg)
“ ● Processadores “LITTLE”
○ Máxima eficiência de energia
● Processadores “big”
○ Alto desempenho de computação
1010https://en.wikipedia.org/wiki/ARM_big.LITTLE
![Page 11: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/11.jpg)
“ ● Compartilham mesma arquitetura de conjunto de instruções (ISA)
● ARM promete até 75% de economia em uso de energia para algumas atividades.
1111https://en.wikipedia.org/wiki/ARM_big.LITTLE
![Page 12: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/12.jpg)
Como FUNCIONA ?12
3
![Page 13: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/13.jpg)
COMO FUNCIONA ?
▰ Todos os núcleos acessam a mesma região de memória
▰ Troca de carga de trabalho entre big e LITTLE
▰ Processador multi-core
▻ Ajuste às necessidades de computação dinâmica
13https://en.wikipedia.org/wiki/ARM_big.LITTLE
![Page 14: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/14.jpg)
14
COMO FUNCIONA ?
big LITTLE
https://developer.arm.com/technologies/big-little
![Page 15: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/15.jpg)
MIGRAÇÃO do estado de EXECUÇÃO
Existem 3 MANEIRAS para os diferentes NÚCLEOS DE PROCESSADOR serem ORGANIZADOS em um design
big.LITTLE
15https://en.wikipedia.org/wiki/ARM_big.LITTLE
![Page 16: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/16.jpg)
▻ Processador organizado em clusters de tamanho idêntico de núcleos "big" ou "LITTLE"
▻ O agendador do S.O pode ver apenas um cluster de cada vez
▻ Este modelo foi implementado no Samsung Exynos 5 Octa (5410)16
1. Clustered Switching (comutação agrupada)
https://en.wikipedia.org/wiki/ARM_big.LITTLE
![Page 17: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/17.jpg)
▻ Cada PAR opera como um núcleo virtual e apenas um núcleo real é (totalmente) ativado, funcionando um de cada vez.
▻ O núcleo “big” é usado quando a demanda é alta e o núcleo “LITTLE” é empregado quando a demanda é baixa.
▻ A comutação é feita através do framework cpufreq
▻ Arranjo mais complexo: 2 “big” e muitos “LITTLE” 17
2. In-kernel switcher (CPU migration)
https://en.wikipedia.org/wiki/ARM_big.LITTLE
![Page 18: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/18.jpg)
▻ Modelo de uso mais poderoso da arquitetura big.LITTLE
▻ Permite o uso de todos os núcleos físicos ao mesmo tempo.
▻ Encadeamentos com alta prioridade ou intensidade computacional são alocados para os núcleos "big", enquanto encadeamentos com menor prioridade ou menor intensidade computacional, são executados pelos núcleos "LITTLE".
▻ Este modelo foi implementado no Samsung Exynos (Exynos 5 Octa (5420, 5422, 5430)), e processadores de aplicativos móveis da Apple,
começando com o Apple A11 .18
3. Heterogeneous multi-processing (global task scheduling)
https://en.wikipedia.org/wiki/ARM_big.LITTLE
![Page 19: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/19.jpg)
O que MUDOU ?19
4
![Page 20: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/20.jpg)
Cortex LITTLE● Apresenta uma pipeline
relativamente simples de 8 estágios ordenados.
● Requer menos transistores○ Grande economia de energia.
● Melhor performance que os processadores da época, mesmo com 4x mais eficiência energética.
O que MUDOU ?
Cortex big● Apresenta uma pipeline complexa,
sem ordem e “multi-issue”. ● Performance 3x melhor que os
processadores da época, com a mesma eficiência energética.
20
![Page 21: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/21.jpg)
Onde é USADO ?21
5
![Page 22: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/22.jpg)
ARM no geral● Consoles portáteis (Game Boy
Advance, Nintendo DS)
● GPS Garmin
● Smartphones (iPhone, Samsung,
Nokia, etc)
● Alguns arduinos
Onde é USADO ?
ARM big.LITTLE● Google Nexux
● Chromebook
● Samsung (Galaxy S9, J4, J6, note)
● Rhaspbery pi
22
![Page 23: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/23.jpg)
Principais RESULTADOS
23
6
![Page 24: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/24.jpg)
24
Principais RESULTADOS
https://www.anandtech.com/show/8957/arm-announces-cortex-a72
![Page 25: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/25.jpg)
25
Principais RESULTADOS
https://www.androidpolice.com/2012/10/30/arm-announces-cortex-a50-series-64-bit-processors-set-to-drive-the-next-era-in-mobile-and-enterprise/
![Page 26: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/26.jpg)
Como está AGORA ?26
7
![Page 27: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/27.jpg)
27
Como está AGORA ?
● Rende muito mais granularidade para configurar os processos dentro do processador
● PORÉM o núcleo da inovação ainda é a utilização de cores diferentes para realizar as tarefas
● A tecnologia big.LITTLE foi aprimorada● Nova arquitetura DynamiQ
○ Permite ajustes finos na combinação do número de cores.
○ 1big 3 little e 1big + 7little são possíveis.
![Page 28: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/28.jpg)
28
THANKS!Any questions?
![Page 29: ARM big.LITTLE - USPwiki.icmc.usp.br/images/1/15/G10.pdf · ARM big.LITTLE™ Eduardo Molina - nº USP 10415231 Fernanda Maciel Federici - nº USP 10295093 Reinaldo Mizutani - nº](https://reader034.vdocuments.pub/reader034/viewer/2022043013/5fafa463d489ba627e2bad78/html5/thumbnails/29.jpg)
REFERÊNCIAS bibliográficas
▰ https://en.wikipedia.org/wiki/ARM_big.LITTLE
▰ https://en.wikipedia.org/wiki/Dynamic_frequency_scaling
▰ https://developer.arm.com/technologies/big-little
▰ https://community.arm.com/processors/b/blog/posts/a-brief-history-of-arm-part-2
▰ https://www.ubergizmo.com/2013/01/what-is-arm-big-little/
▰ https://tecnoblog.net/215594/arm-cortex-a75-a55-processador-mobile/
▰ https://developer.arm.com/products/processors/cortex-a
▰ https://www.pjrc.com/teensy/beta/DDI0403D_arm_architecture_v7m_reference_manual.pdf
▰ https://www.anandtech.com/show/8957/arm-announces-cortex-a72
▰ https://www.androidpolice.com/2012/10/30/arm-announces-cortex-a50-series-64-bit-processors-set-to-drive-t
he-next-era-in-mobile-and-enterprise/29