เร่งความเร็วจากอัลกอริทึมกับฮาร์ดแวร์


14

ฉันจำได้ว่าเคยเห็นการศึกษาหรือบทความเมื่อเร็ว ๆ นี้โดยอ้างว่าการเร่งความเร็วส่วนใหญ่ที่เห็นในโปรแกรมคอมพิวเตอร์ในช่วงหลายทศวรรษที่ผ่านมานั้นมาจากอัลกอริทึมที่ดีกว่าฮาร์ดแวร์ที่เร็วกว่า ไม่มีใครรู้ว่าการศึกษาหรือบทความ?


8
น่าจะเป็นแบบที่ดีกว่าสำหรับ cs.stackexchange
Yuval Filmus

แน่นอนมีกระบวนทัศน์ขนาดใหญ่ที่เปลี่ยนแปลงภายในไม่กี่ปีที่ผ่านมากฎหมาย wrt moores, ความเร็วสัญญาณนาฬิกา, และความเท่าเทียมกันและที่ได้รับการครอบคลุมในหลายบทความ / เอกสาร ....
vzn

คำตอบ:


8

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

ดู [1] หรือ [2] ซึ่งระบุ

รายงานโดยกลุ่มที่ปรึกษาด้านวิทยาศาสตร์และเทคโนโลยีอิสระไปยังทำเนียบขาวตีพิมพ์เมื่อเดือนธันวาคมที่ผ่านมาอ้างถึงการวิจัยแสดงให้เห็นว่าประสิทธิภาพที่เพิ่มขึ้นในการทำงานคอมพิวเตอร์ซึ่งเป็นผลมาจากการปรับปรุงอัลกอริทึมของซอฟต์แวร์
...
แต่รายงานที่ปรึกษาของทำเนียบขาวอ้างถึงการวิจัยรวมถึงการศึกษาความก้าวหน้าในช่วง 15 ปีของงานวางแผนการผลิตมาตรฐาน เมื่อเวลาผ่านไปความเร็วของการคำนวณที่ได้รับการปรับปรุงให้ดีขึ้นด้วยปัจจัย 43 ล้าน จากจำนวนทั้งหมด 1,000 ปัจจัยมีสาเหตุมาจากความเร็วโปรเซสเซอร์ที่เร็วขึ้นตามการวิจัยของ Martin Grotschel นักวิทยาศาสตร์และนักคณิตศาสตร์ชาวเยอรมัน แต่ปัจจัย 43,000 อันเกิดจากการปรับปรุงประสิทธิภาพของอัลกอริทึมซอฟต์แวร์

แต่ปัญหาของซอฟแวร์และฮาร์ดแวร์อยู่ไกลจากการทำให้ง่ายขึ้นในมิติเดียวซับซ้อนมากขึ้นและบล็อก Lohrs มีความแม่นยำมากขึ้น - ซอฟต์แวร์และฮาร์ดแวร์ในรูปแบบของการผสม symbiotic yin-yang และทั้งสองมีความก้าวหน้าอย่างมีนัยสำคัญมาก ทศวรรษ

ข้อแม้ / การพิมพ์อย่างละเอียด: เราไม่สามารถรับผลประโยชน์ส่วนบุคคลในอัลกอริทึมซอฟต์แวร์โดยเฉพาะซึ่งในบางกรณีมีความสำคัญมาก

ราคาที่แท้จริงจากรายงานอยู่ในหน้า 71:

ที่น่าทึ่งยิ่งกว่านั้นก็คือความเข้าใจที่น้อยลงคือในหลาย ๆ ด้านประสิทธิภาพที่เพิ่มขึ้นเนื่องจากการปรับปรุงอัลกอริทึมนั้นเกินกว่าที่กำหนดไว้อย่างมากแม้แต่ประสิทธิภาพที่เพิ่มขึ้นอย่างมากเนื่องจากความเร็วโปรเซสเซอร์ที่เพิ่มขึ้น อัลกอริทึมที่เราใช้กันทุกวันนี้สำหรับการรู้จำเสียง, สำหรับการแปลภาษาธรรมชาติ, สำหรับการเล่นหมากรุก, สำหรับการวางแผนโลจิสติกส์มีวิวัฒนาการอย่างน่าทึ่งในทศวรรษที่ผ่านมา แม้ว่าเป็นการยากที่จะประเมินจำนวนการปรับปรุงเนื่องจากมีคุณภาพในขอบเขตของเวลาดำเนินการเท่าที่ควร

ดังนั้นรายงานของรัฐบาลฉบับนี้จึงได้รับการวิจัยและขัดเงาอย่างสูง ความก้าวหน้าด้านซอฟต์แวร์เชิงทฤษฎีในบางพื้นที่นั้นถูกต้องและกำลังทำการวิจัย (เชิงทฤษฎี / อัลกอริทึม)

อย่างไรก็ตามมีปรากฏการณ์ใหม่ / พื้นฐาน / ใหญ่ / แนวโน้ม / การเปลี่ยนแปลงอื่น ๆ อีกมากมายในช่วงไม่กี่ปีที่ผ่านมาหรือสิ่งที่ Intels Grove เรียกว่า "จุดเปลี่ยน" ซึ่งเกิดขึ้นในการออกแบบฮาร์ดแวร์และซอฟต์แวร์ อาคา "gamechangers":

  • การเพิ่มขึ้นของซูเปอร์คอมพิวเตอร์ "Exascale" อาจไม่สามารถทำได้อย่างง่ายดายเหมือน "Petascale" เนื่องจากข้อ จำกัด ในการปรับขนาดฮาร์ดแวร์
  • ความเร็วสัญญาณนาฬิกาซึ่งเป็นตัวขับเคลื่อนหลักของการเพิ่มความเร็วก่อนหน้านั้นมีที่ราบสูง (ส่วนหนึ่งเนื่องจากข้อ จำกัด ด้านความร้อน / ความเย็น)
  • ฮาร์ดแวร์อยู่ระหว่างการเปลี่ยนแปลงครั้งใหญ่ไปสู่การประมวลผลที่เข้มข้นน้อยกว่าและอุปกรณ์ประหยัดพลังงานมากขึ้นเช่นอุปกรณ์พกพา, ดาต้าเซ็นเตอร์ / virtualization
  • การปรับปรุงความขนานในซอฟต์แวร์และฮาร์ดแวร์ (เช่น "มัลติคอร์") จึงมีความสำคัญยิ่งต่อการปรับปรุงประสิทธิภาพ (ซึ่งทฤษฎีมีหลายสิ่งที่จะพูดเกี่ยวกับวิธีการอัลกอริธึมแบบขนาน)

[1] ขี้ระแวง ความคืบหน้าในอัลกอริทึมเอาชนะความคืบหน้าในฮาร์ดแวร์

[2] ความคืบหน้าของซอฟต์แวร์เต้นตามกฎหมายมัวส์ NYT blog โดย Lohr

[3] รายงานถึงประธานาธิบดีและผู้ออกแบบ CONGRESS ที่มีอนาคตแบบดิจิทัล: การวิจัยและการวิจัยที่ได้รับทุนสนับสนุนจากส่วนกลางในด้านการพัฒนาเครือข่ายและเทคโนโลยีสารสนเทศธันวาคม 2010


ภาคผนวก อาจมีตัวอย่างที่ดี (ตัวนับ) ของอัลกอริทึมที่สำคัญซึ่งไม่ได้พัฒนาไปอย่างมีประสิทธิภาพในการใช้งานมานานหลายทศวรรษ ความคิด? ผู้สมัครคนหนึ่งอาจเป็นเมทริกซ์อัลกอริธึมที่ไม่ขนานกันหรืออัลกอริธึมที่ดูเหมือนจะไม่ใช่ - ขนานกันโดยกำเนิด ... นอกจากนี้อัลกอริธึมบางคนต้องผ่านการปรับปรุงเชิงทฤษฎีในขอบเขตซับซ้อนซับซ้อน แต่ขั้นตอนวิธี อินพุตขนาดเล็ก ฯลฯ ... เช่นการคูณเมทริกซ์?
vzn

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