Tengo un bug muy molesto en mi iMac 2019 (27", Retina 5K, i9, 8 núcleos, Monterey, Radeon Pro Vega 8 Gb, 64GB Ram). Es probablemente causado por un problema de hardware pero también activa un bug de software que intentaría mitigar.
El síntoma
A veces, y actualmente casi todos los días, mi Mac se vuelve irresponsivo, el ventilador se queda atascado a 3600 rpm, y puede permanecer así durante horas.
El diagnóstico
Esto se puede rastrear hasta que la Mac intenta enfriarse lanzando un proceso kernel_task, que es una estrategia conocida cuando las CPUs se calientan, diseñada para excluir otros procesos ofensivos.
He instalado una utilidad de terceros y puedo reproducir el problema:
Bastante aleatoriamente (incluso en medio de la noche cuando la computadora está dormida), un sensor de temperatura (llamado AC/DC T2 Sec HeatSink) pasaría en segundos de una temperatura normal de la habitación a 70, 80 o incluso 125°. Todos los demás sensores de temperatura muestran valores normales (<40°) y no hay picos.
Entonces kernel_task comienza, generalmente alrededor de un 1000 %, haciendo que la Mac sea irresponsiva y luego el ventilador va a la velocidad máxima (3600 rpm).
Después de un tiempo, a veces en pocos segundos, el sensor generalmente vuelve a la normalidad por sí mismo, y también lo hace si golpeo físicamente en el lugar donde está ubicado (cerca del enchufe).
He estudiado exhaustivamente los registros de la consola y no pude encontrar ningún proceso específico que desencadenara este comportamiento. Estoy muy inclinado a pensar que este es un bug de hardware, y esta es también la opinión de Apple, ya que ya he llevado mi Mac a reparar por esta razón dos veces, cambiaron la placa lógica, y desapareció durante unos meses.
Remedios y soluciones alternativas
Seguramente debería volver a Apple ahora por tercera vez, pero me pregunto si podría retrasarlo, especialmente porque me cobraron la última vez, por lo que creo que es una falla de diseño. La última vez no fueron de gran ayuda para entender el problema, diciéndome que tenía demasiada memoria de terceros y que volviera a los 8GB de Apple.
Tampoco quiero realmente actualizar mi sistema operativo, ya que rompería de nuevo algunos software de terceros. Para que conste, el problema estaba presente en Catalina y Big Sur y actualizar el sistema operativo no aportó nada en cuanto a este bug (excepto la obsolescencia de terceros).
Actualmente, cada vez que sucede esto, golpeo la Mac para devolver el sensor a un valor normal si es necesario, luego suspendo la actividad (usando el menú de Apple), espero el tiempo para que ocurra, entre unos segundos y un minuto, luego despierto la Mac y todo vuelve a la normalidad.
Claramente también hay un bug de software en el sistema operativo, ya que no hay un proceso para cortar kernel_task y devolver el ventilador a valores normales cuando todas las temperaturas se reportan dentro del rango de funcionamiento normal.
No conozco la causa root del bug de hardware. Proporciono algunas pistas para el interés del lector:
-
¿He dañado el sensor al desenchufar en vivo la Mac (esto puede suceder involuntariamente cuando mueves la pantalla, el enchufe del cable queda atascado en la pared detrás)?
-
¿Hay polvo acumulado que produce un cortocircuito y se mueve cuando golpeo? No puedo limpiarlo, el iMac no se puede abrir
-
¿Hay demasiados dispositivos USB conectados y esto aumenta la energía necesaria, activando el sensor (hay una correlación poco clara con la activación del DAC USB conectado, pero también sucede cuando no está)? Planeo comprar un hub USB autoalimentado, solo por si acaso.
Lo que me lleva al objetivo de este post y mi pregunta:
¿Podría detener el proceso de enfriamiento innecesario sin suspender la actividad?
Hay algunas utilidades que detienen el ventilador pero no calman a kernel_task, por lo que no sirven de mucho.
Intentar matar el proceso kernel_task parece una mala idea, ya que es esencial para el sistema.
Obviamente hay acciones bajo la capucha que curan el problema cuando se activa la suspensión de actividad, así que me pregunto si podría lograr el mismo resultado sin perder los minutos que actualmente pierdo por la suspensión de actividad.
Gracias por sus aportes.