เชื่อง High WindowServer CPU ใช้บน Mac
The Mac ได้รับการเปลี่ยนแปลงมากมายกับ OS X Yosemite พร้อมกับการออกแบบภาพใหม่ที่โดดเด่น แต่การเปลี่ยนแปลงบางอย่างและเอฟเฟ็กต์โปร่งใสต่างๆ อาจส่งผลต่อประสิทธิภาพการทำงานของ Mac ของผู้ใช้บางรายที่มีพฤติกรรม WindowServer ที่ผิดพลาด โดยทั่วไปจะแสดงให้เห็นด้วยกระบวนการ WindowServer ที่พุ่งเข้าสู่การใช้งาน CPU อย่างหนักโดยดูเหมือนไม่มีเหตุผล มักจะมาพร้อมกับการใช้หน่วยความจำที่มากเกินไป ซึ่งนำไปสู่พฤติกรรมที่เฉื่อยชาและกระตุกระหว่างการใช้งานทั่วไปของ Mac OS X และ MacOS บนคอมพิวเตอร์บางเครื่อง
ที่แย่ที่สุด บางอย่าง เช่น การเปิด Quick Look การเปิดหน้าต่าง Finder ใหม่สองสามหน้าต่าง หรือการเลื่อนดูเนื้อหาในโฟลเดอร์ Finder ที่พลุกพล่าน นำไปสู่การเพิ่มการใช้งานตัวประมวลผล WindowServer ซึ่งสูงพอที่จะทำให้คอมพิวเตอร์ หยุดนิ่งหรือแม้แต่ลักษณะของเคอร์เซอร์ลูกบอลชายหาดที่ร้ายกาจมาก
หาก WindowServer ใช้งาน CPU สูงบ่อยครั้งโดยดูเหมือนไม่มีเหตุผลที่มีความหมายในบางสถานการณ์กับ macOS และ Mac OS X บทความนี้มุ่งเป้าไปที่คุณ เราจะพยายามทำให้กระบวนการ WindowServer เชื่องโดยการลดองค์ประกอบและคุณสมบัติที่อาจกระตุ้นพฤติกรรมของ WindowServer (หรือพฤติกรรมที่ไม่เหมาะสม) ซึ่งเป็นงานที่ท้าทายเนื่องจาก WindowServer จำเป็นต้องดึงเกือบทุกอย่างที่เห็นใน Mac OS X หวังว่าการใช้งาน CPU ของ WindowServer ปัญหาเป็นเพียงปัญหาข้อบกพร่องหรือการเพิ่มประสิทธิภาพที่จะได้รับการแก้ไข แต่ในขณะนี้ ลักษณะการทำงานนี้ยังคงดำเนินต่อไปใน Mac OS เวอร์ชันล่าสุด (Mac OS X 10.10.3 เป็นต้นไป) แม้ในฮาร์ดแวร์ Mac รุ่นใหม่ล่าสุด โชคดีที่มีวิธีแก้ไขบางอย่างที่ช่วยได้ มาเริ่มกันเลย
ปิดเอฟเฟกต์โปร่งใสใน Mac OS X
การปิดเอฟเฟ็กต์ความโปร่งใสเพียงอย่างเดียวช่วยเพิ่มความเร็วให้กับ Mac ทุกเครื่องที่ฉันเคยพบที่ใช้ Mac OS X Yosemite หรือใหม่กว่า ไม่ว่าฮาร์ดแวร์นั้นจะใหม่หรือเก่าก็ตาม แม้ว่าคอมพิวเตอร์จะไม่รู้สึกว่าช้าเป็นพิเศษ แต่ก็เกือบจะรู้สึกเร็วขึ้นเมื่อปิดเอฟเฟ็กต์ความโปร่งใส
- ไปที่เมนู Apple แล้วเลือก “System Preferences” จากนั้นไปที่ “Accessibility”
- เลือก “แสดง” จากเมนูด้านซ้าย
- สลับสวิตช์ข้าง “ลดความโปร่งใส” เป็นเปิด (อีกทางหนึ่ง คุณสามารถเปิดใช้งานเพิ่มความคมชัด หากคุณต้องการให้ UI แยกความแตกต่างได้ง่ายขึ้น ซึ่งจะเป็นการปิดองค์ประกอบโปร่งแสงตลอด OS X)
การเพิ่มความเร็วจะสังเกตได้ทันทีในการดำเนินการส่วนใหญ่ และคุณยังสามารถวัดผลลัพธ์ก่อนและหลังได้ด้วยตัวตรวจสอบอัตราเฟรม FPS ใน Quartz Debug ซึ่งขึ้นอยู่กับฮาร์ดแวร์ที่สามารถเป็น 10 FPS หรือสูงกว่า เพิ่มอัตราการรีเฟรชของภาพเคลื่อนไหวบนหน้าจอ
นี่เป็นกรณีของ Mac OS X 10.10.3 (แม้ว่าจะเป็นรุ่นเบต้า) ดังนั้นอาจมีข้อบกพร่องที่ดื้อรั้นหรืออาจมีการปรับแต่งประสิทธิภาพเล็กน้อยสำหรับ OS X Yosemite
โดยส่วนตัวแล้ว ฉันชอบเอฟเฟ็กต์โปร่งใส ดังนั้นฉันจึงมักจะใช้สิ่งนี้ต่อไปกับฮาร์ดแวร์ Mac รุ่นใหม่ล่าสุด แต่แม้แต่ MacBook Pro Retina รุ่นปี 2015 ของฉันที่มี RAM ขนาด 16GB ก็ยังได้รับการเพิ่มประสิทธิภาพจากการปิดความโปร่งใส ในขณะเดียวกัน ฮาร์ดแวร์รุ่นเก่าอย่าง MacBook Air จากปี 2012 นั้นค่อนข้างเชื่องช้าอย่างน่าหงุดหงิดด้วยเอฟเฟกต์โปร่งใส และฉันเคยได้ยินคำตำหนิที่คล้ายกันนี้จากผู้ใช้ Retina iMac 27″ ซึ่งเห็นได้ชัดว่าเป็นฮาร์ดแวร์ที่ค่อนข้างใหม่และทรงพลังฮาร์ดแวร์ใหม่ที่มีทรัพยากรเหลือเฟือยังคงประสบปัญหาในการแสดงเอฟเฟกต์โปร่งใสใน OS X ซึ่งบ่งชี้ว่าน่าจะมีโซลูชันซอฟต์แวร์ในท้ายที่สุด
ปิดแอพที่ไม่ได้ใช้ & Finder Windows
เมื่อ OS X Yosemite เปิดหน้าต่างของแอพหรือ Finder จำนวนมาก WindowServer จะเริ่มใช้ทรัพยากรในปริมาณที่มากเกินไป แม้ว่าสิ่งนี้สามารถเกิดขึ้นได้ในทุกเวอร์ชันของ OS X (หรือ OS อื่นๆ สำหรับเรื่องนั้น) แต่ก็มีบางอย่างที่ไม่เหมือนใครเกี่ยวกับ Yosemite ซึ่งทำให้สิ่งนี้เป็นเหตุการณ์ที่สิ้นเปลืองโดยเฉพาะ
วิธีแก้ปัญหาคือพฤติกรรมของผู้ใช้มากกว่าสิ่งอื่นใด ติดนิสัยการปิดหน้าต่างหรือแอพที่ไม่ได้ใช้เพื่อไม่ให้ต้องใช้ทรัพยากรอีกต่อไป
การจดจำการกดแป้น Close All Windows จะมีประโยชน์ในการจัดการสิ่งนี้
หยุดพื้นที่ควบคุมภารกิจจัดเรียงตัวเองใหม่
หากคุณใช้ Spaces ซึ่งโดยพื้นฐานแล้วเป็นสภาพแวดล้อมเดสก์ท็อปเสมือนบน Mac การหยุดช่องว่างไม่ให้จัดเรียงใหม่ตามการใช้งานดูเหมือนจะสร้างความแตกต่างเล็กน้อยในการทำงานของ WindowServer
- เปิด System Preferences จากเมนู Apple แล้วไปที่ “Mission Control”
- ปิดใช้งานการตั้งค่าสำหรับ “จัดเรียง Spaces ใหม่โดยอัตโนมัติตามการใช้งานล่าสุด”
ผู้ใช้จำนวนมากไม่ได้สังเกตเห็นคุณลักษณะนี้อยู่ดี ดังนั้นแม้ว่าการปรับปรุงเกือบจะเป็นศูนย์ ก็มักจะไม่พลาด
หลายหน้าจอ? ปิดช่องว่างสำหรับแต่ละ
หากคุณมีการตั้งค่าหลายจอภาพ การตั้งค่าอื่นที่จะปิดใช้งานคือช่องว่างสำหรับแต่ละจอภาพ
- เปิด System Preferences แล้วไปที่ “Mission Control”
- สลับการตั้งค่าสำหรับ “จอแสดงผลมีพื้นที่แยกต่างหาก” เป็นปิด
- ออกจากระบบ หรือให้ดีกว่านั้น รีบูตเครื่อง Mac
แน่นอน หากคุณไม่ใช่คนที่จะใช้หลายหน้าจอกับ Mac ของคุณ การเปลี่ยนแปลงนั้นจะไม่มีผล ดังนั้นคุณควรโฟกัสไปที่อื่น
รีบูต
หากคุณเป็นหนึ่งในผู้ใช้ Mac ที่ไม่เคยปิดเครื่องหรือรีบูตเครื่อง Mac แต่คุณประสบปัญหา WindowServer ที่มี CPU สูง คุณอาจต้องปรับและรีสตาร์ทเครื่อง Mac ให้บ่อยขึ้นอีกเล็กน้อย เพียงแค่รีสตาร์ท Mac ก็เป็นวิธีแก้ปัญหาชั่วคราวสำหรับพฤติกรรมที่ไม่เหมาะสมของกระบวนการ WindowServer ฉันรู้ว่านี่ฟังดูเป็นคำแนะนำที่แย่ที่สุด แต่ผู้แสดงความคิดเห็นหลายคนรายงานว่าวิธีนี้ประสบความสำเร็จชั่วคราว และฉันได้สังเกตเห็นการปรับปรุงด้วยตนเอง น้อยกว่าอุดมคติอย่างแน่นอน แต่จนกว่าจะมีการแก้ไขสาเหตุที่แท้จริง สิ่งนี้สามารถช่วยได้
หากคุณดำเนินการทั้งหมดข้างต้นแล้วและคุณยังคงพบว่า WindowServer ทำงานผิดปกติหรือ Mac ทำงานช้าผิดปกติ คุณควรอ่านเคล็ดลับเหล่านี้เพื่อเพิ่มความเร็ว OS X Yosemite หรือแม้แต่เคล็ดลับทั่วไปเพื่อทำความเข้าใจว่าทำไม Mac ทำงานได้ช้า ซึ่งสามารถช่วยเพิ่มเติม
คุณเคยประสบปัญหาเกี่ยวกับ Window Server หรือไม่? คุณมีเคล็ดลับในการลดการใช้ทรัพยากร WindowServer ใน OS X Yosemite หรือไม่ อย่าลืมแบ่งปันประสบการณ์และกลเม็ดของคุณในความคิดเห็นของเรา