สถานการณ์การใช้งานเดสก์ท็อป Zswap, Zram, Zcache


12

ฉันพยายามเข้าใจถึงความแตกต่างของกรณีการใช้งานสำหรับ Zswap, Zram และ Zcache ขออภัยล่วงหน้าสำหรับคำถามที่มีคำยาว / เล็กน้อยเลอะเทอะ ฉันทำ googling เสร็จแล้วและฉันเข้าใจว่า zram นั้นเป็นอุปกรณ์บล็อกสำหรับการแลกเปลี่ยนแบบบีบอัดในขณะที่ zswap บีบอัดในเคอร์เนลโดยใช้ frontswap api ปรากฏว่าข้อดีอย่างหนึ่งของ zswap คือสามารถย้ายหน้าบางหน้าไปยัง swap swap ได้เมื่ออยู่ภายใต้ความกดดันในลักษณะ LRU ในขณะที่ zram ไม่สามารถทำได้ (โปรดยืนยันไม่แน่ใจว่านี่เป็นเรื่องจริงหรือไม่)

ดังนั้นนี่คือคำถามของฉัน: 1. ) ในฐานะผู้ใช้เดสก์ท็อปประสิทธิภาพของ zcache / zswap / zram โดยเฉพาะ zswap และ zram คืออะไร? ตัวอย่างเช่นหนึ่งดีขึ้น / แย่ลงที่การกระจายตัวของหน่วยความจำ (ชนิดที่นำไปสู่การใช้งานหน่วยความจำมากเกินไปและเสีย)?

คำถามโบนัส: 2. ) มีการผสมผสานที่ลงตัวของข้างต้น (เช่น zram + zswap หรือ zram + zcache) สำหรับประสิทธิภาพของเดสก์ท็อป (รวมถึงการตอบสนองของเดสก์ท็อปรวมถึงพฤติกรรมการสลับสับเปลี่ยนน้อยที่สุดและการจัดการหน่วยความจำสติ)

* การอ้างอิงแหล่งที่มาชื่นชมอย่างมาก

ฉันควรเพิ่มว่าฉันเป็นผู้ใช้ลีนุกซ์ที่มีประสบการณ์มาอย่างยาวนาน (5 ปี), และพยายามเข้าใจว่าระบบของฉันรวมถึงเคอร์เนลทำงานอย่างไร อย่างไรก็ตามฉันไม่ใช่โปรแกรมเมอร์และมีเพียงความรู้พื้นฐานในการเขียนโปรแกรม (หลักสูตร 3 หน่วยกิตวิทยาลัย) แต่ต้องมีเทคนิคถ้าคุณต้องการ; ฉันจะแยกความหมายของคุณในเวลาของฉันเอง

รายละเอียดระบบ:

Linux Mint 15
Processor:Core 2 Quad 6600 (2.4ghz)
Ram: 8G
linux kernel: liquorix 3.11 series
Storage: 128 GB SSD, 1TB HDD 5400rpm

ไม่มีความคิดเห็น "ซื้อ ram เพิ่มเติม" โปรด! ฉันใช้หน่วยความจำสูงสุดบนเมนบอร์ดนี้และมีงบประมาณการอัปเกรด $ 0 สำหรับอนาคตอันใกล้ อย่างไรก็ตามฉันชอบที่จะเก็บโปรแกรมแบบเปิดหน่วยความจำไว้อย่างแน่นหนา (หลายเบราว์เซอร์เป็นผู้บริโภคหลักของ ram ของฉัน) ดังนั้นฉันจึงไม่รังเกียจที่จะสลับสับเปลี่ยนภายในขีด จำกัด ประสิทธิภาพในการย่อยสลายที่สมเหตุสมผล


1
ดูเพิ่มเติมสอบถามอูบุนตู 's zram VS zswap VS zcache คู่มือที่ดีที่สุด: เมื่อจะใช้เป็นที่หนึ่ง
Derobert

คำตอบ:


7

วิธีที่ดีที่สุดที่ฉันสามารถตอบคำถามเหล่านี้ได้ก็คือพูดในสิ่งที่แท้จริงทั้งสามข้อ

zRAM

zRAM ไม่มีอะไรมากไปกว่าอุปกรณ์แลกเปลี่ยนในสาระสำคัญ การจัดการหน่วยความจำจะผลักหน้าออกไปยังอุปกรณ์สลับและ zRAM จะบีบอัดข้อมูลนั้นจัดสรรหน่วยความจำตามต้องการ

Zswap

Zswap เป็นพื้นที่สว็อปบีบอัดที่ถูกจัดสรรภายในโดยเคอร์เนลและไม่ปรากฏเป็นอุปกรณ์สว็อป มันถูกใช้โดย frontswap ในลักษณะเดียวกับที่ใช้กับอุปกรณ์ swap แต่ในลักษณะที่มีประสิทธิภาพมากกว่า

Zcache

Zcache เป็นส่วนหน้าเพื่อ frontswap และ cleancache

Zcache ใช้แทน zRAM ดังนั้นคุณไม่ต้องการให้ทั้งคู่ต่อสู้กับทรัพยากรแม้ว่าจะมีบางคนพูดถึงว่าทั้งสองสามารถทำงานร่วมกันได้ดีอย่างไรในสถานการณ์ที่เหมาะสม สำหรับตอนนี้ฉันไม่ต้องพยายามและทิ้งมันไว้กับผู้เชี่ยวชาญเพื่อคิดออก

บางคนอ่าน:
Cleancache vs zram?
https://lwn.net/Articles/454795/
https://www.kernel.org/doc/Documentation/vm/zswap.txt
http://www.zeropoint.com/Support/ZCachePro/ZCachePro/ZCacheAdvantages.html

โดยส่วนตัวฉันเพิ่งปิดการใช้งาน zRAM และเปิดใช้งาน Zcache ในทุกระบบของฉันที่มีเคอร์เนลใหม่เพียงพอ (zRAM ยังคงเปิดใช้งานบนอุปกรณ์ Android)

สำหรับประสิทธิภาพ: นั่นคือสิ่งที่คุณต้องมองเข้าไปในตัวเอง ทุกคนต่างกัน ในทางทฤษฎีแล้ว Zcache ควรมีหน่วยความจำที่มีประสิทธิภาพมากกว่า zRAM และทำงานได้สองระดับ (frontswap และ cleancache) และสามารถเลื่อนหน้าออกเป็นอุปกรณ์ swap ได้ตามต้องการ (บนฮาร์ดไดรฟ์เป็นต้น) คุณยังสามารถเลือกอัลกอริทึมการบีบอัดที่จะใช้หากใช้ CPU มากเกินไป (ซึ่งฉันไม่สามารถจินตนาการได้)

อัปเดต : Zcache ถูกลบออกจากเคอร์เนล 3.11 (สำหรับตอนนี้) ดังนั้น zRAM จึงกลายเป็นตัวเลือกเดียวในเมล็ดที่ใหม่กว่าอีกครั้ง https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1256503/comments/3 http://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git / commit /? id = 96256460487387d28b8398033928e06eb9e428f7


1
Zswapเปิดใช้งานในเมล็ดล่าสุดโดยเพิ่มzswap.enabled=1ลงในบรรทัดคำสั่ง Linux
Ken Sharp
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.