Co powoduje, że procesor mojego bingera nie działa?

13

Kilka razy w tygodniu Finder na moim Macbooku zużywa do około 100% procesora, a fani zaczynają strzelać.

Zrobiłem wszystko, co mogłem wymyślić - naprawiłem uprawnienia, uruchomiłem ponownie, usunęłem preferencje, wyłączyłem opcję „pokaż podgląd” w opcjach widoku, skontrolowałem Monitor aktywności pod kątem niepotrzebnych procesów, przeszukałem konsolę pod kątem błędów, ponownie uruchomiłem Finder i wiele więcej . W końcu to ustępuje i zakładam, że źródłem błędu była ostatnia rzecz, którą zmieniłem.

Ale teraz robi to znowu i jestem zagubiony. Żałuję, że nie było sposobu, aby „dostać się do głowy Findera” i zobaczyć, co robi. Próbowałem uruchomić próbkę procesu Findera w Activity Monitor, ale szczerze mówiąc, nie wiem, co ona robi, a tym bardziej, jak interpretować dane wyjściowe.

To naprawdę moja nadzieja: ktoś może wyjaśnić lepszy sposób badania takich skoków procesora, nie tylko w Finderze, ale w dowolnym niekontrolowanym procesie. Z pewnością jest wiele szczegółów, które mogą pomóc wszystkim zdiagnozować ten konkretny przypadek, ale zanim wyrzucę jeszcze bardziej prawdopodobnie nieistotne informacje, pomyślałem, że zobaczę, czy ktoś ma ogólne wskazówki dotyczące diagnozowania tego rodzaju rzeczy.

To jest mój pierwszy post w trybie Stack-any btw, więc proszę, bądź delikatny. Z góry dziękuję!

Jesse Baer
źródło
Następnym razem, gdy pojawi się, biegnij top -o cpuz terminala, aby lepiej zrozumieć, co się dzieje.
phwd
Możesz użyć, lsofaby wyświetlić listę otwartych plików. Pomocna może być również fuser.
Z ciekawości, czy masz włączony FileVault? Czy zabezpieczyć pusty kosz?
Nathan Greenstein
Być może lepsze niż lsoflub fuserjest fs_usage. Pewna kombinacja tych trzech elementów, ograniczona tylko do procesowania procesora (znajdującego się od góry), powinna pomóc, zakładając, że we / wy jest zaangażowany.
lsof wydaje się bardzo przydatny. Nie znalazłem konkretnego podejrzanego pliku, na którym można spróbować utrwalacza. Próbuję teraz fs_usage na configd (patrz odpowiedź na NSGod poniżej). @Nathan - nie, nie.
Jesse Baer

Odpowiedzi:

6

„Chciałbym, aby istniał sposób, by„ dostać się do głowy Findera ”i zobaczyć, co robi. Próbowałem uruchomić próbkę procesu Findera w Activity Monitor, ale szczerze mówiąc, nie wiem, co robi, a tym bardziej interpretować dane wyjściowe. ”

Pobranie próbki w monitorze aktywności to dokładnie to: wejście do głowy Findera, aby zobaczyć, co robi. Choć może wydawać się grecki, ja lub inni tutaj możemy to dla ciebie zinterpretować. Wystarczy opublikować lub udostępnić do pobrania lub przeglądania (ponieważ są one dość duże).

Jakiej wersji OS X używasz? W OS X 10.5.xi wcześniejszych uważam, że zawartość multimedialna działała w samym Finderze, zamiast delegować ją do procesu typu agent / pomocnik, więc użycie procesora może wydawać się wyższe. Na przykład podgląd filmu QuickTime może sprawić, że Finder w wersji 10.5.x i wcześniejszych zwiększy się do 60% CPU, podczas gdy w 10.6 może zostać podzielony na coś w rodzaju 10% CPU dla Findera, 30% CPU na proces w tle QTKitHelper.

W przeciwnym razie czasami widziałem kod, którego Finder używa do obliczania wielkości zawartości folderu, powodując tymczasowe skoki procesora. (Zauważysz coś podobnego TSomething::HFSSizerSomethingdo śladu stosu próbki). Zwykle wydaje się, że nalega na zakończenie obliczeń, nawet jeśli otwarty widok, który uzasadniał obliczenia, został zamknięty.

W każdym razie obejrzenie próbki powinno pomóc w dokładnym wskazaniu problemu, a także wiedzieć, jaki kontekst doprowadził do wzrostu. Łatwiej będzie wyjaśnić, co robi pobieranie próbki, gdy mamy przed sobą wzrok.

NSGod
źródło
Ustawiłem Finder, aby wyświetlał niewidzialne pliki, a wyłączenie tego wydawało się leczyć. Ale miałem to ustawienie na jakiś czas, więc waham się przypuszczać, że rozwiązałem problem na dobre. Jak wspomniałem, były inne przypadki, w których myślałem, że rozwiązałem to tylko po to, aby zobaczyć, jak to się powtórzy.
Jesse Baer
(chciałem to dodać, ale limit czasu upłynął ...) Wygląda na to, że mamy kolejną okazję do wypróbowania tego - nagle configd zajmuje 15-20% mojego procesora. Nie straszne, ale niezwykłe i najwyraźniej w połączeniu z Chrome i ciepłym biurem, aby uruchomić mój wentylator… Oto dane wyjściowe z konfiguracji próbkowania: pastebin.com/aEaSN1zc
Jesse Baer
3

Masz dostęp do DTrace.

man -k DTrace

Te narzędzia oraz fs_usage -f fileys powinny dać ci odpowiedź.

chiggsy
źródło
1

Jak dotąd dobra rada. Podzielę się swoim doświadczeniem z Powerbookiem w Tiger (ale ponieważ Leopard ma również proces FatFinder, ten problem wystąpiłby również w wersji 10.5).

Pamiętam, że mam AVI w folderze. Ten format był dziwny, nie był to zwykły film Quicktime ani nic takiego; wtedy aparaty telefoniczne były złe i używały najgorszych możliwych kodeków, jakie kiedykolwiek stworzono. Za każdym razem, gdy wchodziłem do tego „folderu” z Finderem, zawiesił się, ponieważ próbował „odczytać” plik, a kodek był zły.

W końcu, albo przez szczęście, albo dlatego, że o tym zapomniałem (lub usunąłem), przestało się to dziać. Ale zajęło mi trochę czasu, aby dowiedzieć się, co to było. Pamiętam dokładnie to zachowanie, które przytrafiło mi się w Leopardzie przy „źle” sformatowanym filmie. Quicklook zawiesiłby celownik na tym materiale.

Musiałem otworzyć go za pomocą VLC, aby go „naprawić”. A potem w tajemniczy sposób znów zaczął działać.

Sugeruję, abyś sprawdził wzorce użytkowania przed skokiem CPU, aby sprawdzić, czy coś jest wspólnego. Typ pliku, określony folder, określony czas itp.

W chwili pisania tego artykułu nie znam twojej wersji OS X (10.x?), Więc te informacje mogą być nieco nieaktualne, jeśli używasz Snow Leopard.

Dodatkowo postępuj zgodnie z radą, próbując wypisać fs_usage, top i podobne narzędzia. To może dać nam lepszą wskazówkę. Dane wyjściowe z Console.app (/ Applications / Utilities) mogą rzucić nieco światła na problem.

Martin Marconcini
źródło
Dzięki - jak mogłeś zauważyć z mojej odpowiedzi na NSGod, użycie procesora Findera spadło, ale teraz configd wydaje się działać, choć łagodnie. Normalnie nie martwiłbym się tym, ale chciałbym, żeby tu była konsola z
Jesse Baer
około ostatniej godziny, co zdecydowanie obejmuje, gdy configd zaczął być zajęty: pastebin.com/V8qpLuD2
Jesse Baer
1

Znalazłem tylko dwa narzędzia, które są zasadniczo pomocne w rozwiązywaniu problemów z wysokim zużyciem procesora w jednym odizolowanym programie. Tak, monitor aktywności może próbkować i mówić, gdzie się zawiesił / przetwarzał - ale uważam, że Instrumenty lepiej nadają się do sedna problemu, jeśli fs_usage nie może. DTrace jest niesamowity - po prostu nigdy nie musiałem poświęcać czasu na naukę - Instrumenty działają wystarczająco dobrze, a krzywa uczenia się była dla mnie znacznie niższa.

  1. fs_usagei grepzawężenie dostępu do plików często pozwala mi dowiedzieć się, gdzie / gdzie leżą problemy, dzięki czemu mogę podjąć działania, aby je naprawić / dostroić.
  2. Aplikacja Instruments - Xcode 3 jest udostępniany darmowym programistom lub Xcode 4 (zakupiony w Mac App Store lub jako płatny programista). Pomyśl o tym jak o monitorowaniu próbek / aktywności na sterydach - możesz wyśmiewać się z takich rzeczy, jak przydzielanie pamięci / wycieki i uzyskać dużo informacji o tym, co dzieje się w wolnym procesie podczas jego działania.
bmike
źródło
1

Przez kilka tygodni nękało mnie wysokie użycie procesora Findera (80–100%). W końcu odkryłem, że to moje ustawienie Findera obliczyło wszystkie rozmiary w folderze. Ta opcja nie jest domyślnie włączona, ale warto ją sprawdzić na wszelki wypadek

  1. Otwórz Finder
  2. Z paska menu wybierz Widok -> Pokaż opcje widoku
  3. Upewnij się, że „Oblicz wszystkie rozmiary” nie jest zaznaczone
  4. Kliknij „Użyj jako domyślnych”

Gdy to zrobiłem, zobaczyłem, że użycie procesora Findera spadło natychmiast do 0%.

Kyle Cronin
źródło
1

Jestem na MacBooku, OSX 10.6.8. Ja również mam niezliczone „bingery procesora Findera”, którym towarzyszy wentylator. Konsola zgłasza różnego rodzaju zagadkowe skargi, często powtarzane wielokrotnie [inne sytuacje również powodują obracanie się wentylatora, a konsola wyświetla skargi wielokrotne].

Niedawno odkryłem, że wyłączenie mojego Lotniska uspokaja Findera . Niezbyt przydatne lekarstwo, ponieważ teraz mam włączone lotnisko, więc mogę tu być, i tak, Monitor aktywności pokazuje, że Finder zużywa 100% procesora [cokolwiek to może być -?]

korniszon
źródło
1

Zmień wyszukiwarkę> preferencje> Ogólne „Pokaż nowe okno Findera” na cokolwiek innego niż „Wszystkie moje pliki”. To bardzo pomaga.

aziwaan
źródło