Gerenciamento de Energia em Sistemas Operacionais - IC

Propaganda
Introdução
Padrões de gerência de energia
Gerência de energia
Gerenciamento de Energia em Sistemas
Operacionais
Crístian Deives dos Santos Viana
Priscila Corrêa Saboia
Instituto de Computação – Universidade Estadual de Campinas
Novembro de 2007
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
1 Introdução
Sistemas operacionais modernos
Motivações para gerência de energia
2 Padrões de gerência de energia
PNPBIOS
APM
ACPI
3 Gerência de energia
Disco rígido
Processador
Hibernação
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Sistemas operacionais modernos
Motivações para gerência de energia
Sistemas operacionais modernos – Tarefas básicas [1]
Controle e alocação de memória (gerência de memória);
Controle e priorização de chamadas de sistema (gerência de
processamento);
Controle de dispositivos de entrada e saída (gerência de
dispositivos);
Controle de arquivos (gerência do sistema de arquivos);
Suporte a redes de computadores (gerência de redes);
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Sistemas operacionais modernos
Motivações para gerência de energia
Sistemas operacionais modernos – Tarefas adicionais
Controle de vários usuários (gerência de usuários);
Suporte a segurança dos dados (criptografia, backup);
Gerência de energia;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Sistemas operacionais modernos
Motivações para gerência de energia
Motivações para gerência de energia
Economia de energia e aumento da vida útil dos periféricos;
Sistemas de gestão de energia de computador são desejados
por muitas razões:
Em sistemas embarcados de dispositivos portáteis: prolongar o
tempo da bateria e reduzir requisitos de dissipação de calor;
Em sistemas desktop: redução do requisito de refrigeração e
redução de ruído;
Em supercomputadores: reduzir os custos operacionais de
energia e refrigeração;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Sistemas operacionais modernos
Motivações para gerência de energia
Motivações para gerência de energia
Baixo consumo de energia ⇒ baixa dissipação de calor
Aumenta estabilidade do sistema;
Poupa dinheiro;
Reduz carga sobre o ambiente;
Tanto os sistemas portáteis, sistemas embarcados, desktop e
os supercomputadores utilizam sistemas operacionais;
Cabe a estes sistemas operacionais garantir que as motivações
sejam alcançadas;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
PNPBIOS
APM
ACPI
Histórico da gerência de energia em SOs
A gerência do uso de energia e as propriedades térmicas eram
muito difíceis e inflexíveis para os sistemas operacionais;
O hardware era controlado por algum tipo de interface BIOS
embarcada
Advanced Power Management (APM);
Plug’n’Play Basic Input Output System (PNPBIOS)
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
PNPBIOS
APM
ACPI
Plug’n’Play Basic Input Output System – PNPBIOS
Não é confiável em muitas situações;
Como o PNPBIOS é uma tecnologia de 16 bits, o sistema
operacional tem que emular 16 bits para fazer a interface
funcionar com os métodos PNPBIOS;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
PNPBIOS
APM
ACPI
Advanced Power Management – APM
Define uma interface de software independente de hardware
para o gerenciamento de energia;
Esconde os detalhes de hardware, permitindo que programas
utilizem APM sem conhecimento da interface do hardware;
Desenvolvido pela Intel e Microsoft, em 1996;
Presente nas versões do Windows anteriores ao Vista;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
PNPBIOS
APM
ACPI
Driver APM
Faz a comunicação do sistema operacional com o BIOS do
computador;
Um driver APM no sistema operacional media o acesso ao
Programa de interface APM no BIOS, que permite o
gerenciamento de energia;
A BIOS APM é oferecida pelo fornecedor do sistema e é
específica à plataforma de hardware;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
PNPBIOS
APM
ACPI
Modelo
Controla o uso de energia baseado na atividade do sistema;
À medida que a atividade diminui, o APM reduz a energia dos
dispositivos que não estão sendo utilizados;
Cinco estados de energia:
Completamente ligado;
APM habilitado;
3 APM standby;
4 APM suspenso;
5 Desligado;
1
2
Diferença principal entre os estados: tempo de latência para
voltar a um estado de trabalho;
Consumo de energia e performance são máximos no estado
“Completamente ligado”
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
PNPBIOS
APM
ACPI
Estados de energia
Completamente ligado
Sistema está funcionando;
Energia do sistema não está sendo gerenciada;
Todos os dispositivos estão funcionando;
APM habilitado
Sistema está funcionando;
Clock do processador fica menor;
A energia dos dispositivos são gerenciadas quando necessário;
APM standby
Sistema pode não estar funcionando;
Maioria dos dispositivos a um baixo nível de energia;
Sistema retorna ao estado “APM habilitado” rapidamente;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
PNPBIOS
APM
ACPI
Estados de energia
APM suspenso
Sistema não está funcionando;
Maioria dos dispositivos estão desligados;
Clock do processador está parado;
Processador está no estado mínimo de energia;
As operações anteriores voltam a funcionar quando o sistema
volta ao estado “APM habilitado”;
Sistema demora um tempo relativamente longo para voltar ao
estado “APM habilitado”;
Desligado
Sistema não está funcionando;
A fonte está desligada;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
PNPBIOS
APM
ACPI
Problemas
O gerenciamento de energia é feito pelo BIOS, e o sistema
operacional não tem nenhum conhecimento dele;
APM é uma tecnologia específica do fornecedor;
A lógica do APM é embarcada no BIOS, e opera fora do
escopo do sistema operacional;
O BIOS APM não possui espaço suficiente para implementar
uma política sofisticada de energia, ou uma que possa se
adaptar bem ao propósito da máquina;
É difícil definir quando se deve ir para o estado “APM
suspenso”;
O BIOS não tem informações dos dispositivos USB, cartões e
dispositivos IEEE 1394 (FireWire);
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
PNPBIOS
APM
ACPI
Advanced Configuration and Power Interface – ACPI
Interface desenvolvida para configuração e gerenciamento de
energia do computador;
Permite o sistema operacional controlar o gerenciamento de
energia (Operating System Power Management – OSPM);
Ao invés do BIOS, como no APM;
Padrão aberto de indústria;
Desenvolvida pela HP, Intel, Microsoft, Phoenix e Toshiba;
Última especificação: 10 de outubro de 2006;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
PNPBIOS
APM
ACPI
Características
Oferece mais controle e flexibilidade para o sistema
operacional;
Na ACPI, o BIOS oferece ao sistema operacional métodos
para controlar diretamente os detalhes de baixo nível do
hardware;
O sistema operacional tem praticamente o controle completo
sobre a economia de energia;
A implementação da ACPI não depende apenas de software,
mas também de hardware compatível;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
PNPBIOS
APM
ACPI
Estados de energia
Estados globais
G0
G1
G2
G3
Funcionando;
Dormindo;
Desligado por software;
Desligado por hardware;
Estados de dispositivo
D0
D1
D2
D3
Completamente ligado;
Estado intermediário, varia com o fabricante;
Estado intermediário, varia com o fabricante;
Desligado;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
PNPBIOS
APM
ACPI
Estados de energia
Estados de processador
C0 Estado operacional;
C1 Suspenso;
C2 Sem clock;
C3 Dormindo;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
PNPBIOS
APM
ACPI
Suporte dos sistemas operacionais
Primeira versão do Windows: Windows 98;
Primeira versão do FreeBSD: 5.0;
Linux, NetBSD e OpenBSD: todos têm pelo menos algum
suporte à ACPI;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Gerência de energia
O sistema operacional decide o que desligar e quando desligar;
Se ele desliga logo que é requisitado, haverá um atraso
importuno até que seja reiniciado;
Se espera muito tempo para desligar um dispositivo, a energia
é desperdiçada por nada;
Encontrar algoritmos e heurísticas que permitam ao sistema
operacional tomar boas decisões sobre o que desligar e
quando;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Gerência do disco rígido
Consome bastante energia para manter o prato rodando;
Uma abordagem simples:
Parar de girar o prato após alguns minutos de inatividade;
Com a chegada de uma nova requisição, o disco é posto
novamente para girar;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Problemas na abordagem simples
Um disco parado leva um certo tempo para voltar a girar na
velocidade apropriada e isso pode reduzir o desempenho do
sistema;
Reiniciar o disco consome considerável energia extra:
Cada disco tem um tempo característico Td;
Supondo que o próximo acesso venha acontecer em um tempo
t;
t < Td – gasta menos energia para manter girando;
t > Td – gasta menos energia manter parado;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Métodos para solução
O número de vezes que o disco é desligado e ligado é
inversamente proporcional à vida do HD;
Se fosse possível uma boa previsão de padrões de acesso
baseado em dados anteriores, o sistema operacional poderia
fazer um desligamento para economia de energia sem diminuir
muito a vida do HD;
Algoritmos se dividem em:
Métodos preditivos;
Métodos estocásticos;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Algoritmo adaptativo para gerenciamento de energia em
um disco rígido
Reduz o consumo de energia com um impacto menor na vida
útil do HD;
É um método preditivo:
Baseia-se na predição de períodos de ociosidade;
Utiliza o conceito de sessão:
Período em que as requisições são muito próximas;
Períodos candidatos a serem desligados (entre sessões);
Algoritmos baseados em sessão podem tirar maior proveito em
sistemas cujos requisitos podem mudar de padrão;
Método prediz o tamanho da sessão por meio de um
algoritmo adaptativo;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Definições
Limiar (τ ) Usado para separar sessões. Se o tempo entre dois
acessos consecutivos diferem de um valor > τ , então,
fazem parte de sessões distintas;
Tamanho da sessão (L) Tempo entre o primeiro acesso e o último
dentro de uma sessão;
Intervalo (l) Intervalo entre sessões. Tempo entre o último acesso
de uma sessão prévia e o primeiro acesso da próxima
sessão;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Figura: Vários valores de limiar.
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Figura: Intervalos para diferentes valores de τ .
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
(Unidade: segundo)
Intermissão
Tamanho
Tempo entre o acesso
em uma sessão
Média
986
59
1,2
Disco rígido
Processador
Hibernação
Mediana
872
48
≪1
Desvio padrão
668
51
6,0
Tabela: Dados estatísticos para τ = 60.
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Figura: Diagrama de transições de estados.
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Resultados
Através do ajuste dinâmico da predição do tamanho da sessão, o
algoritmo consegue “desligar” o HD mais cedo para uma sessão
mais curta, bem como também consegue mantê-lo acordado para
atender a uma sessão mais longa.
Comparação com outros 5 algoritmos
2 outros algoritmos adaptativos;
Algoritmo de tempo fixo: 2 s e 5 min (comumente visto em
desktop);
Um algoritmo guloso: desliga o HD depois de 10 ms de cada
requisição atendida;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
E (energia, J)
S (ciclo de troca)
T. de vida (sem.)
Rotação (s)
T. médio de rot.
T. médio dorm.
E ×S
E /S (eficiência)
Disco rígido
Processador
Hibernação
Adapt. 1
Adapt. 2
Adapt. 3
Fixo (2 s)
Fixo (5 min)
Guloso
2.603.507
6.493
317
789.852
121,6
716,7
1.07
7,52
1.870.586
21.485
93,6
135.357
6,3
247,0
2.54
1,63
1.859.128
22.352
90,0
123.280
5,5
238,0
2.63
1,56
1.846.958
23.330
86,0
129.590
4,7
228,6
2.73
1,49
4.778.338
3.306
626
2.613.312
790
855
1.00
27,11
1.791.558
33.609
58,7
N/A
N/A
160,9
3.81
1,00
Tabela: Comparação entre os algoritmos de gerenciamento de energia
(N/A: não-aplicável).
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Resultados
Comparação com outros 5 algoritmos
Gasta 45% de energia a mais que os outros adaptativos, mas
provê um tempo de vida útil de 6 anos;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Outras soluções
Ajuda de programas
O sistema operacional mantém os programas informados sobre
o estado do disco, enviando sinais ou mensagens;
Programas com escrita programada podem atrasá-las;
Ajuda da memória RAM
Ter um cache substancial de disco em RAM;
Caso um bloco solicitado esteja na cache, um disco ocioso não
precisa ser iniciado;
O disco pode ser mantido desligado até que a cache esteja
cheia ou ocorra uma lacuna na leitura;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Solução para conservação de energia com a utilização de
flash drives
Como mencionado antes, apesar da memória RAM poder ser
usada como um buffer, é indesejável usá-la para economia
pois ela também consome bastante energia.
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Solução para conservação de energia com a utilização de
flash drives
O uso de memória flash se tornou popular;
Além disso, dispositivos de armazenamento não-voláteis não
precisam de energia para manter seus dados como a memória
RAM;
Diferente dos discos rígidos, a memória flash é feita de chips
de estado sólido sem componentes mecânicos como pratos do
HD, que consomem uma quantidade considerável de energia;
Comparado com o de um HD, o consumo de energia de um
drive flash é quase negligível: por exemplo, o consumo de
energia no modo standby do drive flash é 1% em relação ao
HD;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Solução para conservação de energia com a utilização de
flash drives
A solução proposta [2] utiliza-se de um dispositivo de baixo
custo – flash drive – para alcançar o objetivo de economizar
energia consumida pelo disco;
Esta idéia possui dois obstáculos devido a características
particulares do flash drive:
A taxa de tranferência do flash drive é geralmente muito
menor que a de um HD;
O flash drive possui um número limitado de ciclos de reescrita.
Tipicamente uma célula de memória flash pode “gastar” com
cerca de 100.000 escritas.
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Solução para conservação de energia com a utilização de
flash drives
O SmartSaver usa o flash drive como buffer para caching e
prefetching de dados evitando acesso ao disco;
Comparado com esquemas existentes para economizar a
energia gasta pelo HD, as seguintes vantagens são oferecidas:
Efetivamente aproveita a característica de baixo consumo de
energia do flash drive para economizar energia
Leva as características específicas do flash drive em
consideração
É projetado para ser utilizado em diversos SOs com poucas
mudanças no kernel dos mesmos
Os testes executados demonstraram que energia considerável
foi economizada, prolongando o tempo idle do HD
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Solução para conservação de energia com a utilização de
flash drives
Uma abordagem simples seria usar o flash drive como uma
nova camada entre a RAM e o HD. Esta política de
“cache-all” simplesmente faz cache de todos os bytes lidos do
disco ou removidos da memória.
Esta abordagem possui as seguintes deficiências, que foram
evitadas na solução proposta:
A taxa de transferência do flash drive é geralmente menor que
a do HD, fazendo que ele se torne o gargalo do sistema
Esta abordagem guarda dados que serão pouco acessados
Dois tipos de dados que prioriza-se guardar não recebem
tratamento especial: dados que são reusados freqüentemente e
dados que movem-se lentamente do/para o HD
Procura-se não substituir estes tipos de dados quando o flash
drive está cheio, o que esta abordagem também não trata.
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Solução para conservação de energia com a utilização de
flash drives
Dois princípios são considerados nesta proposta:
Um flash drive não é simplesmente um “HD menor” ou uma
“memória maior”. A taxa de transferência menor e o limite do
número de reescritas devem ser levados em conta
Precisa-se balancear o benefício de quanta energia é
economizada com o custo da memória obtida
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Solução para conservação de energia com a utilização de
flash drives
A solução proposta divide o espaço do flash drive em três
áreas:
Cache, para armazenar dados que possivelmente serão
reusados
Prefetch, para armazenar dados pré-carregados do HD
Write-back, para armazenar temporariamente “dirty blocks”
removidos da memória
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Solução para conservação de energia com a utilização de
flash drives
Para medir quantitativamente o potencial de conservação de
energia quando evitando um período busy, apresenta-se a
métrica Energy Saving Rate (ESR)
ESR é a energia que poderia ser economizada se um período
busy fosse evitado sobre a quantidade de dados acessados
durante este período.
ESR = Energia gasta em um período busy - Energia gasta em
um período quiet de mesma duração
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Solução para conservação de energia com a utilização de
flash drives
É importante gerenciar todos os blocos por completo durante
um período busy ;
Para isto, o SmartSaver usa uma estrutura de dados, chamada
envelope, para guardar metadados sobre todos os acessos a
blocos de dados durante tal período;
Cada envelope é associado um período busy ;
Quando um bloco é requerido do disco durante um período
busy, seus metadados são gravados no envelope
correspondente.
Os blocos em um envelope são organizados na ordem LRU
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Solução para conservação de energia com a utilização de
flash drives
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Solução para conservação de energia com a utilização de
flash drives
Quando um período busy é completado, seu ESR é calculado;
Se a decisão é de fazer CASH do envelope, todos os blocos de
dados são mantidos no flash drive para manter a integridade
do período ocupado;
Os envelopes são colocados em uma fila chamada pilha de
envelope;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Solução para conservação de energia com a utilização de
flash drives
Quando não há mais espaço na pilha, é necessário identificar
os blocos de menor valor em relação à energia poupada;
Somente a ESR não é suficiente, pois o bloco de menor valor
pode ser o mais acessado;
Avalia e compara valores de blocos segundo essas duas
métricas;
A política de atualização quando o envelope é inserido;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Gerência do processador
Executar um processador à sua máxima freqüência permite
obter máximo desempenho;
Se ele for executado a uma freqüência inferior, gera menos
calor e consome menos energia;
É possível também reduzir a voltagem, dependendo das
necessidades do usuário;
Diminuindo mais ainda a geração de calor e o consumo de
energia;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Gerência do processador
Dynamic Voltage and Frequency Scaling – DVFS;
Conserva a energia da bateria de um laptop;
Aumenta a vida útil do processador;
Reduz ruídos;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Balanceamento do consumo de energia do processador
Quando está executando uma tarefa, o processador emite
calor e aumenta sua temperatura;
O aumento de temperatura diminui a vida útil do processador;
Solução: diminuir a freqüência e a voltagem;
Mas isso também diminui a performance;
Em máquinas com vários processadores, o sistema operacional
poderia escalonar os processos entre eles [3];
Dessa forma, os processadores mantêm uma mesma
temperatura média;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Conceitos
Hot task: tarefa que exige grande consumo de energia do
processador;
Cool task: tarefa que exige pouco consumo de energia do
processador;
Hot processor: processador sobrecarregado, geralmente
executando mais tarefas do que os outros processadores;
Cool processor: processador sub-utilizado, geralmente
executando menos tarefas do que os outros processadores;
Perfil de energia: conjunto de características da “energia” de
uma tarefa, que indica se ela é hot ou cool em um dado
intervalo de tempo;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Perfil de energia
A quantidade de energia exigida por uma tarefa é variável;
Depende do intervalo de tempo;
Depende das instruções executadas;
Depende da entrada do usuário;
Existe um método que calcula a energia utilizada por uma
tarefa em um dado momento;
Esse método erra em menos de 10% das aplicações testadas;
Seria bom se a quantidade de energia de uma tarefa em um
momento futuro pudesse ser calculada;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Escalonamento de tarefas
O escalonador de tarefas comum pode colocar vários
processos hot em um mesmo processador ou vários processos
cool em um mesmo processador;
Fazendo com que um processador fique hot ou cool;
O escalonador pode levar em consideração o perfil de energia
das tarefas para tomar suas decisões;
Para calcular a energia de uma atividade em um momento
futuro, a solução considera que ela é parecida com a energia
dos instantes de tempo anteriores;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Programa
bash
bzip2
grep
sshd
openssl
Máximo
19,0%
88,8%
84,3%
18,3%
63,2%
Disco rígido
Processador
Hibernação
Variação média
2,05%
5,45%
1,06%
1,38%
2,48%
Tabela: Mudança no consumo de energia durante fatias de tempo
sucessivas.
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Algoritmos de escalonamento
Balanceamento de energia
Aplicado quando há múltiplas tarefas;
Equilibra a energia das tarefas no processador;
Executado por cada processador;
Migração de hot task
Aplicado quando há uma única tarefa;
Move a tarefa para um processador mais cool;
Ambas as abordagens são limitadas por uma temperatura;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Avaliação
Os dois algoritmos foram integrados no Linux kernel 2.6.10;
A estrutura task_struct foi modificada para armazenar o
perfil de energia da tarefa;
A estrutura runqueue foi modificada para armazenar a energia
máxima suportada por cada processador;
Aproximadamente 2.000 linhas de código modificadas;
Computador: IBM xSeries 445, com 8 processadores Pentium
4 Xeon 2.2 GHz;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Figura: Potência dissipada dos 8 processadores com balanceamento de
energia desabilitado (máximo: 60W).
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Figura: Potência dissipada dos 8 processadores com balanceamento de
energia habilitado (máximo: 60W).
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Figura: Migração de hot task de uma única tarefa.
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Tecnologias de economia de energia de processador
SpeedStep
PowerNow!
Cool’n’Quiet
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
SpeedStep
Tecnologia desenvolvida pela Intel;
Apenas para processadores de computadores móveis;
Se estiver conectado a uma saída de energia, o processador é
executado na freqüência máxima;
Se estiver funcionando pela bateria, o sistema diminui a
freqüência e a voltagem do processador;
No Windows XP, está relacionado com os esquemas de
energia:
“Portável/Laptop”: habilita o SpeedStep;
“Casa/Escritório”: desabilita o SpeedStep;
Integrado no kernel do Linux e do MacOS;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
PowerNow! e Cool’n’Quiet
PowerNow!
Tecnologia de diminuição de energia de processador para
processadores móveis da AMD;
Quando o computador está ocioso, diminui a freqüência e a
voltagem;
Similar à tecnologia SpeedStep da Intel;
Cool’n’Quiet
Tecnologia também desenvolvida pela AMD;
Voltada para processadores de desktops e servidores;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Hibernação
Recurso do sistema operacional de armazenar o conteúdo da
memória RAM em um dispositivo não-volátil (disco rígido)
antes de desligar o computador;
Voltar de uma hibernação é bem mais rápido que ligar o
computador;
O sistema volta exatamente ao estado no qual ele estava
antes de hibernar;
O conteúdo que foi armazenado no disco rígido é carregado de
volta para a memória RAM;
Espaço necessário
É necessário pelo menos um espaço no disco rígido igual à
quantidade de memória RAM no sistema;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Vantagens
Quando o computador está hibernando, ele na verdade está
desligado;
Não consome nenhuma energia;
Ideal para laptops;
Pode ser ativada automaticamente quando a bateria do
computador acaba ou está perto de acabar;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Suporte no Windows
A partir do Windows 2000;
hiberfil.sys;
Geralmente, só é suportada se todos os dispositivos forem
PnP e todos os drivers forem compatíveis com PnP;
Example
No Windows Vista, existe também um recurso chamado “Dormir
híbrido”:
O computador entra no estado “Dormir” (os dispositivos
ficam em modo de consumo de energia baixo);
O conteúdo da memória RAM é salvo no disco rígido, para
recuperar os dados caso ocorra uma queda de energia;
Mistura de “Dormir” com “Hibernar”;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Suporte no Linux e no MacOS
Linux
Incluído no kernel, a partir do 2.6;
Módulo swsusp;
Na versão 2.4, é possível utilizar o TuxOnIce;
MacOS
Recurso chamado “Safe Sleep”;
Semelhante ao “Dormir híbrido” no Windows Vista;
Funciona implicitamente quando o sistema está no estado
“Sleep”;
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Referências bibliográficas
Andrew S. Tanenbaum.
Sistemas Operacionais Modernos.
2003.
Feng Chen, Song Jiang, and Xiaodong Zhang.
Smartsaver: Turning flash driver into a disk energy saver for
mobile computers.
2006.
Andreas Merkel and Frank Bellosa.
Balancing power consumption in multiprocessor systems.
pages 403–414, 2006.
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Introdução
Padrões de gerência de energia
Gerência de energia
Disco rígido
Processador
Hibernação
Fim
Obrigado pela atenção!
Crístian Viana e Priscila Saboia
Gerenciamento de Energia em Sistemas Operacionais
Download