Como desativar o SpeedStep ao usar o MacBook Pro sem bateria?

29

Primeiro de tudo, as especificações:

  • MacBook Pro (15 polegadas, início de 2011)
  • OS X 10.9.1 (Mavericks)
  • Intel Core i7 de 2,3 GHz
  • 8 GB de RAM

O problema

Recentemente, minha bateria morreu aleatoriamente e tive que desconectá-la, caso contrário, meu computador não ligaria corretamente (o MacBook Pro estava sendo reiniciado e desligado várias vezes).

Agora, toda vez que conecto o cabo de alimentação, ele inicia imediatamente (mesmo sem pressionar o botão liga / desliga), desliga após alguns segundos e, em seguida, inicia normalmente. Esquisito.

No entanto, o principal problema é que, após algum tempo, o laptop fica MUITO lento. Por "MUITO LENTO", quero dizer - os jogos se tornam impossíveis de jogar (o FPS cai de 60 para 6) e o kernel_task começa a usar mais de 500% da CPU. Além disso, a velocidade do mouse aumenta significativamente .

Eu tentei o interrock do (a 10ª post) guia , mas não parecem funcionar corretamente e me fez um kernel panic relacionada com a SleepEnabler .

PS: Li em algum lugar que a Apple faz isso " underclocking " intencionalmente, por razões de segurança ou de marketing (para comprar uma bateria nova). Por favor corrija-me se eu estiver errado.

O OS X acelerará inteligentemente a CPU com base em determinadas condições, a) prolongando a vida útil da bateria eb) evitar danos ao sistema (devido ao calor excessivo). A Apple não "sabota" máquinas em um esforço para fazer com que os clientes comprem baterias novas. - cksum

Qualquer ajuda seria apreciada. Agradeço antecipadamente.


Solução (que funcionou para mim)

http://www.rdoxenham.com/?p=259

É uma solução simples, e a maioria das pessoas que têm problemas semelhantes ao que você descreve fica bastante feliz quando percebem isso. Não aceito nenhum crédito por essa correção, pois tudo é graças a Rhys Oxenhams, que pesquisou isso e encontrou uma solução .

Obrigado a l'L'l por encontrar isso.

Arthur
fonte
Descartar um sensor de temperatura pode ser um ótimo primeiro ponto de partida, então responderei a parte "por que" abaixo em uma resposta real. Além disso, o comportamento ligado é preocupante e indica que o hardware ou o software SMC + não está funcionando corretamente. Tente redefinir a NVRAM uma vez também, se você não perceber esse problema.
bmike
1
A otimização da CPU é chamada SpeedStep e é incorporada ao chip. O OS X simplesmente se conecta à tecnologia. O SS foi pioneiro e desenvolvido pela Intel. Como foi dito, o OS X acelerará a CPU de maneira inteligente com base em determinadas condições, em um esforço para a) prolongar a vida útil da bateria eb) evitar danos ao sistema (devido ao calor excessivo). A Apple não "sabota" máquinas em um esforço para fazer com que os clientes comprem baterias novas.
O problema é que, no Windows (Boot Camp), tudo funciona totalmente bem. Mesmo se você não tiver uma bateria, é possível selecionar o modo " Alto desempenho " e funcionar normalmente. Seria possível fazer o mesmo no OS X?
Arthur
Reconecte sua bateria. Como o seu modelo possui um embutido, não é aconselhável desconectá-lo. Eu imagino que é isso que está causando os problemas, pois eles nunca foram criados para funcionar sem um. Em seguida, leve-o à Apple Store e faça com que eles executem diagnósticos. Pode haver outros problemas dos quais você não tem conhecimento. Se a bateria simplesmente perdeu a carga ao longo do tempo, não deve causar reinicializações do sistema, a menos que você esteja funcionando sem o carregador conectado. Não há correção de software para o problema que você tem e você está tentando ocultar os sintomas em vez de corrigir o problema. raiz do problema.

Respostas:

12

Parece que você tem um problema com a bateria, embora seja provável que isso esteja apenas aumentando o problema subjacente em que você abordou.

O conceito por trás do Speedstep parece bom, no entanto, o modo como ele funciona é muito ruim - especialmente quando se trata do kernel_task. Acredito que é a razão pela qual você está vendo uma desaceleração tão dramática - porque esse "recurso" está consumindo a maior parte do seu CPU MacBook Pro, de modo que aparentemente pode esfriar o sistema e economizar energia.

A tecnologia Intel SpeedStep permite que o sistema ajuste dinamicamente a tensão e a frequência do processador, o que pode resultar em menor consumo médio de energia e menor produção média de calor. (da Intel)

O que isso significa é que você acaba perdendo uma parte significativa da CPU, enquanto o SpeedStep seqüestra o kernel_task e executa continuamente tarefas de baixo custo até que a temperatura da CPU caia. Seu sistema basicamente fica atolado, para que você possa economizar energia, independentemente de querer ou não. Eu imagino que a maioria das pessoas espera poder usar toda a energia da CPU quando quiser - e não quando o sistema permitir.

Felizmente, esse "recurso" está incorporado em um kext, no qual cada identificador de modelo especifica como controlar a temperatura da CPU. É uma solução simples, e a maioria das pessoas que têm problemas semelhantes ao que você descreve fica bastante feliz quando percebem isso. Não aceito nenhum crédito por essa correção, pois tudo é graças a Rhys Oxenhams, que pesquisou isso e encontrou uma solução .

eu vou
fonte
Só para estarmos na mesma página, todos concordam que este é um bug para a apple e "deve" funcionar sem problemas, sem bateria, mas conectado à energia, sim?
Rogerdpack
@rogerdpack: Seu sistema pode não funcionar corretamente até você receber uma bateria nova; Eu acredito que o OP desconectou sua bateria e também desativou o speedstep do que parece. Não deveria doer nada tentar como ele havia feito.
1
5

O ciclo da CPU que absorve as tarefas do kernel é principalmente um problema de segurança e longevidade.

A CPU é capaz de gerar muito mais calor do que o quadro do MacBook Pro pode irradiar e, para controlar ventiladores com falha e outras falhas de hardware, o sistema reduzirá drasticamente a capacidade da CPU de gerar calor quando detectar um rápido aumento nas temperaturas medidas - especialmente quando os sopradores não estão respondendo conforme o esperado ou já estão comandados para executar com seus valores máximos de RPM.

Você deseja descartar a temperatura como causa desse comportamento como primeira etapa da IMO.

Além disso, considere substituir a bateria, pois ela também possui sensores de temperatura e o firmware pode ser muito mais conservador com a CPU quando souber que alguns sensores não estão mais informando o serviço, por assim dizer.

bmike
fonte
1
Não acho que o SpeedStep (otimização da CPU) seja medido por calor. Eu acho que o OS X irá acelerar a CPU por meio de uma verificação de hardware. Se detectar que um ventilador não está ativo, ele acelerará o processador para evitar calor excessivo. Neste caso, o calor é a medida de controle e não o catalisador.
4

A Apple não apenas reduz a CPU para cerca da metade, quando não há bateria, mas também a GPU , com ou sem bateria.

Acho que o motivo não é necessariamente forçar o usuário a comprar uma bateria nova, mas continua sendo uma de marketing. Você já reparou como o carregador CA MBP é consideravelmente menor que a maioria dos carregadores CA para laptops PC? Não sou especialista em watts e tensão, mas, devido ao design minimalista e elegante, eles não o tornaram suficientemente poderoso para o seu MBP operar. Ele precisa de uma bateria para energia total, caso contrário, o adaptador CA e sua máquina poderão ficar torrados ou simplesmente não funcionar.

A otimização da GPU era uma medida para garantir que a marca obtivesse uma vida útil da bateria melhor que a da concorrência, caso contrário, você teria ~ 4 horas de uso, não muito competitivas no mundo dos laptops.

Uma solução alternativa para a questão da CPU, além da que você postou , consiste em menosprezar , oferecida por um aplicativo shareware chamado CoolBook . Infelizmente, ele é suportado apenas até o Snow Leopard e possui uma política de licença muito rigorosa (por computador, não por usuário). A opção mais segura ainda é adquirir uma bateria nova.

Uma solução alternativa para o problema da GPU é publicada aqui .


fonte
3

Penso que o seu problema principal e a sua bateria estão relacionados no sentido Domino. Não sei do seu post, mas você disse que desconectou a bateria. Ao fazer isso, redefina seu SMC e é por isso que agora, toda vez que você conecta um cabo de alimentação, a unidade pula e sofre um ataque cardíaco leve, reinicia e finalmente inicia.

Seu SMC foi danificado e precisa ser redefinido. Para isso, consulte http://support.apple.com/kb/ht3964

Agora, com relação à sua CPU%, eu concordo com cksum e bmike. Sua bateria possui sensores e, se a bateria estiver faltando ou danificada, substitua-a, pois os ventiladores e a unidade surtarão sob estresse ou tempo. Além disso, eu também sugeriria executar o Apple Hardware Test, que deve estar em um dos DVDs cinza do sistema que acompanha a unidade. A execução do AHT testa os sensores rapidamente e faz verificações de CPU e RAM, o que é algo útil nesse caso. Eu não quero pensar que havia qualquer razão para que danos por ESD pudessem acontecer, mas é um risco e uma possibilidade.

Andrew U.
fonte
3

O método do rdoxenham corrige o problema do kernel_task, mas não traz o desempenho da CPU de volta ao seu modo atual. Deixe-me contar a história da minha história.

Eu tenho um MBP de 15 polegadas no início de 2011 (i7, 10 GB de RAM), então faz um tempo que a bateria acabou e eu enfrentei o atraso da GPU e da CPU até a correção do rdoxenham.

Esse processo é uma correção temporária até substituirmos nossa bateria descarregada / antiga / com defeito. Sem a bateria do laptop, a CPU não está consumindo energia suficiente para ser executada no nível ideal.

Se você usar o GeekBench para testar o desempenho do seu laptop, notará a diferença na pontuação do seu laptop e outros sem o problema.

Minha pontuação pareceu afetada pelo fato de a CPU não receber a energia necessária sem a bateria. Essa correção resolve a parte do problema do software, mas não a parte do hardware.

Nossa CPU precisa do seu suco e eu diria que este FIX é uma correção excelente para eles, que estão apenas enfrentando o problema do kernel com uma bateria de condição de trabalho. Mas para alguém como eu (executando um macbook sem bateria) isso não resolve tudo. OBTENHA UMA BATERIA O MAIS CEDO POSSÍVEL. AMAZÔNIA!

Abhilash
fonte
0

O método de rdoxenham também funcionou para mim. Este foi o meu problema:

MacBook Pro (13 polegadas, início de 2011), macOS 10.12.1 Sierra. A bateria estava descarregada há algum tempo, mas o computador funcionou bem. Um dia, de repente, não acordou do sono e o botão liga / desliga não reagiu. Puxei e recoloquei o cabo de alimentação e pude inicializar novamente. A inicialização agora levou muitos minutos e tudo ficou lento. O mouse se moveu em algo como 0,5 qps. Tudo funcionou, mas houve um atraso extremo. Animações, cursor, entrada do teclado, tempo necessário para abrir aplicativos - tudo. O monitor de atividades relatou o sistema usando quase 100% da CPU quase sempre. Às vezes, diminuía um pouco e o atraso ficava um pouco melhor. Por breves momentos, a atividade da CPU foi normal e tudo funcionou bem, mas os problemas retornaram após um minuto. Foi relatado que o kernel_task usa muito mais CPU do que o disponível - entre 200-1000%. O problema permaneceu, apesar das reinicializações e deixando o computador ligado durante a noite. O computador estava inutilizável.

Eu excluí o software ruim e muitas fontes potenciais de hardware ruim. Eu tentei tudo isso, mas o problema permaneceu:

  • Retirou o HDD e inicializou externamente
  • Inicializado de outro disco rígido externamente, executando o OS X 10.8 Mountain Lion.
  • Desconectou o cabo interno do HDD SATA
  • Adaptador de energia diferente
  • Reset da PRAM
  • Reset SMC
  • Recolocou os dois módulos de RAM
  • Usava apenas um dos módulos de RAM por vez, em slots diferentes, para descartar que um dos módulos ou slots era ruim
  • Desconectou a bateria
  • Desconectou o cabo AirPort / Bluetooth
  • Desconectou o trackpad

Suspeitei de um problema na placa lógica. Mas tentei mudar o arquivo kext apropriado de /System/Library/Extensions/IOPlatformPluginFamily.kext/Contents/PlugIns/ACPI_SMC_PlatformPlugin.kext/Contents/Resources/. Como mágica, o computador agora parece funcionar bem novamente. Vou ver se consigo segurar uma bateria de reposição e colocar o kext de volta, mas por enquanto isso serve. Não entendo como remover um kext pode resultar em superaquecimento. Um kext faz parte de uma instalação específica do sistema operacional e, por exemplo, não estaria presente ao inicializar no Windows ou outra coisa. Certamente a temperatura deve ser principalmente controlada por algo mais baixo. Mas bem, se o computador morre, ele morre. De qualquer maneira, não funcionou antes dessa correção.

rberggreen
fonte