Zusammenfassung
Ich habe ein Problem, bei dem die Verwendung von Expose zum Ziehen eines Fensters von einem Raum in einen anderen eine enorme Verlangsamung verursacht, die fast komisch aussieht - als würde sich die Maschine in ein Ouija-Brett verwandeln und während der Zeit Ladespitzen auf leicht über 200 (!) Laden durch "passt"
Hier ist ein Video über das Vorkommen dieses Problems.
Bedingungen
Komplettlösung des Problems
Ich rufe die Bildschirme in der Überschrift für jeden "Desktop" mit Expose auf und versuche, ein Fenster von einem Bildschirm auf einen anderen zu verschieben
Das Verhalten beim Bewegen eines Fensters beim Ziehen hat eine Wirkung, bei der die Verzögerung der Ziehbewegungen in einen Zustand geisterhafter Zeitlupe übergeht. wo die Bewegung einer Art "besessenem" Muster folgt.
Nebenwirkungen
Massive Lastspitze
Der unmittelbare Grund dafür scheint darin zu liegen, dass die Systemlast, die bereits zwischen 3-4 lief (Computer hat 4 effektive CPUs, also knapp unter der Nenneffizienz, wenn er aufgrund menschlicher Eingaben effektiv im Leerlauf ist, auf eine sehr hohe Zahl hochschießt ( weit über 100 oder 200, während Sie diese Eskapaden durchlaufen) und es wird einige Minuten dauern, bis sich die Last "beruhigt", nachdem die Zeitlupeneffekte aufhören, und das ist nur so, dass sie von 200 auf etwa 25 herunterkommt, wo sie ein Plateau erreichen wird leicht noch weitere 10 Minuten.
Warteschlangen von Systemprozessen
Da ich immer noch dabei bin, meinen Computer von Grund auf neu zu bauen, basierend auf einem Build-Vorlagendokument, das ich erstellt habe, um mein Software-Tool-Setup manuell auf einem neuen Computer zu installieren, finde ich das enorm beunruhigend.
Build-Details
brew cask install
oder jede Software, die ich kann.Erste Schlussfolgerungen
Ich habe keine Ahnung, ob diese Apps eine Korrelation zu diesem Verhalten haben oder nicht. Wenn das passiert, kommen oft Systemprozesse hoch und beanspruchen mehr als 50% der CPU, aber ich führe das darauf zurück, dass sie wegen der absurd hohen Last in der Warteschlange stehen und eher ein Symptom als eine Ursache meiner Probleme sind. Ich habe sogar Chrome für Safari aufgegeben, um gemeinsam genutzte Ressourcen besser zu nutzen und Abweichungen vom Apple-Nest zu minimieren. Ich habe bereits "Bewegung reduzieren" und "Transparenz reduzieren" für Barrierefreiheit -> Anzeige aktiviert, aber es hatte keine Auswirkung.
Mögliches Hitzeproblem?
Eine Theorie, die ich hatte, war, dass meine Lüfter schmutzig sind und meine CPU nicht gut kühlen. Ich hatte Leistungsprobleme, als auf diesem Computer Mojave mit 30-90-Sekunden-Lock-ups lief, aber da ich ihn über mindestens 3 Betriebssystemversionen aktualisiert hatte, schrieb ich es KEXT Cruft oder anderer Junk-Software zu, die ich verwendete, als ich weniger vorsichtig war . Die Lüfter drehen sich gut, wenn sich die CPUs aufheizen, aber die CPU-Kerntemperatur schwankt zwischen 70 ° C und 80 ° C, selbst wenn die Last unter 4 liegt. Daher frage ich mich, ob dies alles nur CPU-Clipping durch Hitze ist, aber Ich weiß nicht, wo die Temperatur diese Ausfallsicherheit herbeiführen wird. Wenn ich einen blockierten Luftstrom einfach nicht ausschließen kann, werde ich dieses Baby aufbrechen und ihm den Luftstoß aus der Dose geben, aber da ich die Lüfter und die Batterie erst vor 14 Monaten ausgetauscht habe, wäre das überraschend, da ich nicht in einer Flusenfabrik arbeite.
Was ich hoffe zu erreichen, indem ich dies poste
Obwohl ich nicht erwarte, dass irgendjemand herausfindet, warum sich Expose so verhält (obwohl ich für einige Tipps zur Fehlerbehebung dankbar wäre, da ich Catalina erst seit ein paar Tagen verwende). Was ich gehofft hatte, war, ob jemand es war Ich bin mir bewusst, wie ich möglicherweise die von Catalina eingeführten unentgeltlichen Animationsfunktionen ausschalte, die dieses Problem verschlimmern könnten.
Aktualisierung 11.11.19 17:20
Nachdem ich im abgesicherten Modus ausgeführt und fast jede App geladen hatte, konnte ich das Problem nicht replizieren, obwohl Dinge wie das Scrollen definitiv betroffen waren. Es schien keine Temperaturprobleme zu geben, und Spitzen auf über 90 ° ließen schnell nach. Wenn es sich also nicht um ein Problem mit langsamer Wärmeentwicklung handelt, glaube ich nicht, dass es daran liegt.
Eine Sache, die ich nicht erwähnt habe, war, dass beim Auftreten dieses Problems 3,7 GB im 5-GB-Auslagerungsbereich vorhanden waren. Das normale Starten des Computers und das Ausführen der Apps wie im abgesicherten Modus hat diese Probleme ebenfalls nicht reproduziert, aber Swap wird immer noch nicht verwendet. Ich hätte das bemerken sollen, aber in der Vergangenheit habe ich die Trägheit der Expose-Animation damit in Beziehung gesetzt, wie viel getauscht wird.
Meine neue Theorie besagt, dass Speicherverluste auftreten, die virtuellen Speicher verbrauchen, und dass die Langsamkeit und Last das Ergebnis unerbittlichen Pagings sind. Ich denke, ich kann dies nur belegen, nachdem ich meinem Computer eine Betriebszeit von mehr als ein oder zwei Tagen mit vielen geöffneten Apps gegeben habe, damit ich sehen kann. Dann kann ich feststellen, welche Apps die höchsten Seitenraten haben.
Aktualisierung 12.11.19 01:54
Nachdem ich es geöffnet und nicht viel Staub gesehen hatte, hob ich die Kühlplatte an, um die Wärmeleitpaste zu überprüfen, die getrocknet und kaum vorhanden war. Ich habe nach dem Reinigen beider Oberflächen etwas frische Paste hinzugefügt, aber ich bin mir nicht sicher, ob ich zu viel verwendet habe oder die Oberflächen nicht beide sauber genug waren, aber ich stelle fest, dass die Temperaturen gelegentlich über 100 ° C zu steigen scheinen und es insgesamt heißer wird, obwohl es heiß ist Spitzen sind nur augenblicklich.
Ich habe GeekBench sowohl davor als auch danach ausgeführt, sowohl im abgesicherten als auch im regulären Modus, und die Leistungsergebnisse waren praktisch gleich. Die Ergebnisse sind tatsächlich etwas höher als die für mein Modell festgelegten Benchmarks. Es scheint schrecklich heiß zu sein, aber es beeinträchtigt die Leistung nicht. Nachdem ich Artikel gelesen habe, die besagen, dass der i7 sicher bei 100 ° C betrieben werden kann (obwohl einige Behörden sagen, dass er für jede Dauer zu heiß ist).
Ich habe das Intel Power Gadget installiert und es zeigt, dass meine Übertaktung etwa 2,45 GHz beträgt, aber dass es bei den angegebenen 3,1 GHz seinen Höhepunkt erreicht, sodass ich nicht glaube, dass es abgeschnitten wird. Dennoch gibt es viele Rätsel um die Leistung, aber eines ist sicher – es dauert Tage, wenn nicht Wochen, bis die gesamte Catalina-Haushaltsplanung für Medien und Bilder abgeschlossen ist!
Es klingt sehr wahrscheinlich, dass Sie einen Hardwarefehler haben, wie z. B. nicht funktionierende Lüfter, Wärmeleitpaste nicht richtig aufgetragen, Lüftungsschlitze blockiert oder ähnliches.
Ein Lastdurchschnitt von 3-4 im Leerlauf ist definitiv nicht normal. Ihr Computer ist ein Dual-Core-Computer - HyperThreading macht es nicht wirklich sinnvoll, dies als 4 Kerne zu zählen (es ist nicht annähernd so gut wie separate Kerne). Eine Last durchschn. von 3-4 bedeutet, dass der Computer stark ausgelastet ist.
Der hohe Lastdurchschnitt könnte von thermischer Drosselung herrühren (entweder über kernel_task, die die CPU in den Ruhezustand zwingt, oder einfach durch Frequenzdrosselung). Es könnte auch von anderen Quellen stammen, wie z. B. einer fehlerhaften Festplatte - obwohl Sie dann höchstwahrscheinlich auch andere Probleme haben würden.
Ich empfehle, im Internet-Wiederherstellungsmodus zu booten, um zu überprüfen, ob Sie dort immer noch eine hohe durchschnittliche Auslastung und eine langsame Leistung haben. Wenn ja, dann ist es kein Softwareproblem.
Ergriffene Maßnahmen
Meine Lösung sah folgendes vor:
Reinigung der Hardware
Ich nahm mein MacBookPro auseinander und stellte fest, dass sich im Lüfter selbst etwas Staub angesammelt hatte und etwa 10 % der Lamellen des Kühlkörpers mit fusseligem Staub verstopft waren. Es gab auch einige Staubhäschen und zufällige Flecken auf dem Brett und in Taschen des Chassis. Es schien nicht viel Staub zu sein, aber ich habe es trotzdem mit Dosenluft abgeblasen.
Ebenso freute ich mich, dass ich noch eine neue Tube Wärmeleitpaste in meinem Computer-Werkzeugkasten hatte. Nachdem ich die Kühlkörperplatte vom CPU-Kern abgeschraubt hatte, sah ich, dass die alte Paste so gut wie ausgetrocknet und sehr anämisch war. Ich benutzte ein trockenes Tuch, um beide Oberflächen sauber zu wischen und frische Paste aufzutragen und wieder festzuziehen. Allerdings habe ich möglicherweise zu viel Paste verwendet, da etwas Überschuss an den Seiten herausgedrückt wurde. Der Cinch war so fest wie möglich, ohne zu fest anzuziehen und zu riskieren, dass entweder die Köpfe abgezogen, die Schrauben abgeschert oder das Gewinde herausgerissen werden. Das Ziel bestand darin, sicherzustellen, dass in der Paste eingeschlossene Luftblasen keine Möglichkeit haben, sich zu erhitzen und den Oberflächenbereich zu verringern, in dem die Paste beide Oberflächen berührt.
Software
Bevor ich mich mit der Kühlung befasste, habe ich drei Dienstprogramme hinzugefügt und konfiguriert:
Lüfter-/Temperaturmesswerte und -steuerung: iStat-Menüs / Macs-Lüftersteuerung
Beide Dienstprogramme können die Lüftergeschwindigkeit und die CPU-Temperatur messen, beide haben eine Testversion, aber iStat Menus liest etwa zwei Dutzend andere Temperatursensoren im gesamten System, während MFC nur die CPU-Kerntemperatur liest. Während ich zuerst MFS verwendete, stellte ich später fest, dass iSM insgesamt die bessere Wahl ist, da es einen Nutzen hat, der weit über die Temperatur- und Lüfterverwaltung hinausgeht, also zahlte ich die 10 US-Dollar, um es als Anzeige für Gesamtmetriken zu verwenden.
MFC hat im Testmodus eine eingeschränkte Lüftersteuerung, während iStat Menus voll funktionsfähig ist, wo Sie benutzerdefinierte Lüftergeschwindigkeitsregeln erstellen können, damit Sie es vor dem Kauf ausprobieren können, um zu sehen, ob es für Sie geeignet ist. Um fair zu sein, sind iSM und MFC im Umfang nicht wirklich vergleichbar, da iSM es Ihnen ermöglicht, umfangreiche anpassbare Diagramme für fast jede erdenkliche Systemmetrik zu erstellen.
Darüber hinaus scheint iSM Statistiken zu messen, die bereits gemeldet werden, ähnlich wie /proc
bei Linux. Zum Testen habe ich beim Ausführen mit und ohne iSM nur geringe Leistungsunterschiede festgestellt (unter Verwendung des Aktivitätsmonitors, den ich nicht empfehle, auf unbestimmte Zeit zu laufen, da er relativ viele Ressourcen verbraucht). Sogar der Speicherbedarf der UI-Elemente von iSM beträgt nur 35 MB – weniger als 1/4 des Aktivitätsmonitors, was auch die CPU-Last erhöhen kann, was ihn als Vollzeitmonitor wie iSM ungeeignet macht.
Obwohl ich MFS immer noch installiert habe, verwende ich es nicht wirklich zugunsten von iSM. Ich behalte es für den Fall, dass ich eine möglicherweise leichtere Lüftersteuerung/Tachometer als iSM brauche, aber ich hatte noch keinen Bedarf dafür.
CPU-Taktmessung: Intel Power Gadget
Zusätzlich zu iSM bietet Intel Power Gadget Sichtbarkeit der variablen CPU-Geschwindigkeit, die tatsächlich ständig je nach Systemanforderung schwankt. Ich bin mir nicht sicher, ob dieses Tool "Clipping" als Folge von Überhitzung registrieren würde, aber ich kann mir nicht vorstellen, warum es das nicht tun würde. Wie iSM bietet es auch umfangreiche Grafikfunktionen. Darüber hinaus bietet es eine neue Metrik der CPU-Geschwindigkeit als Datenpunkt, die iSM jetzt in die CPU-Metriken einfügt und die zur einfachen Verfolgung direkt neben der CPU-Kerntemperatur aufgeführt ist! Das Tool muss nicht einmal ausgeführt werden, um dies zu lesen – es wird zu den restlichen Systemmetriken hinzugefügt, die iStat lesen kann! Dies war ein großartiger Fund und fügte eine entscheidende Metrik hinzu, die mir zuvor gefehlt hatte.
Ergebnisse
Um einen Geschwindigkeitsbenchmark zu erstellen, habe ich Geekbench 5 verwendet, um eine Baseline vor und nach der Kühlreinigung und dem Tuning zu erhalten. Ich habe es auch im abgesicherten Modus sowie im normalen Modus ausgeführt (mit so wenig Laufen wie möglich, obwohl dies kein reiner Test war, da Dinge wie Fotoanalyse oft trotzdem im Hintergrund tuckerten). Was ich jedoch herausfand, war sehr überraschend: Während die Leistung drastisch verbessert wurde, wenn die Hitze gezähmt wurde, zeigten Messungen nach der Reinigung tatsächlich, dass die CPU bei Spitzen höhere Temperaturen erreichte. Ich habe jedoch eine Hypothese, warum.
Leistungsverbesserungen
Bevor ich das Kühlsystem gereinigt und frische Paste hinzugefügt habe, zeigten Bench-Tests Single/Multi-CPU-Ratings von etwa 700/1775 beim Start sowohl vor als auch nach der Reinigung. Das ständige Betreiben der Lüfter auf Maximum im Vergleich zum Reinigen der Kühlung hat die Leistung nicht messbar verändert. Außerdem liegt dieses Maß tatsächlich knapp über dem von Geekbench angegebenen Durchschnitt für meine Maschine. (Tests im abgesicherten Modus waren tatsächlich etwa 5-10 % langsamer.)
Während ich darauf wartete, dass meine Maschine entweder durch Hitze oder das Aufblähen der Swap-Nutzung und das Schleifen von Seiten ein und aus träge wurde, schien die Tatsache, dass ich mit iSM aggressivere Regeln für die Lüftergeschwindigkeit auferlegt hatte, Hitzespitzen ganz von selbst in Schach zu halten. Darüber hinaus konnte ich nach der Reinigung – selbst wenn ich die Lüftergeschwindigkeitsregeln wie zuvor auf die Systemstandards zurücksetze – die Absturzprobleme nicht reproduzieren, obwohl die CPU-Temperatur bei anhaltend hoher Last 100 ° C gemeldet hat. Es scheint, dass die CPU heißer werden kann als der vorherige Gedanke, damit die CPU abgeschnitten wird, weil ich sehen konnte, dass meine CPU-Geschwindigkeit im „Turbo“-Modus bei spritzigen 3,4 GHz war, als ich einen GB-CPU-Test durchführte. Selbst unter extremer Belastung mit Lüftereinstellungen, die die CPU für mehr als 30 Sekunden auf Temperaturen über 100 °C bringen, Die allgemeinen Leistungsverbesserungen waren tiefgreifend und die Maschine nur anekdotisch benutzerfreundlich. Die fiesen Probleme mit Expose/Mission Control traten nicht wieder auf.
Scheinbare hohe Temperaturspitzen
Zugegeben, es gibt eine Anomalie, die zunächst keinen Sinn ergab. Bevor ich es gereinigt und den Lüfter nur mit maximaler Geschwindigkeit betrieben habe, hatten die CPU-Temperaturen selbst im Ruhezustand einen hohen Wert von 65 ° -75 ° C, aber die maximal gemessene Temperatur schien nie heißer als 90 ° C zu werden. Nach der Reinigung war das Messverhalten sehr unterschiedlich. Während die Bodentemperatur im Ruhezustand mit Lüftervorgaben im Leerlauf niedriger war (manchmal so niedrig wie 40 ° C), bemerkte ich, dass sowohl die CPU-Kerntemperatur mit der Last (und der CPU-Geschwindigkeit) stark schwankte, als zuvor die Messungen eine viel allmählichere zeigten ändern, obwohl Abfrage und Aktualisierung der Messung identisch waren. Abgesehen vom schnelleren Aufheizen und Abkühlen der Sensoren erreichten die maximalen Messwerte gelegentlich Spitzenwerte von über 100 °, wenn sie noch nie zuvor als so heiß gemeldet wurden.
Schlussfolgerungen
TL;DR: Das Kühlsystem abzustauben und die Lüftergeschwindigkeiten als spezifische Temperaturschwellenwerte zu erhöhen, war das, was es brauchte, um meine Maschine wieder zu ihrem gesunden Selbst zu bringen. Außerdem verfügt die i7-CPU über eine variable Taktrate, die eine Stromsparfunktion darstellt und nicht nur eine Drosselung bei Hitzespitzen darstellt - zumindest nicht unter normalen Betriebsbedingungen. Das Hinzufügen einiger guter Metriken, die das System nicht belasten, ist entscheidend, um etwas anderes als eine anekdotisch bemerkenswerte Verbesserung zu sehen, und iState Menus scheint eine gute Wahl zu sein, wenn Sie datenhungrig sind. Für Puristen gibt es leichtere Open-Source- und Befehlszeilen-Tools.
Ich hoffe, diese lange Aufschlüsselung war hilfreich. Ich fand es wert, auf alle Details einzugehen, auch wenn es einige Redundanzen gab.
Darf Nader
Darf Nader
jksoegaard
Darf Nader
jksoegaard