Mengapa MacBook Pro saya butuh waktu lama untuk tidur?

7

Sampai baru-baru ini, ketika saya menekan Option- Cmd- Eject, MacBook Pro saya biasanya langsung tidur (misalnya dalam tiga atau empat detik). Ini adalah MBP 8,2 dengan SSD dan 8GB RAM.

Sejak satu minggu atau lebih, itu membutuhkan waktu lebih lama; sekitar lima belas detik atau bahkan lebih. Inilah output konsol dari menekan pintasan keyboard hingga sleeppesan kernel :

7/31/11 11:50:59 PM mDNSResponder[17]   Client application bug: DNSServiceResolve(charon._smb._tcp.local.) active for over two minutes. This places considerable burden on the network.
7/31/11 11:50:59 PM mDNSResponder[17]   Client application bug: DNSServiceResolve(Meredith(SSH)._ssh._tcp.local.) active for over two minutes. This places considerable burden on the network.
7/31/11 11:51:03 PM kernel  PM notification timeout (pid 3715, Google Chrome He)
7/31/11 11:51:03 PM kernel  hibernate image path: /var/vm/sleepimage
7/31/11 11:51:03 PM kernel  sizeof(IOHibernateImageHeader) == 512
7/31/11 11:51:03 PM kernel  Opened file /var/vm/sleepimage, size 8589934592, partition base 0xc805000, maxio 400000 ssd 1
7/31/11 11:51:03 PM kernel  hibernate image major 14, minor 2, blocksize 512, pollers 5
7/31/11 11:51:03 PM kernel  hibernate_alloc_pages flags 00000000, gobbling 0 pages
7/31/11 11:51:03 PM kernel  hibernate_setup(0) took 0 ms
7/31/11 11:51:06 PM kernel  IOThunderboltSwitch::i2cWriteDWord - status = 0xe00002ed
7/31/11 11:51:06 PM kernel  System SafeSleep
7/31/11 11:51:15 PM kernel  IOThunderboltSwitch::i2cWriteDWord - status = 0x00000000
7/31/11 11:51:15 PM kernel  hibernate_page_list_setall start 0xffffff809225b000, 0xffffff809229b000
7/31/11 11:51:15 PM kernel  hibernate_page_list_setall time: 447 ms
7/31/11 11:51:15 PM kernel  pages 1564968, wire 250981, act 375476, inact 548, spec 267, zf 6140, throt 0, could discard act 115301 inact 538951 purgeable 39710 spec 237594
7/31/11 11:51:15 PM kernel  hibernate_page_list_setall found pageCount 633412
7/31/11 11:51:15 PM kernel  IOHibernatePollerOpen, ml_get_interrupts_enabled 0
7/31/11 11:51:15 PM kernel  IOHibernatePollerOpen(0)
7/31/11 11:51:15 PM kernel  writing 631584 pages
7/31/11 11:51:15 PM kernel  encryptStart 69aa50
7/31/11 11:51:15 PM kernel  encryptEnd 89ade70
7/31/11 11:51:15 PM kernel  image1Size 310265344, encryptStart1 69aa50, End1 89ade70
7/31/11 11:51:15 PM kernel  encryptStart 127e4600
7/31/11 11:51:15 PM kernel  encryptEnd 40c9f7c0
7/31/11 11:51:15 PM kernel  PMStats: Hibernate write took 8066 ms
7/31/11 11:51:15 PM kernel  all time: 8066 ms, comp time: 2645 ms, deco time: 0 ms, 
7/31/11 11:51:15 PM kernel  image 1086978048, uncompressed 2587336704 (631674), compressed 1074427632 (41%), sum1 4849c5df, sum2 d1708974
7/31/11 11:51:15 PM kernel  wired_pages_encrypted 146094, wired_pages_clear 103149, dirty_pages_encrypted 382431
7/31/11 11:51:15 PM kernel  hibernate_write_image done(0)
7/31/11 11:51:15 PM kernel  sleep

Perhatikan bahwa saya mengetahui pertanyaan ini , tetapi saya belum mengubah apa pun dalam sistem dan biasanya tidur lebih cepat dari sekarang. Menimbang bahwa PMStatsmelaporkan waktu hibernasi menulis lebih dari delapan detik, ini membuat saya berpikir itu adalah konten RAM.

Satu-satunya perubahan sistem yang saya ingat adalah menginstal dua pembaruan untuk 10.6 yang keluar sebelum rilis final Lion. Apakah itu mengubah sesuatu?

Bagaimana saya mengatasi masalah ini?


Bahkan sesudahnya

sudo pmset -a hibernatemode 0
sudo pmset -a hibernatemode 1

dibutuhkan kira-kira waktu yang sama untuk tidur.


FYI, inilah informasi dari tidur "bersih" (tidak aman):

8/1/11 2:26:49 PM   kernel  AirPort: Link Down on en1. Reason 8 (Disassociated because station leaving).
8/1/11 2:26:50 PM   kernel  IOThunderboltSwitch::i2cWriteDWord - status = 0xe00002ed
8/1/11 2:26:50 PM   kernel  IOThunderboltSwitch::i2cWriteDWord - status = 0x00000000
8/1/11 2:26:50 PM   kernel  IOThunderboltSwitch::i2cWriteDWord - status = 0xe00002ed
8/1/11 2:26:50 PM   kernel  IOThunderboltSwitch::i2cWriteDWord - status = 0xe00002ed
8/1/11 2:26:50 PM   configd[14] network configuration changed.
8/1/11 2:26:50 PM   kernel  System Sleep
8/1/11 2:26:50 PM   kernel  IOThunderboltSwitch::i2cWriteDWord - status = 0x00000000
8/1/11 2:26:50 PM   configd[14] network configuration changed.
8/1/11 2:26:50 PM   kernel  IOThunderboltSwitch::i2cWriteDWord - status = 0xe00002ed
8/1/11 2:26:50 PM   configd[14] setting hostname to "charon.local"
8/1/11 2:26:50 PM   kernel  IOThunderboltSwitch::i2cWriteDWord - status = 0xe00002ed
8/1/11 2:26:50 PM   kernel  IOThunderboltSwitch::i2cWriteDWord - status = 0xe00002ed
8/1/11 2:26:58 PM   kernel  Wake reason = EHC2
8/1/11 2:26:58 PM   kernel  System Wake
slhck
sumber
Sudahkah Anda mencoba reboot setelah pmsetmemastikan penulisan perubahan sleepimage berlaku? Untuk sebagian besar, menunggu 8g konten ram untuk disinkronkan ke disk menyebabkan penundaan. Jangan memposting pesan system.log untuk waktu tidur yang tidak aman juga - mungkin membantu
bmike
Saya memperbaruinya. Memiliki 45GB tersedia dan tidak pernah mengambil lebih banyak ruang dari itu, sepertinya bukan hal kinerja (belum memiliki masalah kinerja dengan SSD). Saya pikir memori 5GB sedang digunakan.
slhck
Ini relevan: apple.stackexchange.com/questions/56432/…
Aram Kocharyan

Jawaban:

3

Mengingat bahwa PMStats melaporkan waktu hibernasi menulis lebih dari delapan detik, ini membuat saya berpikir itu adalah konten RAM.

Persis. Konten RAM Anda ditulis ke disk, dalam mode sleep default, yang disebut "Safe sleep", yang membutuhkan waktu lebih lama daripada RAM yang Anda miliki. Anda dapat memodifikasi ini dengan perintah PMSet di terminal .

sudo pmset -a hibernatemode 0

dan kemudian reboot.

Jika Anda menonaktifkan opsi ini, Anda juga dapat menghapus file sleepimage dari /var/vm, dan mendapatkan kembali ruang hard disk 8GB. Perhatikan bahwa Anda akan kehilangan data jika Anda tidur terlalu lama dan baterai mati.

Paul Eccles
sumber
sudo pmset -a hibernatemode 0(seperti yang disarankan dalam pertanyaan lain) tidak mengubah apa pun. Waktu tidurnya masih sama (sekitar 15 detik).
slhck
1
Aneh, apakah Anda reboot? Dan apakah Anda menghapus gambar tidur? Jika Anda menjalankan pmset -g | grep hibernate mode, apakah ini menunjukkan 0? Ada juga aplikasi "tidur pintar".
Paul Eccles
Seharusnya grep hibernatemode, tapi itu tetap diatur ke 1. Tidak ada gambar tidur yang ditemukan. Saya akan mencoba me-reboot sekarang.
slhck
Menghapus gambar tidur kemungkinan tidak akan membantu selain memastikan tidak akan diciptakan kembali setelah reboot (cara tidak langsung untuk memastikan pmset bekerja)
bmike
Sekarang (setelah reboot) itu berhasil - masih saya agak bingung. Mengapa tidak butuh waktu lama di awal? Beberapa pengaturan harus diubah.
slhck
1

Dulu saya memiliki episode boot yang lambat, shutdown, sleep, dan hibernate. Ketika saya mengaktifkan mode verbose selama boot-up, itu macet di "Menunggu DSMOS" untuk waktu yang lama. Lihat tautan ini . Untuk mengatasinya, lihat tautan ini .

Setelah itu, semua kelambatan saya hilang.

ivan98
sumber
Mematikan dan mem-boot sebenarnya tidak apa-apa, hanya tidur yang aman saja yang lambat. Terima kasih, saya akan membacanya!
slhck
1

Apakah Anda punya perangkat firewire yang terhubung? Jika saya mencoba untuk tidur Macpro (menara) saya dengan kamera iSight yang lebih tua dicolokkan melalui Firewire, dibutuhkan 10-20 detik untuk tidur, vs yang normal 2-3.

Koma Kafein
sumber
Bagi saya bukan itu masalahnya, tapi senang tahu!
slhck