• Nenhum resultado encontrado

Oportunidades para economia de energia em dispositivos móveis

N/A
N/A
Protected

Academic year: 2021

Share "Oportunidades para economia de energia em dispositivos móveis"

Copied!
6
0
0

Texto

(1)

Oportunidades para economia de energia em dispositivos m´oveis

Jo˜ao H. S. Hoffmam, Tiago Barros, Sandro Rigo e Edson Borin

1

Instituto de Computac¸˜ao – UNICAMP Campinas – SP – Brasil

Abstract. This paper investigates the usage of parallel code in mobile devices and its correlaction with the energy consumption of those equipments, working with some experiments with different frequencies and number of cores operating.

The results show the advantages of paralelization and the possibility of improving energy savings even further by a careful selection of core operation frequencies combined with the code paralelization.

Resumo. Este artigo investiga o uso de c´odigo paralelo em dispositivos m´oveis e a sua relac¸˜ao com o consumo energ´etico desses equipamentos, baseando-se em experimentos realizados com diferentes frequˆencias e n´umero de n´ucleos de pro- cessamento. Os resultados mostram as vantagens da paralelizac¸˜ao e tamb´em a possibilidade de tornar a reduc¸˜ao do consumo de energia ainda maior atrav´es de uma selec¸˜ao cuidadosa das frequˆencias de operac¸˜ao dos n´ucleos combinada com a paralelizac¸˜ao das aplicac¸˜oes.

1. Introduc¸˜ao

Dispositivos m´oveis representam uma grande revoluc¸˜ao: equipamentos como smartphones e tablets foram respons´aveis pelo surgimento de uma nova forma de pensar e usar a tecnologia, conquistaram uma grande e lucrativa parte dos mercados e trouxeram novos desafios para a ciˆencia. A conjuntura atual requer que tais dispositivos apresentem desempenho cada vez melhor, ao mesmo tempo que a autonomia da bateria deve ser suficiente para o uso cotidiano sem restric¸˜oes.

Neste trabalho, a execuc¸˜ao de c´odigo paralelo em dispositivos m´oveis com m´ultiplos n´ucleos de processamento foi explorada, a identificar como ela pode afetar a potˆencia, o consumo de energia e o desempenho do sistema.

Os resultados indicam que uma reduc¸˜ao consider´avel no consumo energ´etico pode ser alcanc¸ada sem a gerac¸˜ao de preju´ızos para o desempenho por meio do paralelismo, e at´e mesmo c´odigos menos paraleliz´aveis apresentaram uma regi˜ao de interesse que merece um estudo mais aprofundado.

Este artigo est´a organizado da seguinte forma: a Sec¸˜ao 2 discute os trabalhos re- lacionados. As Sec¸˜oes 3 e 4 apresentam a metodologia e os resultados dos experimentos, respectivamente. Por fim, a Sec¸˜ao 5 apresenta as conclus˜oes e trabalhos futuros.

2. Trabalhos Relacionados

A reduc¸˜ao do consumo energ´etico em dispositivos m´oveis tem sido um forte ramo de pes-

quisa nos ´ultimos anos. Smartphones, tablets e net/note/ultrabooks devem satisfazer, ao

mesmo tempo, as condic¸˜oes de “desempenho” e “autonomia da bateria”, o que gera diversos

(2)

estudos na ´area. Sheikh et al. [Sheikh et al. 2012] trabalharam nesse problema e trouxeram algumas abordagens de outros trabalhos para diferentes cen´arios e processadores (single- core, multi-core, paralelos/distribu´ıdos). Duas importantes considerac¸˜oes s˜ao feitas: n˜ao havia estudos sobre plataformas heterogˆeneas, do mesmo modo que faltavam estudos sobre a gerac¸˜ao de calor desses dispositivos. Basmadjian e de Meer [Basmadjian e de Meer 2012]

estudaram e propuseram uma nova forma de se modelar o consumo de processadores com m´ultiplos n´ucleos, na qual o consumo total se mostrou menor que a soma dos consumos individuais, uma vez que no cen´ario real os n´ucleos compartilham informac¸˜oes.

Bournoutian e Orailoglu [Bournoutian e Orailoglu 2013] propuseram um meca- nismo capaz de expandir e contrair o tamanho da cache do processador baseando-se nas informac¸˜oes vindas tanto da compilac¸˜ao quanto da execuc¸˜ao de um c´odigo. Os resultados mostraram uma reduc¸˜ao do consumo de energia de at´e 29% com um impacto m´ınimo no desempenho de processadores para dispositivos m´oveis. Castro et al. [Castro et al. 2013]

compararam um processador com m´ultiplos n´ucleos, uma plataforma NUMA e uma pla- taforma embarcada many-core no problema do caixeiro viajante. Como resultado, a plata- forma embarcada apresentou bom desempenho, perdendo apenas para a plataforma NUMA, mas ofertando um consumo energ´etico entre 9 e 14 vezes menor, o que permitiu a conclus˜ao de que plataformas many-core podem constituir uma excelente soluc¸˜ao para o futuro. En- tretanto, o c´odigo testado n˜ao requeria muita comunicac¸˜ao de dados entre os n´ucleos, e isso n˜ao fora levado em considerac¸˜ao, tornando-se objeto de estudos posteriores. Os cus- tos de comunicac¸˜ao foram estudados por Nishikawa et al. [Nishikawa et al. 2012], os quais compararam uma APU e uma combinac¸˜ao convencional entre CPU e GPU. Os resultados mostraram que o desempenho por Watt foi bastante superior na APU, embora o desempenho propriamente dito tenha sido maior na combinac¸˜ao CPU+GPU. O trabalho conclui que os custos de comunicac¸˜ao tˆem um grande impacto, principalmente nos dispositivos m´oveis, o que torna as APUs forte candidatas para o mercado do futuro.

J´o´zwiak e Jan [J´o´zwiak e Jan 2013] exploram a construc¸˜ao de aceleradores especi- alizados para aplicac¸˜oes de alta demanda e concluem que a paralelizac¸˜ao total ´e a melhor opc¸˜ao para reduzir o consumo energ´etico, enquanto que a serializac¸˜ao ´e a melhor opc¸˜ao para reduzir a ´area do circuito. O n´ıvel de paralelismo tamb´em foi estudado por Tudor e Teo [Tudor e Teo 2012], que propuseram um modelo para avaliar o desempenho e consumo por meio dessa vari´avel.

Vogeleer et al. [Vogeleer et al. 2014] proveem um modelo anal´ıtico para estimar o consumo de energia de uma sequˆencia de c´odigo em um dispositivo m´ovel. Eles validam o modelo com experimentos pr´aticos e mostram que existe uma curva convexa no gr´afico de Energia vs Frequˆencia de operac¸˜ao, indicando que as frequˆencias que resultam em um menor consumo de energia n˜ao s˜ao as menores nem as maiores do dispositivo. Os resultados experimentais deste trabalho indicam que os resultados encontrados por Vogeleer et al. se estendem para outras aplicac¸˜oes e outros dispositivos m´oveis.

3. Metodologia

A fim de explorar como a execuc¸˜ao de c´odigo paralelo em dispositivos m´oveis com m´ultiplos n´ucleos de processamento pode afetar a potˆencia, o consumo de energia e o de- sempenho do sistema, foram utilizados os seguintes materiais:

• Um smartphone Samsung Galaxy S3 (GT-I9300), que cont´em um processador Exy-

nos com 4 n´ucleos baseados na arquitetura Cortex-A9 da ARM, capazes de operar a

(3)

1.4Ghz;

• Uma fonte de alta precis˜ao Minipa (modelo MPL-3305M);

• Um resistor de 0.25 ohm, produzido atrav´es da conex˜ao em paralelo de quatro resis- tores de alta precis˜ao com resistˆencia de 1 ohm;

• Um dispositivo de aquisic¸˜ao de dados NI USB-6212, da National Instruments;

• Uma estac¸˜ao de trabalho para coleta e processamento dos dados produzidos pelo dispositivo de aquisic¸˜ao;

• A su´ıte de aplicativos PARSEC 3.0, que utiliza as t´ecnicas pthreads e openMP para a paralelizac¸˜ao dos benchmarks; e

• O compilador GCC vers˜ao 4.8 para ARM. A vers˜ao utilizada foi configurada para fazer uso das instruc¸˜oes de ponto flutuante do processador (hard-float).

A bateria do smartphone foi removida e os contatos do aparelho foram ligados na fonte de alta precis˜ao em s´erie com o resistor. O dispositivo de aquisic¸˜ao de dados foi conectado aos resistores para coletar amostras da diferenc¸a de potencial dos terminais dos resistores. Estas amostras s˜ao ent˜ao utilizadas para computar a corrente, potˆencia m´edia e consumo de energia em um intervalo curto de tempo (1/1000 segundos).

As aplicac¸˜oes da su´ıte PARSEC foram compiladas com o compilador GCC e as mes- mas foram transferidas para o aparelho celular e executadas atrav´es do aplicativo adb, dis- tribu´ıdo pelos desenvolvedores do sistema operacional Android. O rel´ogio do smartphone teve de ser sincronizado com o da estac¸˜ao de trabalho e foi desenvolvido um script de execuc¸˜ao que registra o hor´ario de in´ıcio e t´ermino da execuc¸˜ao da aplicac¸˜ao, o que permite identificar os pontos de in´ıcio e fim da aplicac¸˜ao nos dados coletados pelo dispositivo de aquisic¸˜ao. Ap´os o disparo da execuc¸˜ao dos aplicativos, o cabo de comunicac¸˜ao entre o dis- positivo m´ovel e a estac¸˜ao de trabalho ´e desconectado para evitar que o mesmo fac¸a uso da energia disponibilizada no cabo de comunicac¸˜ao.

Os testes foram realizados em todas as frequˆencias dispon´ıveis para o smartphone (de 200Mhz a 1.4Ghz em incrementos de 100Mhz), e o modo avi˜ao foi ativado para mini- mizar interferˆencias nos experimentos.

4. Resultados Experimentais

Duas aplicac¸˜oes da su´ıte PARSEC foram selecionadas para este trabalho: “x264” e “Fluida- nimate”. A primeira trabalha com a compress˜ao de um v´ıdeo no padr˜ao MPEG-4 e possui um alto grau de paralelismo. J´a a segunda realiza uma simulac¸˜ao f´ısica de um fluido e possui um grau de paralelismo menor.

As Figuras 1 (a) e (b) apresentam os resultados experimentais para a aplicac¸˜ao

“x264”. A Figura 1 (a) mostra que quanto maior o n´umero de n´ucleos, melhor ´e o de- sempenho energ´etico do sistema, o que ´e teoricamente esperado, visto que a aplicac¸˜ao usada apresenta alta capacidade de paralelizac¸˜ao. O gr´afico da figura tamb´em apresenta uma curva convexa, como sugerido por Vogeleer et al. [Vogeleer et al. 2014].

A Figura 1 (b) apresenta o consumo energ´etico e o desempenho em func¸˜ao da

potˆencia de cada configurac¸˜ao no experimento com 4 n´ucleos. Conforme pode ser obser-

vado, o tempo de execuc¸˜ao decresce conforme a potˆencia aumenta. Isso ocorre porque os

pontos com maior potˆencia s˜ao associados a maiores frequˆencias de operac¸˜ao. Entretanto,

como a energia ´e uma func¸˜ao integral dependente das vari´aveis tempo e potˆencia, o saldo

final para altas frequˆencias se mostrou quase t˜ao ineficiente quanto para frequˆencias muito

(4)

200 400 600 800 1000 1200 1400

2030405060

Frequência(Mhz)

Energia(J)

1 núcleo 2 núcleos 3 núcleos 4 núcleos

(a) Energia em func¸˜ao da frequˆencia utilizando-se 1, 2, 3 e 4 n´ucleos com- putacionais

0.5 1.0 1.5

1618202224

Potência(W)

Energia(J)

10203040506070

Tempo(s)

Energia Tempo

(b) Energia e tempo em func¸˜ao da potˆencia para a execuc¸˜ao com 4 n´ucleos

Figura 1: Resultados experimentais para a aplicac¸ ˜ao “x264”

baixas. Tamb´em pode ser observada uma regi˜ao ´otima em termos de consumo energ´etico, com potˆencia pr´oxima a 0.8W, na qual a energia gasta ´e aproximadamente 32,7% menor se comparada `a configurac¸˜ao de desempenho equivalente para dois n´ucleos, e cerca de 9,1%

menor caso a comparac¸˜ao seja com a execuc¸˜ao de tempo equivalente em 3 n´ucleos. Se comparado ao melhor tempo para a execuc¸˜ao com 4 n´ucleos, tem-se que a regi˜ao ´otima apresenta uma reduc¸˜ao de consumo da ordem de 30%, embora execute em um tempo cerca de 63,7% maior, o que pode n˜ao ser um problema em aplicac¸˜oes que possam executar mais lentamente sem gerar preju´ızos percept´ıveis ao usu´ario.

E importante observar que, apesar da configurac¸˜ao de 4 n´ucleos com potˆencia de 0.8 ´ W atingir uma boa relac¸˜ao de desempenho e consumo de energia, a produc¸˜ao de calor deve ser levada em considerac¸˜ao, pois o aumento substancial da temperatura do dispositivo pode afetar o conforto do usu´ario ou mesmo comprometer o funcionamento do sistema. Para futuro, existe a pretens˜ao de estudar a variac¸˜ao de temperatura do dispositivo em func¸˜ao da potˆencia exercitada.

As Figuras 2 (a) e (b) apresentam os resultados para a aplicac¸˜ao de animac¸˜ao de fluidos

1

. Pode-se observar uma variac¸˜ao maior nos resultados entre energia e frequˆencia de operac¸˜ao. Entretanto, ainda assim as curvas referentes a 2 e 4 n´ucleos apresentam conve- xidade e, novamente, a configurac¸˜ao com o maior n´umero de n´ucleos se mostrou a mais eficiente.

O gr´afico da Figura 2 (b) apresenta a energia e o tempo em func¸˜ao da potˆencia para a configurac¸˜ao mais eficiente. Observa-se uma curva de energia bem menos comportada, mas ainda assim existe uma regi˜ao ´otima por volta de 0.7W que apresenta grande reduc¸˜ao no consumo de energia sem causar grandes preju´ızos no tempo gasto.

1

A curva para 3 n´ucleos n˜ao ´e apresentada pois a aplicac¸˜ao s´o ´e capaz de executar com 2

n

threads.

(5)

200 400 600 800 1000 1200 1400

202530354045

Frequência(Mhz)

Energia(J)

1 núcleo 2 núcleos 4 núcleos

(a) Energia em func¸˜ao da frequˆencia utilizando-se 1, 2, 3 e 4 n´ucleos com- putacionais

0.4 0.6 0.8 1.0 1.2 1.4

20212223242526

Potência(W)

Energia(J)

203040506070

Tempo(s)

Energia Tempo

(b) Energia e tempo em func¸˜ao da potˆencia para a execuc¸˜ao com 4 n´ucleos

Figura 2: Resultados experimentais para a aplicac¸ ˜ao “Fluidanimate”

5. Conclus˜oes

O consumo de energia em smartphones e tablets ´e um dos principais desafios para a evoluc¸˜ao destes dispositivos. Neste trabalho, foi estudada a execuc¸˜ao de c´odigo paralelo em disposi- tivos m´oveis com m´ultiplos n´ucleos de processamento, e como ela pode afetar a potˆencia, o consumo de energia e o desempenho do sistema.

Os resultados apresentados permitem concluir, primeiramente, que a paralelizac¸˜ao de c´odigo pode reduzir o consumo energ´etico significativamente. Al´em disso, a convexi- dade proposta por Vogeleer et al. [Vogeleer et al. 2014] pˆode ser observada nos experimen- tos, com o ponto de menor consumo em torno de 700Mhz e 800Mhz, correspondendo, em termos de potˆencia, a cerca de 0.7W e 0.8W. Tal resultado indica que uma grande econo- mia de energia pode ser alcanc¸ada caso o usu´ario esteja disposto a gastar um tempo um pouco maior na execuc¸˜ao de um aplicativo. Al´em disso, a potˆencia dissipada ser´a menor, gerando, consequentemente, menos calor e permitindo uma utilizac¸˜ao mais confort´avel do equipamento.

Como trabalho futuro, pretende-se estender a an´alise para outras aplicac¸˜oes e para plataformas heterogˆeneas, tais como a big.LITTLE [Greenhalgh 2011] da ARM. Tamb´em existe a pretens˜ao de avaliar a variac¸˜ao de temperatura do dispositivo em func¸˜ao da potˆencia exercitada no mesmo, bem como de avaliar o impacto desta variac¸˜ao no uso do sistema.

Referˆencias

Basmadjian, R. e de Meer, H. (2012). Evaluating and modeling power consumption of

multi-core processors. In Proceedings of the 3rd International Conference on Future

Energy Systems: Where Energy, Computing and Communication Meet. ACM.

(6)

Bournoutian, G. e Orailoglu, A. (2013). Application-aware adaptive cache architecture for power-sensitive mobile processors. ACM Trans. Embed. Comput. Syst.

Castro, M., Francesquini, E., Ngu´el´e, T. M., e M´ehaut, J.-F. (2013). Analysis of computing and energy performance of multicore, numa, and manycore platforms for an irregular application. In Proceedings of the 3rd Workshop on Irregular Applications: Architectures and Algorithms. ACM.

Greenhalgh, P. (2011). Big. little processing with arm cortex-a15 & cortex-a7. ARM White Paper.

J´o´zwiak, L. e Jan, Y. (2013). Design of massively parallel hardware multi-processors for highly-demanding embedded applications. Microprocessors and Microsystems.

Nishikawa, N., Iwai, K., e Kurokawa, T. (2012). Power efficiency evaluation of block ciphers on gpu-integrated multicore processor. In Proceedings of the 12th International Conference on Algorithms and Architectures for Parallel Processing - Volume Part I.

Springer-Verlag.

Sheikh, H. F., Tan, H., Ahmad, I., Ranka, S., e Bv, P. (2012). Energy- and performance- aware scheduling of tasks on parallel and distributed systems. J. Emerg. Technol. Comput.

Syst.

Tudor, B. M. e Teo, Y. M. (2012). Towards modelling parallelism and energy performance of multicore systems. In Proceedings of the 2012 IEEE 26th International Parallel and Distributed Processing Symposium Workshops & PhD Forum. IEEE Computer Society.

Vogeleer, K., Memmi, G., Jouvelot, P., e Coelho, F. (2014). The energy/frequency convexity

rule: Modeling and experimental validation on mobile devices. In Parallel Processing

and Applied Mathematics. Springer Berlin Heidelberg.

Referências

Documentos relacionados

O valor da reputação dos pseudônimos é igual a 0,8 devido aos fal- sos positivos do mecanismo auxiliar, que acabam por fazer com que a reputação mesmo dos usuários que enviam

Seja P a função que ao número de anos decorridos desde 2014, n, faz correspon- der o preço a pagar pelo bilhete de época do F.. Em que ano um bilhete de época no Estádio de

Isto porque os sujeitos sociais possuem um critério de expressão que se reflete no aspecto do indivíduo e suas particularidades, mas também enquanto gênero que, sob a

45 Figure 18 - Study of the extract concentration in the phycobiliproteins extraction and purification using the mixture point composed of 10 wt% Tergitol 15-S-7 + 0.3

da quem praticasse tais assaltos às igrejas e mosteiros ou outros bens da Igreja, 29 medida que foi igualmente ineficaz, como decorre das deliberações tomadas por D. João I, quan-

São por demais conhecidas as dificuldades de se incorporar a Amazônia à dinâmica de desenvolvimento nacional, ora por culpa do modelo estabelecido, ora pela falta de tecnologia ou

Foram avaliados 101 pacientes, no período de maio a agosto de 2009, com 18 a 87 anos de idade, de ambos os sexos, pertencentes à Clínica de Lesão Encefálica Adquirida

Deste modo, o autor defende que as estruturas sociais são, ao mesmo tempo, condicionadas e condicionantes das ações; enquanto os indivíduos se apresentam como