เหตุใดความสามัคคีจึงเป็นสภาพแวดล้อมเดสก์ท็อปที่“ ช้า”


39

พื้นหลัง

ก่อนอื่นนี่ไม่ใช่คำถามเกี่ยวกับความคิดเห็น ฉันสมมติว่าเรากำลังพูดถึง Unity 3D และบนคอมพิวเตอร์ที่มีการกำหนดค่ากราฟิกที่เหมาะสม จาก "สภาพแวดล้อมเดสก์ท็อป" ฉันกำลังสมมติว่าคำจำกัดความที่ยอมรับกันโดยทั่วไปว่า DE หมายถึงอะไร

ฉันได้เห็นการเปรียบเทียบจำนวนมากและหลายคนบอกว่า Unity เป็นสภาพแวดล้อมเดสก์ท็อปที่ช้าที่สุดบน Ubuntu (เทียบกับคนอื่น ๆ เช่น Gnome, XFCE, LXDE เป็นต้น) ฉันไม่รู้ว่าผู้คนนำ KDE มาพิจารณาหรือไม่

คำถาม

  • ทำไม Unity จึงช้าเมื่อเทียบกับสภาพแวดล้อมเดสก์ท็อปอื่น มันเป็นเพราะกราฟิกสูงที่ใช้ใน Unity หรืออย่างอื่น? (ฉันไม่รู้ว่าสิ่งใดในความเป็นเอกภาพทำให้มันทำงานช้า)
  • การเปลี่ยนแปลงใดที่สามารถถูก / ทำกับ Unity เพื่อให้เร็วขึ้น / ปรับปรุง perfomance

ตามมาตรฐานปัจจุบันฉันไม่คิดว่าหลักฐานของคุณถูกต้อง
belacqua

ฉันคิดว่าความคิดเห็นนี้จะมีประโยชน์มากขึ้นหากคุณให้ลิงก์ไปยังการวัดประสิทธิภาพที่คุณพูดถึง ต้องจำไว้เสมอว่าคำถามนี้ถามมานานกว่าครึ่งปีที่แล้ว
Bharadwaj Srigiriraju

มาตรฐานสำหรับรุ่นก่อนวางจำหน่าย 13.04 ในคำตอบของ Luis Alvarado โปรดดูไซต์ Phoronix / artcicles ที่เกี่ยวข้องสำหรับสิ่งที่ใหม่กว่า ความจริงที่ว่าตอนนี้เป็นคำถามเก่าคือว่าทำไมฉันใส่ข้อแม้เกี่ยวกับมาตรฐาน 'ปัจจุบัน' ที่นั่น
belacqua

โฮมไดเร็กทอรีของคุณถูกควบคุมโดย NIS หรือไม่? ฉันเพิ่งพบ Unity ที่แย่มาก แต่สำหรับล็อกอิน NIS ของฉันซึ่งเป็นโฮมไดเร็กตอรี่ที่แชร์บนเครือข่าย สำหรับผู้ใช้ในท้องถิ่นประสิทธิภาพก็ดีขึ้น
Stephen Quan

คำตอบ:


41

คำตอบนั้นขึ้นอยู่กับปัจจัยสำคัญ 3 ประการที่ทำให้รู้สึก "ช้า" หรือดีกว่า แต่ FPS น้อยกว่า:

  • เวอร์ชั่นของ Ubuntu (อัปเดตไม่ใช่แค่ปล่อยไว้ตอนเปิดตัว)
  • การ์ดแสดงผล (Ati, Intel, Nvidia)
  • เวอร์ชั่นของไดรเวอร์ (กรรมสิทธิ์, โอเพ่นซอร์ส, เวอร์ชั่นจริง)

ฉันจะอธิบายแต่ละประเด็น:

เวอร์ชันของ Ubuntu

สำหรับเวอร์ชั่นของ Ubuntu นั้นเป็นที่ทราบกันดีว่าการใช้ 11.10 กับ Unity จะเป็นการดูด ทำให้พีซีดูดอย่างแท้จริงแม้เปิด Gedit หรือ Nautilus ในกรณีส่วนใหญ่ การพยายามเล่นเกมใน OpenGL หรือผ่านทางไวน์ด้วย DirectX หรือ OpenGL จะส่งผลให้ FPS น้อยกว่าปกติแม้จะเปรียบเทียบกับ DE อื่น ๆ สิ่งนี้จะเปลี่ยนไปอย่างมากใน 12.04 จากนั้นอีกครั้งใน 12.10 เมื่อจำนวน FPS เริ่มขึ้น

เนื่องจากล่าสุดคือ 12.10 ฉันควรพูดถึงว่าสำหรับบางคนการใช้ 12.10 โดยไม่ต้องอัพเกรดไม่ได้แก้ไขปัญหาสำคัญหลายประการที่ได้รับการแก้ไขใน Compiz และ Unity ประมาณหนึ่งเดือนหลังจากการเปิดตัว ดังนั้นผู้ใช้งาน 12.10 คนจะต้องอัพเกรดเพื่อรับสิทธิประโยชน์นี้ นี่เป็นเพราะส่วนที่สำคัญที่สุด 2 อย่างที่พูดถึงเมื่อประสิทธิภาพของ FPS และ OpenGL คือ Unity และ Compiz (Compiz เป็นส่วนที่สำคัญที่สุดเมื่อพูดถึงผลกระทบด้านประสิทธิภาพ)

ประโยชน์และการปรับปรุงที่ทั้งสองโครงการ Compiz ได้รับตลอดทั้งซีรีส์ 0.9.8 และซีรีส์ 0.9.9และ Unity กำลังได้รับในซีรีย์ 7.xนั้นน่าประทับใจมากจริงๆ

การทดสอบใน Phoronix และของฉันเองแสดงให้เห็นว่าสำหรับการ์ด Nvidia (การทดสอบเดียวที่ฉันทำได้จริง ๆ คือกับการ์ด Nvidia) ประสิทธิภาพเพิ่มขึ้น และไม่ใช่แค่ 3 หรือ 4 FPS แต่ประมาณ 20 ถึง 70 FPS ขึ้นอยู่กับการ์ดและไดรเวอร์

สิ่งนี้มีความสำคัญเนื่องจากขึ้นอยู่กับเวอร์ชันของ Ubuntu ที่ผู้ใช้ใช้งานนั้นจะขึ้นอยู่กับรุ่น Compiz และ Unity ที่มีให้พร้อมและค่าใช้จ่ายด้านประสิทธิภาพที่มาพร้อมกับมัน

เนื่องจาก Unity ต้องการ Compiz นี่จะเป็นสาเหตุที่ใหญ่ที่สุดของการนับ FPS ต่ำ แต่ไม่มากเหมือนเมื่อก่อนหรืออย่างน้อย 2 รุ่นที่ผ่านมา การรันยูทิลิตี้เบนช์มาร์กของ Compiz ในขณะที่เล่นวิดีโอเกมใน Wine หรือ Open Source นั้นทำให้ฉันมี FPS ที่ดีมากใน 12.10 และมากยิ่งขึ้นในขณะที่ฉันกำลังทดสอบ 13.04 กับ Nvidia รุ่น 313.xx ล่าสุด

ควรสังเกตว่าประสิทธิภาพของวิดีโอเป็นหนึ่งในประเด็นที่จะได้รับการจัดการใน 13.04 (และระดับใหญ่ใน 12.10 และ 12.04) เนื่องจากความมุ่งมั่นที่ Ubuntu มีให้กับผู้ใช้และ Steam (Valve) ไม่เพียง แต่ Ubuntu และ Valve จะทำงานในเรื่องนี้เท่านั้น แต่ Nvidia และ Intel ยังได้เข้าร่วมกับการอัปเดตจำนวนมากที่ได้เพิ่มความเร็วในการนับเวลาและเวลาอีกครั้ง หากคุณกำลังติดตามการปรับปรุงที่มากับเคอร์เนล 3.7 และ 3.8 คุณจะเห็นบางส่วนของมัน

เวอร์ชั่นของการ์ดและไดร์เวอร์

เป็นที่ทราบกันดีว่าประสิทธิภาพที่ชาญฉลาดนั้น Nvidia นั้นอยู่ด้านบนตามด้วย Intel และ Ati (นี่ไม่ควรสับสนกับการใช้งานที่ง่ายเนื่องจาก Intel นั้นดีกว่ามาก) โปรแกรมควบคุมล่าสุดสำหรับ Nvidia (ตัวอย่างเช่น306.64 , 310.19และ313.09 ) ได้นำมาปรับปรุงประสิทธิภาพ OpenGL ทั้งหมดโดยเฉพาะสำหรับความสามัคคี พิเศษ 313.09 ซึ่งจะใช้ในการปรับปรุง Compiz ยิ่งขึ้น

ตอนนี้ไม่เพียง แต่ Nvidia กำลังทำงานอย่างหนักเพื่อปรับปรุงถนนสำหรับ Compiz / Unity Intel ยังทำงานหนัก (ยากมาก) สำหรับฟีเจอร์สำคัญหลายประการสำหรับ Mesa ซึ่งควรปรับปรุงประสิทธิภาพโดยทั่วไปสำหรับการ์ดวิดีโอของ Intel ทั้งหมดโดยเฉพาะ 965, 2000 HD, 3000 HD และ 4000 HD Series ในที่สุด Ati / AMD ก็มีการอัพเดตหลายอย่างที่ทำขึ้นเพื่อแก้ไขข้อบกพร่องและปัญหาต่างๆของ Compiz

โดยทั่วไปแล้วการมีไดรเวอร์ล่าสุดสำหรับแต่ละตัวจะปรับปรุงประสิทธิภาพ แต่การมีการ์ด Nvidia จะเพิ่มประสิทธิภาพมากขึ้นตามด้วย Intel และ Ati

หลังจากอ่านทั้งหมดนี้แล้วมีการเปลี่ยนแปลงอะไรบ้างเพื่อปรับปรุงประสิทธิภาพโดยทั่วไปและนี่คือบางส่วน:

  • Nvidia กำลังทำงานตั้งแต่หลายรุ่นที่ผ่านมาในการปรับปรุงประสิทธิภาพของ Unity ด้วยการปรับปรุงมากกว่า 50% โดยทั่วไปสำหรับรุ่นที่เก่ากว่า

  • Intel กำลังทำงานกับ Mesa เพื่อปรับปรุงประสิทธิภาพของ Unity

  • Ubuntu และ Valve กำลังปรับปรุงประสิทธิภาพสำหรับ Compiz และ Unity

  • เท่าที่เห็นใน Launchpad มีหลายอย่างที่ทำกับ Compiz เพื่อปรับปรุงการตอบสนองและประสิทธิภาพที่ดีขึ้นโดยทั่วไป (รวมถึงการใช้หน่วยความจำและ cpu)

  • ดังที่เห็นใน Launchpad Unity ได้รับการแก้ไขมากมายเกี่ยวกับปัญหาส่วนใหญ่ที่ผู้ใช้พบเจอ

  • Compiz ได้ลดจำนวนหน่วยความจำลงกว่า 50% เมื่อปีที่แล้ว

  • ความสามัคคีรู้สึกเร็วขึ้นและเบาลงเมื่อเทียบกับรุ่นที่ใช้เมื่อปีที่แล้ว

  • มีงานบางส่วนที่ทำโดยSams Spilsburyสำหรับ Compiz และ Unity ล่าสุดที่จะแก้ไขปัญหาทั่วไปที่รู้จักกับ Unity

  • เคอร์เนลเวอร์ชัน 3.7 และ 3.8 จะนำการปรับปรุงวิดีโอมาใช้โดยทั่วไป

ดังนั้นอย่างที่คุณเห็นมีงานมากมายที่ต้องทำเพื่อพัฒนาความเป็นเอกภาพและ Compiz เพื่อความเป็นธรรมการเปรียบเทียบ Unity กับ Xfce หรือ Lxde นั้นไม่ยุติธรรม มันเหมือนกับการเปรียบเทียบจักรยานกับรถยนต์ ทั้งสองสามารถทำสิ่งที่ดีกว่า Compiz นำเสนอตัวอย่างของเอฟเฟกต์ที่ประณีตที่ Xfce หรือ Lxde ทำไม่ได้และถึงแม้ว่าพวกเราส่วนใหญ่ไม่ได้ใช้พวกมันพวกมันเป็นตัวเลือก (เช่นซิการ์ที่เบากว่าในรถ)

การเปรียบเทียบ KDE, Gnome3 และ DE อื่น ๆ กับ DE ต่ำสุด พวกเขาต่ำสุดด้วยเหตุผล พวกเขามักจะหลีกเลี่ยงการเปลี่ยนแปลงครั้งใหญ่ที่จะส่งผลกระทบต่อประสิทธิภาพในขณะที่ DE ระดับสูงจะพยายามเพิ่มคุณสมบัติที่อาจใช้ทรัพยากรมากขึ้นในตอนเริ่มต้น ตัวอย่างเช่นการมีวิดเจ็ตความสามารถในการหมุนหน้าต่างไปยังระดับใดก็ได้ที่เป็นไปได้มีผลเบลอที่ซ่อนพื้นหลังหรือมีพื้นหลังเคลื่อนไหวที่ มีตัวเลือกที่มีการใช้งานบางอย่างที่นำเสนอโดยเดสก์ท็อปบางตัวที่คนอื่น ๆ DE ไม่ต้องการหรือใช้เนื่องจากพวกเขามุ่งเน้นไปที่ระบบต่ำสุดมากขึ้น

ทุกคนที่ผ่านการทดสอบ KDE ตั้งแต่รุ่น 4.0 รู้ว่าการปรับปรุงครั้งใหญ่นั้นได้รับการปรับปรุงจนถึงรุ่น 4.9 ล่าสุด อันยิ่งใหญ่แน่นอน ทุกคนที่ทดสอบ Gnome 3.0 จนถึงรุ่นล่าสุด 3.8 รู้ถึงการเปลี่ยนแปลงครั้งใหญ่ของประสิทธิภาพที่ได้รับและทุกคนที่ทดสอบ Unity ตั้งแต่ 3.x ถึง 6.x (และ 7.x เร็ว ๆ นี้) จะรู้ได้อย่างไรว่า ประสิทธิภาพได้เพิ่มขึ้น ยกตัวอย่างเช่นฉันพลาด gnome2 แต่มีหลายกรณีที่ฉันไม่สามารถใช้ gnome2 ได้เพราะ Unity นั้นเป็นมิตรและเร็วกว่ามากในการช่วยให้ฉันประสบความสำเร็จในบางกรณี

ดังนั้นเคล็ดลับอะไรที่ฉันสามารถให้เพื่อปรับปรุงประสิทธิภาพ

ติดตั้งCompiz Config Settings Manager (ccsm) อย่างดี

และเล่นกับปลั๊กอิน OpenGL:

ป้อนคำอธิบายรูปภาพที่นี่

ตัวเลือกบางตัวนี้จะเพิ่มประสิทธิภาพการทำงานส่วนอื่น ๆ ที่ฉันต้องการเพื่อหลีกเลี่ยงปัญหาวิดีโอ หากใครพบคำถามเกี่ยวกับเรื่องนี้ฉันจะมีความสุขถ้าพวกเขาแก้ไขคำตอบนี้เพื่อรวมลิงค์ไปที่นี่ ฉันหามันไม่พบในตอนนี้ แต่ฉันรู้ว่ามีคำตอบที่พูดถึงเรื่องนี้

อื่น ๆ กำลังอัปเดตไดรเวอร์และหากเป็นไปได้ให้ใช้ Nvidia นอกจากนั้นการรอ 13.04 จะคุ้มค่า

สำหรับความคิดเห็นบางส่วนต่อไปนี้เป็นเกณฑ์มาตรฐานจาก Phoronix ที่ตรวจสอบว่าประสิทธิภาพการทำงานของ Unity บน 11.04, 12.04, 13.04 และ 13.10:

เกณฑ์มาตรฐานเดสก์ทอป 11.04

เกณฑ์มาตรฐานเดสก์ทอป 12.04

เกณฑ์มาตรฐานเดสก์ทอป 13.04

เกณฑ์มาตรฐานเดสก์ท็อป 13.10

และนี่คือสิ่งที่เกิดขึ้นกับ Nvidia ในช่วงหลายเดือนที่ผ่านมา

นอกจากนี้ยังมีบางบทความเกี่ยวกับ Ati / เอเอ็มดีที่นี่ , ที่นี่ , ที่นี่และที่นี่

สุดท้าย, Intel, Mesa และ Opengl ที่นี่ , ที่นี่และที่นี่


1
มีความสุขที่ได้ช่วย @BullfrogBlues ^^ ฉันมักจะแนะนำให้ลองใช้รสชาติทั้งหมดของ Ubuntu วิธีการที่คุณเรียนรู้แต่ละเดสก์ท็อปและวิธีที่พวกเขาคิดว่าเป็น
Luis Alvarado

กลับไปสู่ความเป็นเอกภาพใน 13.04 จาก gnome 3 ใน 12.04 ฉันสามารถพูดได้ว่าความสามัคคีตอนนี้เร็วขึ้น นอกจากนี้ยังgnome-shellเต็มไปด้วยข้อบกพร่องซีพียูสูงสุดแม้ในขณะที่ไม่ทำงาน สิ่งเดียวที่ฉันมี Unity คือแถบไอคอน
user117
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.