Paused
Featured Content Picture #8 Todo o "Staff" dos Click e-Sports deseja um Feliz Natal a todos os jogadores e amigos do Click e-Sports!!! Muitas prendas e muita festa, mas acima de tudo muita amizade.
Featured Content Picture #7 Temos uma nova equipa a representar os Click e-Sports no tão jogado jogo da actualidade: League Of Legends. Bem-vindos pessoal, divirtam-se!!
Featured Content Picture #6 Agora que as férias terminaram é o momento de regressar aos jogos! Esperemos contar com todos que aqui estiveram desde sempre para voltarmos ás noites de convívio e de vício. Vamos também analisar a possibilidade de reunirmos equipa para jogar nas mais variáveis competições de BF3.
fc_small_1 Feliz Natal
Todo o "Staff" dos Click e-Sports...
fc_small_2 Equipa de League Of Legends
Temos uma nova equipa a...
fc_small_3 Adeus férias olá nova época!
Agora que as férias terminaram...

News

Um dos temas principais quando se fala sobre Android ou iPhone é a bateria. Ainda para mais com o aparecimento dos dual cores (dois núcleos) a ideia geral dos utilizadores é que quantos mais “cores” existem mais bateria se consome. Será que é mesmo isso?

Com tantas empresas e com tantos engenheiros a trabalhar activamente para melhorar os consumos de energia será que está tudo a caminhar para melhor? Nesta artigo vou provar que nem tudo o que se pensa em relação a consumos é verdadeiro, e que, até uma companhia como a Samsung, está errada.



O Android foi programado para ter vários estados de gestão de energia e de uma maneira algo resumida funciona desta forma:

1. Ecrã ligado mas sem nenhuma acção no momento -> os cores ficam em halt devido ao uso da função do Kernel chamado CONFIG_NO_HZ

2. Ecrã desligado mas ainda não atingiu o estado mais profundo de idle -> Deep sleep

3. Ecrã desligado e sem nenhuma acção que o esteja a manter acordado -> Idle

O que nós queremos nos nossos Androids é que este entre em Idle o mais depressa possível para ficar power collapsed.

Power collapsing é uma funcionalidade interessante pois significa que o nosso telemóvel, independentemente da frequência do processador, não gaste quase bateria nenhuma. Sim leram bem, mesmo que o CPU esteja a 2Ghz, quando está power collapsed, não gasta quase bateria nenhuma pois o CPU entra num estado em que fica completamente powered down.

Há ainda a diferença entre estar powered down e os cores estarem offline. Durante o power collapse os cores ficam apenas num estado de poupança de energia muito eficiente como expliquei acima. Com cores offline (acção que se denomina por Hotplug) os cores são completamente desligados, como se se desligasse uma televisão da tomada de energia. Hotplug só pode ocorrer em dual cores, pois se num single core se desligasse o único core disponível o telemóvel desligava-se.

E é disto que vamos falar. Será que compensa, ou não, desligar um core para poupar energia? Será que é útil haver a capacidade de desligar o segundo core mesmo com o ecrã ligado mas com pouca load? E os custos associados a desligar/ligar um core?

Para uma melhor compreensão vou vos explicar o meu processo. Há cerca de 3 semanas comecei a programar uma função no kernel chamado Dynamic Hotplug, e estava associado ao meu Governor (ficheiro que gere as frequências do CPU dinamicamente). Quando o CPU estava abaixo dos 20% de load o cpu1 (segundo core) era desligado. Quando o load voltasse a ser maior que 20% e o numero de cpus online fosse > 1 (cpu0 = primeiro core, cpu1 = segundo core) a minha função voltava a ligar o cpu1 ficando de novo um dual core.

Pois bem, isto na prática é muito engraçado e se pensarmos bem (sem entrarmos em pormenores técnicos) é fantástico para a bateria… Mas está ERRADO!

A quantidade de vezes que a minha função era chamada por segundo arruinava completamente a ideia, e chegava a ligar e desligar o cpu1 umas 10 vezes por segundo, e a cada vez que isso acontecia o cpu0 aumentava a frequência para o máximo e o load ficava a 100%…

Como podem ver era basicamente o inferno para o CPU. Isto acontecia porque primeiro, o número de trocas de contexto aumentava consideravelmente, segundo, a latência inerente a ligar e desligar um core é brutal (não para nós humanos, mas para uma máquina 100ms é MUITO tempo), e é essa latência que faz com que o cpu0 tivesse cargas de load de 100%. Ora isto tudo junto a acontecer durante um segundo é péssimo a nível de bateria, e péssimo a nivel de interactividade pois isto sente-se quando se usa o telemóvel. Claro que acabei por descartar esta funcionalidade.

Recentemente adquiri um Galaxy Note (daí a referência à Samsung) e deparei me com o Dynamic Hotplug ligado de origem com o Kernel do Note… e como já tinha tido esta experiência com o Kernel do Galaxy Nexus (foi onde criei o meu próprio Dynamic Hotplug como expliquei acima) desactivei-o imediatamente e as diferenças foram imensas – o telemóvel ganhou outra vida. Agora pergunto-me, qual é o objectivo de activarem uma opção potencialmente prejudicial?

Podem ver por aqui uma série de testes que um user fez depois de eu lhe ter dito que Dynamic Hotplug era mau para o telemóvel. Como podem ver, a nível energético a diferença entre ter os dois cores sempre activos ou um deles a ser desligado e ligado a todo o momento, é igual a 0.

O tema de Power Management no Android é muito vasto e divide muitas pessoas, portanto gostava de ouvir as vossas opiniões tendo em conta a minha experiência prática que vos descrevi acima.
Links: • pplware.sapo.pt
written by Motante - 20.02.2012 - 15:07


You have to login!

register now!
login
Battlefield 3 - End ...
Battlefield Friends ...
Battlefield Friends ...
BF3 - Balao_o_Terr...
29.12.2012 | Click .vs. RA
1:0
29.12.2012 | Click .vs. PTN
0:1
03.05.2012 | Click .vs. SEYFERT
16:7
29.04.2012 | Click .vs. [K]
0:2
25.04.2012 | Click .vs. fsK
0:2
25.04.2012 | Click .vs. FRAG
2:0
low
Battlefield 3
League Of Legends
Pro Evolution Soccer
PokerStars
Battlefield Play4Free
21.05.2011 • Click vs. Xrist0
6
27.04.2011 • Click vs. FeUeRzEuG
19
low
low
low
low
not available   loih5qvide 22.05.13
not available   kjpztrgba 22.05.13
not available   0qc0w2q9 22.05.13
not available   hivpdaij 22.05.13
not available   imaoimp02 21.05.13
low
Burn Energy Drink
Cerveja Sagres
s_low
A4tech
Corsair
Razer
Steel Series
s_low2
no active poll

show polls
TEAMSPEAK 3
play
BATTLEFIELD 3
play
340 Visitors (Today)
652 Visitors (Yesterday)
12323 Visitors (Month)
143949 Total visits
1650 Registered users
1 User online
8 Guests online
___