ปิดการแลกเปลี่ยนสำหรับกระบวนการเดียวกับกลุ่ม cg หรือไม่


15

ฉันต้องการปิดการแลกเปลี่ยนสำหรับกระบวนการเดียวเท่านั้น Swap ควรทำงานได้ตามปกติสำหรับกระบวนการอื่น

ฉันจะใช้สิ่งนี้กับกลุ่ม cg ได้อย่างไร

คำตอบ:


9

จากเอกสารเกี่ยวกับเคอร์เนลที่เกี่ยวข้องกับ memory.swappiness:

5.3 swappiness

คล้ายกับ / proc / sys / vm / swappiness แต่มีผลกับลำดับชั้นของกลุ่มเท่านั้น

ไม่สามารถเปลี่ยน swappiness ของ cgroups ได้
- root cgroup (ใช้ / proc / sys / vm / swappiness)
- cgroup ซึ่งใช้ลำดับชั้นและมี cgroup อื่น ๆ ด้านล่าง
- กลุ่ม cgroup ที่ใช้ลำดับชั้นไม่ใช่รากของลำดับชั้น

จากพอร์ทัลลูกค้า Red Hat:

memory.swappiness

ตั้งค่าแนวโน้มของเคอร์เนลเพื่อสลับหน่วยความจำกระบวนการที่ใช้โดยงานในกลุ่มนี้แทนการเรียกคืนหน้าจากแคชหน้า นี่เป็นแนวโน้มเดียวกันที่คำนวณในแบบเดียวกันตามที่กำหนดไว้ใน / proc / sys / vm / swappiness สำหรับระบบโดยรวม ค่าเริ่มต้นคือ 60 ค่าที่ต่ำกว่า 60 ลดแนวโน้มของเคอร์เนลในการสลับหน่วยความจำกระบวนการค่าที่มากกว่า 60 เพิ่มแนวโน้มของเคอร์เนลเพื่อสลับหน่วยความจำกระบวนการและค่าที่มากกว่า 100 อนุญาตให้เคอร์เนลสลับเพจที่เป็นส่วนหนึ่งของ พื้นที่ที่อยู่ของกระบวนการใน cgroup นี้

โปรดทราบว่าค่า 0 ไม่ได้ป้องกันการสลับหน่วยความจำของกระบวนการ การสลับออกอาจยังคงเกิดขึ้นเมื่อหน่วยความจำระบบไม่เพียงพอเนื่องจากตรรกะการจัดการหน่วยความจำเสมือนส่วนกลางไม่อ่านค่า cgroup หากต้องการล็อกหน้าทั้งหมดให้ใช้ mlock () แทน cgroups

:: คุณไม่สามารถเปลี่ยน swappiness ของกลุ่มต่อไปนี้:
* root cgroup ซึ่งใช้ swappiness set ใน / proc / sys / vm / swappiness
* cgroup ที่มีกลุ่มย่อยด้านล่าง

แก้ไข: หากคุณสนใจที่จะรู้วิธีการตั้งค่าอย่างแน่นอนคุณจะต้องตั้งค่าเหมือนกับแอตทริบิวต์ cgroup อื่น ๆ :

 # cd /mnt/cgroup/<cgroupName>
 # cat memory.swappiness
 60
 # echo "59 " > memory.swappiness
 # cat memory.swappiness
 59

แล้วไฟล์ที่อยู่ใน/tmpเมานท์จะเป็นtmpfsอย่างไร? unix.stackexchange.com/q/146490/56970
CMCDragonkai

เป็นสิ่งที่ดีที่คุณอ้างถึงส่วนที่เกี่ยวข้องของเอกสารเคอร์เนลที่นี่ - ลิงค์เสีย
mgarey

ลิงก์ไปยังเอกสารคู่มือเคอร์เนล linux ใช้งานไม่ได้ ใช้สิ่งนี้แทนkernel.org/doc/Documentation/cgroup-v1/memory.txt
Andrew Eisenberg

@AndrewEisenberg รู้สึกอิสระที่จะแก้ไขคำตอบถ้าคุณต้องการ
Bratchley

อืม ... จะไม่ยอมให้ข้า กล่าวว่าการแก้ไขจะต้องมีขนาดใหญ่กว่า 6 ตัวอักษร อาจมีชื่อเสียงไม่เพียงพอ
Andrew Eisenberg
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.