ความผิดปกติของแคช FIFO


13

นี่เป็นความท้าทายในการติดตามผลจากเกมนี้หากคุณสับสนโปรดตรวจสอบสิ่งนั้นก่อน


ก่อนขอเป็นหมายเลขของแคชคิดถึงลำดับsการเข้าถึงทรัพยากรที่จะต้องสมมติแคชของเรามีความจุkและใช้ (FIFO) โครงการออกมาครั้งแรกในครั้งแรกที่ออกมาเมื่อมันเต็มm(s,k)sk

จากนั้นกำหนดอัตราส่วนกลับลำดับไม่ว่างเปล่าของทรัพยากรการเข้าถึงsเช่นว่ามีอยู่k > JกับM ( s , k ) R เมตร( s , J )r>1sk>jm(s,k)rm(s,j)

ในภาษาอังกฤษธรรมดาสร้างลำดับทรัพยากรเข้าถึงเพื่อให้มีสองขนาดแคชที่มีขนาดใหญ่มีแคช (อย่างน้อย) Rครั้งมากขึ้นแคชเมื่อนำมาใช้ในการแก้ไขssrs

ตัวอย่างสำหรับเอาต์พุตที่ถูกต้องคือลำดับ( 3 , 2 , 1 , 0 , 3 , 2 , 4 , 3 , 2 , 1 , 0 , 4 )เนื่องจากทำให้แคชขนาด9แคชหายไป3แต่10พลาดท่าสำหรับขนาดแคชของ4r=1.1(3,2,1,0,3,2,4,3,2,1,0,4)93104

ไม่สำคัญว่าคุณจะกลับมาลำดับใดตราบใดที่มันเป็นไปตามข้อกำหนด


รหัสที่สั้นที่สุดในหน่วยไบต์ชนะ


อ่านพื้นหลัง: ความผิดปกติของ
Bélády

ก็อาจจะมีความอ่อนล้า แต่ความท้าทายนี้ไม่ได้ทั้งหมดชัดเจนกับผม; คุณสามารถให้ตัวอย่างที่ใช้งานได้และอีกสองกรณีทดสอบเพิ่มเติมได้ไหม?
Shaggy

@Shaggy Go ดูความท้าทายอื่น ๆ และการอ่านเบื้องหลังจากความคิดเห็นอื่น crux คือแคช FIFO อาจแย่ลงเมื่อมันใหญ่ขึ้นสำหรับคำขอบางชุด
orlp

คำตอบ:


7

ภาษา Wolfram (Mathematica) , 124 113 101 ไบต์

Flatten@{s=⌈2#⌉;q=Range[r=2s+1];g=Mod[q s-s,r];{Sort@g[[#+1;;]],g[[;;#]]}&~Array~r,Table[q,s^3]}&

ลองออนไลน์!

หมายเหตุ: เอาต์พุต TIO ไม่ใช่รายการจริงเนื่องจากจะยาวมาก ฟังก์ชัน wrapper บน TIO บอกจำนวนข้อบกพร่องของหน้าสำหรับความจุแคชสองระดับ

สำหรับรายการจริง: ลองออนไลน์!

ที่เกี่ยวข้อง: arXiv: 1003.1336

อย่างไร?

สมมติสถานการณ์ที่เรามีสองความจุแคชและ34

นอกจากนี้สมมติว่า3-cache มี{4, 2, 5}เพจเป็นเพจและ4-cache มี{5, 4, 3, 2}เพจ จากนั้นลองหน้า{1, 2, 3, 4, 5, 1, 2, 3, 4, 5}:

page  3-cache   4-cache
      {4,2,5}  {5,4,3,2}
  1   {1,4,2}  {1,5,4,3}
  2   {1,4,2}  {2,1,5,4}
  3   {3,1,4}  {3,2,1,5}
  4   {3,1,4}  {4,3,2,1}
  5   {5,3,1}  {5,4,3,2}
  1   {5,3,1}  {1,5,4,3}
  2   {2,5,3}  {2,1,5,4}
  3   {2,5,3}  {3,2,1,5}
  4   {4,2,5}  {4,3,2,1}
  5   {4,2,5}  {5,4,3,2}

3-cache มี 5 ผิดหน้าในขณะที่4-cache ได้ 10. เราก็กลับสู่สภาพเดิมของเรา

นี่ถ้าเราทำซ้ำเพจ{1, 2, 3, 4, 5}เราจะ asymptotically 2ถึงอัตราส่วนของ

เราสามารถขยายปรากฏการณ์นี้ไปสู่ความจุแคชที่สูงขึ้นเพื่อให้เราสามารถเพจ{1, 2, 3, ... , 2n + 1}และจบลงด้วยอัตราส่วนใด ๆ

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