เรากำลังทำงานอยู่ในระดับปานกลาง C ขนาด ++ รหัสฐาน (10Mloc) ซึ่งผ่านความพยายามเพิ่มประสิทธิภาพของเราจะกลายเป็นเหมือนกันช้า
รหัสฐานนี้เป็นชุดของห้องสมุดที่เรารวมกันเพื่อให้ทำงานได้ เมื่อเฟรมเวิร์กทั่วไปของวิธีที่การสื่อสารของไลบรารีเหล่านี้ได้รับการพัฒนามีความสำคัญต่อประสิทธิภาพการทำงานและในภายหลังเมื่อมีส่วนเพิ่มมากขึ้นเฟรมเวิร์กทั่วไปจะไม่เปลี่ยนแปลงมากนัก การปรับให้เหมาะสมทำเมื่อจำเป็นและตามที่ฮาร์ดแวร์ของเราพัฒนาขึ้น การตัดสินใจครั้งแรกนี้มีราคาแพงชัดเจนมากในภายหลังเท่านั้น ขณะนี้เราอยู่ในจุดที่การเพิ่มประสิทธิภาพเพิ่มเติมนั้นมีราคาแพงกว่ามากเนื่องจากพวกเขาต้องการการเขียนส่วนใหญ่ของฐานรหัส เราพบว่าตัวเองกำลังเข้าใกล้จุดต่ำสุดที่ไม่พึงประสงค์ในท้องถิ่นเนื่องจากเรารู้ว่าในหลักการแล้วรหัสควรจะสามารถทำงานได้เร็วขึ้นมาก
มีวิธีการที่ประสบความสำเร็จหรือไม่ซึ่งช่วยในการตัดสินใจว่าอะไรจะเกิดขึ้นกับการวิวัฒนาการของรหัสฐานไปสู่โซลูชั่นที่มีประสิทธิภาพสูงสุดทั่วโลกซึ่งไม่สับสนอย่างง่ายดายจากโอกาสในการปรับให้เหมาะสมที่ง่ายดาย?
แก้ไข
หากต้องการตอบคำถามว่าเราโปรไฟล์อย่างไร:
เรามีเพียงสถานการณ์จำลองที่แตกต่างกันสองวิธีที่วิธีการใช้รหัสนี้ทั้งคู่ขนานที่น่าอาย การทำโปรไฟล์ทำได้ทั้งเวลาที่นาฬิกาแขวนมีค่าเฉลี่ยในกลุ่มตัวอย่างขนาดใหญ่ของอินพุตและการทำงานที่มีรายละเอียดมากขึ้น (ต้นทุนการสอน สิ่งนี้ทำงานได้ดีเนื่องจากเราทำงานเฉพาะในเครื่องที่เป็นเนื้อเดียวกันมาก (คลัสเตอร์ของเครื่องที่เหมือนกันสองพันเครื่อง) เนื่องจากเรามักจะทำให้เครื่องของเรายุ่งตลอดเวลาส่วนใหญ่ทำงานได้เร็วขึ้นหมายความว่าเราสามารถดูสิ่งใหม่เพิ่มเติม ปัญหาคือแน่นอนว่าเมื่อรูปแบบการป้อนข้อมูลใหม่ปรากฏขึ้นพวกเขาอาจได้รับโทษขั้นปลายเนื่องจากเราลบความไร้ประสิทธิภาพที่ชัดเจนที่สุดสำหรับกรณีการใช้งานอื่น ๆ ดังนั้นจึงอาจลดจำนวนสถานการณ์
sloc
ขณะที่นับ ฉันเรียกมันว่า "ขนาดปานกลาง" เพราะฉันไม่รู้ว่าสิ่งใดที่ถือว่า "ใหญ่" ที่นี่