เป็นไปได้หรือไม่ที่จะปิดการใช้งาน CPU ไม่ใช่คอร์? ฉันต้องการทดสอบเพื่อตรวจสอบว่าประสิทธิภาพสามารถสร้างความแตกต่างได้หรือไม่
ฉันใช้ Ubuntu 10.10
เป็นไปได้หรือไม่ที่จะปิดการใช้งาน CPU ไม่ใช่คอร์? ฉันต้องการทดสอบเพื่อตรวจสอบว่าประสิทธิภาพสามารถสร้างความแตกต่างได้หรือไม่
ฉันใช้ Ubuntu 10.10
คำตอบ:
maxcpus
นอกจากนี้ยังทำเช่นนี้ในด้วงไบออสของคุณมีตัวเลือกที่เรียกว่า
คุณสามารถแก้ไขตัวเลือกนี้ในเมื่อเลือกตัวเลือกการบูตด้วงโดยการเพิ่มmaxcpus=1
พารามิเตอร์ ภาพด้วงสุ่ม:
เลือก 'e' และคุณจะได้รับบรรทัดคำสั่งที่คุณสามารถเพิ่มตัวเลือก
คุณยังสามารถสร้างตัวเลือกการบูตแบบถาวรในด้วงโดยการทำสำเนาตัวเลือกการบูตปัจจุบันของคุณและเพิ่มลงmaxcpus=1
ในพารามิเตอร์การบูต คุณสามารถตั้งชื่อนี้ว่า 'Ubuntu, เคอร์เนล 2.5.12-9-386 (1 cpu)' และใช้มันท่ามกลางตัวเลือกการบูตอื่น ๆ เช่นภาพที่แสดง
คุณสามารถตรวจสอบการทำงานใน 1 cpu โดยการออก:
cat /proc/cpuinfo | grep processor
ควรแสดงสิ่งนี้:
หน่วยประมวลผล: 0 หน่วยประมวลผล: 1
และบรรทัดที่ 2 ควรหายไปหลังจากบูทด้วย 1 CPU
คุณสามารถปิดการใช้งาน CPU แบบไดนามิกได้/sys/devices/system/cpu/cpuN/online
เช่นเมื่อต้องการปิดการใช้งาน CPU 1 ให้ใช้
echo 0 | sudo tee /sys/devices/system/cpu/cpu1/online
และเพื่อเปิดใช้งานอีกครั้งให้ใช้:
echo 1 | sudo tee /sys/devices/system/cpu/cpu1/online
คุณสามารถถอดปลั๊ก CPU ออกจากซ็อกเก็ตได้ตลอดเวลา มันกำลังดุร้าย แต่คุณรับประกันได้ว่าจะได้รับการทดสอบตามที่คุณต้องการและคุณไม่ต้องกังวลว่าเคอร์เนล / ไบออส / สวิตช์ใดที่ทำสิ่งที่คุณต้องการ
บริษัท ของฉันติดตั้งเซิร์ฟเวอร์ฟาร์มขนาดใหญ่ในสถานที่ต่าง ๆ ทั่วโลก ในห้องแล็บของเราบางครั้งเราจะลบซีพียูออกจากซ็อกเก็ตเพื่อทำการทดสอบ
มีรูปแบบที่น่าสนใจในการทดสอบนี้ที่คุณสามารถทำได้กับระบบNUMAหลาย CPU ในเมนบอร์ดประเภทนั้นคุณสามารถลบ DIMM หน่วยความจำทั้งหมดที่ควบคุมโดย CPU จริงหนึ่งตัว ระบบจะยังคงบู๊ตได้ดีและคุณสามารถเรียกใช้การทดสอบกับแอปพลิเคชันของคุณที่ถูกตรึงไว้ในคอร์ต่างๆซึ่งจะช่วยให้คุณสามารถวัดผลกระทบของหน่วยความจำ "ท้องถิ่น" หรือ "ระยะไกล"
ต้องการดูประสิทธิภาพของแอพพลิเคชั่นแบบมัลติเธรดพร้อมจำนวนแกนประมวลผลหรือไม่? หากเป็นกรณีนี้คุณสามารถใช้ยูทิลิตี tasket ฉันเดาว่าคุณมีเครื่อง NUMA คุณสามารถติดตั้งยูทิลิตี numactl และใช้มันคุณสามารถค้นหาแกนที่สอดคล้องกับ CPU ตัวใด ตัวอย่างเช่นเครื่องของคุณมี CPUS แบบ quad-core สองตัว (ชิป) โดยใช้ยูทิลิตี tasket คุณสามารถสร้างแกนของ CPU หนึ่งตัวเป็นชุดและจัดสรรให้กับแอปพลิเคชันของคุณ จากนั้นแอปพลิเคชันของคุณจะใช้ CPU / Chip เพียงหนึ่งเดียว โปรดแจ้งให้เราทราบหากคุณต้องการข้อมูลเพิ่มเติม