ขีด จำกัด ของ CPU คืออะไร


37

คำถาม:

  • CPU tick ถูกคำนวณอย่างไรและมันแสดงถึงอะไร?
  • ไม่เป็นหนึ่งเดียวtickถือเอา10 milisecondsดังนั้นหากด้ายบางรายงานไม่ได้เรียกร้องให้ ( 5 * 10 ticks = 500 ticks) นี้หมายความว่าซีพียูอาจจะยุ่งเกินไปที่จะกำหนดเวลาหัวข้อดังกล่าวข้างต้นที่จะทำงาน ?

1
คุณสามารถใส่ "ขีด จำกัด CPU" ในบริบทได้ไหม - อาจตัดและวางย่อหน้าของแหล่งที่มาของวลี ฉันกังวลว่าอาจมีความสับสนระหว่างหนึ่งในหลายคำตอบที่เป็นไปได้
มิก

คำตอบ:


31

เห็บเป็นหน่วยพลสำหรับการวัดเวลาของระบบภายใน โดยปกติจะมีตัวนับ OS ภายในสำหรับเห็บ; เวลาและวันที่ปัจจุบันที่ใช้โดยฟังก์ชั่นต่างๆของระบบปฏิบัติการนั้นมาจากตัวนับนั้น

จำนวนติ๊กเป็นกี่มิลลิวินาทีขึ้นอยู่กับระบบปฏิบัติการและอาจแตกต่างกันระหว่างการติดตั้ง ใช้กลไกของระบบปฏิบัติการเพื่อแปลงเห็บเป็นวินาที

สำหรับสาเหตุที่เธรดรายงานไม่ถูกเรียกใช้: นั่นจะขึ้นอยู่กับว่าเธรดกำลังบล็อกอยู่ที่ไหนสักแห่ง (กำลังรอ I / O ฯลฯ ) หากยังไม่ได้ปิดกั้นใช่แล้วตัวกำหนดตารางเวลาของระบบปฏิบัติการจะตัดสินใจเมื่อมันถูกเรียกใช้ซึ่งอาจใช้เวลานานถ้าระบบไม่ว่าง

แก้ไข:

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


ดังนั้นซีพียูจึงต้องการจำนวนนาฬิกาที่แน่นอนเพื่อดำเนินการแต่ละคำสั่ง?
แอรอน

1
@aaron: ไม่เวลาประมวลผลคำสั่งถูกผูกไว้กับจำนวนรอบของตัวประมวลผล เมื่อกำหนดระบบปฏิบัติการเฉพาะบน CPU เฉพาะที่ทำงานที่ความถี่เฉพาะคุณสามารถคำนวณได้ว่ามีกี่เห็บที่คำสั่งเฉพาะใช้ในการดำเนินการ แต่การคำนวณนั้นไม่จำเป็นต้องมีการรวมกันของ OS / CPU / ความถี่ / คำสั่งอื่น ๆ
ต้มตุ๋น quixote

1
@Aaron: ไม่เห็บและวงจรประมวลผลเป็นแนวคิดที่แตกต่างกันสอง วงจรความยาวของตัวประมวลผลถูกกำหนดโดยฮาร์ดแวร์ (ความถี่ CPU); เห็บถูกผลิตขึ้นโดยระบบปฏิบัติการและใช้ความยาวเท่าใดก็ได้ที่ OS (หรือผู้ออกแบบ) เห็นว่าเหมาะสม
sleske

อย่าใช้ datetime.ticks () เป็นตัววัดมันคงที่โดยเจตนาในการออกแบบเพื่อแสดงวันที่และเวลาของอินสแตนซ์ของวัตถุนั้น มันขึ้นอยู่กับเวลาในขณะที่เห็บฮาร์ดแวร์ไม่ขึ้นกับเวลา มันตั้งชื่อไม่ดีในส่วนของกรอบ
กลับรายการ

1
@sleske อืมฉันเห็นความแตกต่าง 'ticks' เคยเป็นคำพ้องความหมายสำหรับรอบ CPU เช่นเดียวกับคำว่า "จำนวนเวลาคงที่โดยไม่ขึ้นกับความเร็วสัญญาณนาฬิกาของ CPU" คำเดียวกันกับสองความหมาย นั่นถูกต้องใช่ไหม?
กลับรายการ

3

แก้ไข:นำมาจากฮาร์ดแวร์ของพีซีโดยย่อ :

"นาฬิกาโปรเซสเซอร์ประมวลผลการทำงานของ CPU และหน่วยความจำทั้งหมดโดยการสร้างสัญญาณอ้างอิงเวลาเป็นระยะ ๆ เรียกว่าวงจรสัญญาณนาฬิกาหรือสัญญาณติ๊กความถี่สัญญาณนาฬิกาถูกระบุในหน่วยกิกะเฮิร์ตซ์ (GHz) ซึ่งระบุสัญญาณเตือนนับพันล้านต่อวินาที คำแนะนำบางคำต้องการหนึ่งเห็บเห็บอื่น ๆ หลายเห็บและโปรเซสเซอร์บางตัวดำเนินการหลายคำสั่งในระหว่างหนึ่งเห็บ "


เวลาระหว่างขีดถูกกำหนดโดยความเร็วสัญญาณนาฬิกาของคุณและใช้เวลาหนึ่งถึงหลายเห็บขึ้นอยู่กับ OP ที่กำลังดำเนินการ ตัวอย่างเช่น CPU 286 คลาสต้องการ20 ขีดเพื่อคูณสองตัวเลข

หากคุณต้องการตัวจับเวลาประสิทธิภาพสูงฉันไม่คิดว่าคุณจะสามารถใช้เห็บได้อย่างต่อเนื่องในทุกระบบ

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


4
-1 คุณกำลังสับสนกับเห็บและวงจรประมวลผล ticksบนระบบ Unix มักจะเกิดขึ้น 60 หรือ 100 ครั้งต่อวินาทีและไม่ได้ผูกไว้กับความเร็วของ proc
sleske

1
ฉันกำลังพูดถึงเห็บฮาร์ดแวร์ ซีพียู 1hz ประมวลผล 1 ขีด (รอบ) ต่อวินาที, 200Hz สามารถประมวลผล 200 รอบต่อวินาที, 2GHz สองพันล้านรอบ / วินาที ยิ่ง CPU ของคุณเร็วขึ้นเท่าไหร่คุณก็จะได้รอบมากขึ้น / วินาที
กลับรายการ

2
โอ้ฉันเห็นบางคนเขียนใช้เป็นคำพ้องสำหรับtick processor cycleยังฉันส่วนใหญ่เห็นtickใช้ตามที่อธิบายไว้ในคำตอบของฉันข้างต้น แต่ผมคิดว่าคำศัพท์ที่แตกต่างกันไปตามปกติ :-( ฉันแก้ไขคำตอบของฉัน..
sleske
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.