Czy mogę zmusić komputer Mac do lepszego wykorzystania nieaktywnej pamięci?

15

Używam mysql i zajmuje do 2,5 GB pamięci RAM. Sprawdziłem monitor aktywności i zobaczyłem, że mam 1 GB nieaktywnej pamięci, ale nigdy się nie zmienia, nawet jeśli mam tylko 10 MB aktywnej wolnej pamięci. Czy istnieje sposób na wymuszenie użycia nieaktywnej pamięci?

AliBZ
źródło

Odpowiedzi:

18

Możesz myśleć o nieaktywnej pamięci, takiej jak wolna pamięć, która została zarezerwowana dla ostatnio zamkniętej aplikacji, ale jest gotowa do wykorzystania przez inne zastosowania po wyczerpaniu „prawdziwie” wolnej pamięci. Jeśli masz 1 GB pamięci (w celu ułatwienia tej dyskusji) w świeżo uruchomionym systemie, wyobraź sobie, że system operacyjny zużywa 300 MB i otwierasz aplikację, która zużywa 200 MB. Masz teraz w sumie 500 MB i 500 darmowych. Jeśli zamkniesz aplikację, która używała 200 MB, pamięć zostanie oznaczona jako nieaktywna, a teraz będziesz mieć 300 używanych (OS), 200 nieaktywnych i 500 wolnych. Jeśli otworzysz aplikację wymagającą 600 MB, wykorzysta ona wolną pamięć, a następnie pobierze z nieaktywnej puli.

Możesz zwolnić nieaktywną pamięć, otwierając Terminal.app i wpisując (bez $):

 $ purge

Możesz również skonfigurować MySQL, aby używał więcej pamięci, ale jeśli nie masz problemów z wydajnością, zostawię wszystko w spokoju:

Aby uzyskać więcej informacji o nieaktywnej pamięci w OS X:

Aaron Lake
źródło
Dziękuję za odpowiedź, ale moim problemem jest to, że mój system działa naprawdę wolno, ale nie korzysta z nieaktywnej pamięci.
AliBZ 17.03.11
Poprawiłem się, możesz wyczyścić nieaktywną pamięć (ups!), Zobacz zaktualizowaną odpowiedź. Ponadto wygląda na to, że dzieje się coś innego. Czy korzystasz z jakichkolwiek maszyn wirtualnych? Dużo otwartych aplikacji? Czy na pewno jest to problem z pamięcią? Może wąskie gardło procesora? Dysk I / O?
Aaron Lake
Korzystam z mysql z dużymi zapytaniami. Nie mam uruchomionej żadnej innej dużej aplikacji.
AliBZ 17.03.11
@AliBZ: mój system działa naprawdę wolno, ale nie korzysta z nieaktywnej pamięci : System może być wolny również z powodu użycia procesora. Sprawdziłeś to?
Nivas
To bardzo ładny teoretyczny widok systemu, dokładnie taki, jak twierdzi Apple. Ale mam ten sam pb co OP i purgezawiesza mój system na kilka sekund i nie robi ... nic (przynajmniej w odniesieniu do nieaktywnej pamięci pb). I tak, mój system też się zmienia, chociaż powinienem mieć więcej niż 1 GB wolnej pamięci RAM.
PierreBdR
0

Aby rozwinąć odpowiedź Aarona:

Twoja sprawa może być problemem z tym, że MySQL zajmuje zbyt dużo zasobów, ale pamięć nieaktywna jest jak wolna pamięć dla systemu operacyjnego. Różnica między nieaktywnym a darmowym polega na tym, że ostatnio użyto nieaktywnego , więc jeśli np. Otworzysz iTunes i zużyje on 200 MB, po zamknięciu program zostanie zamknięty, pamięć iTunes oznaczona jako nieaktywna, ale pozostanie taka, chyba że jest potrzebna ponownie . Ale jeśli ponownie otworzysz iTunes, OS X wie, że już tam jest i jest nieaktywny, więc oznacza go ponownie jako aktywny i voilá, to było szybsze niż konieczność ponownego ładowania go z wolniejszego dysku twardego.

Podaj więcej informacji o swoim komputerze, aby znaleźć przyczynę „powolnego” systemu.

aktualizacja : oto więcej informacji o pamięci i OS X (od Apple):

http://support.apple.com/kb/ht1342

Martin Marconcini
źródło
na przykład mam to w moim monitorze aktywności: mysqld -> 2,2 GB oovoo -> 190 MB jądra -> 150 MB firefox -> 148 MB i inne aplikacje. Mam 26 MB wolnej pamięci i 1 GB nieaktywnej pamięci, a mój system jest teraz trochę wolny, ale moja nieaktywna pamięć się nie zmienia.
AliBZ 17.03.11
@AliBZ: Czy liczba „Zamień się” liczy się podczas wspinania na Monitor aktywności? To najlepszy wskaźnik, jaki znam, że system naprawdę nie ma dostępnej pamięci RAM (i konieczności wymiany zawartości pamięci na dysk, aby zrobić miejsce). Zauważ, że „Wpisy stron” nie są użytecznym wskaźnikiem, ponieważ będą się wspinać przy każdym uruchomieniu programu z dysku (chyba że zdarzy się, że jest już w nieaktywnej pamięci RAM).
Gordon Davisson