ในการใช้ Fast Fourier Transform (FFT) กับข้อมูลตัวอย่างที่สม่ำเสมอเช่นในการเชื่อมต่อกับตัวแก้ PDE เป็นที่ทราบกันดีว่า FFT เป็นอัลกอริทึม ) จะทำอย่างไรดีขนาด FFT เมื่อการประมวลผลแบบขนานสำหรับn →การ∞ (คือมีขนาดใหญ่มาก)?
ในการใช้ Fast Fourier Transform (FFT) กับข้อมูลตัวอย่างที่สม่ำเสมอเช่นในการเชื่อมต่อกับตัวแก้ PDE เป็นที่ทราบกันดีว่า FFT เป็นอัลกอริทึม ) จะทำอย่างไรดีขนาด FFT เมื่อการประมวลผลแบบขนานสำหรับn →การ∞ (คือมีขนาดใหญ่มาก)?
คำตอบ:
นี่เป็นหลักฐานเล็ก ๆ น้อย ๆ มากกว่าหลักฐานที่พิสูจน์แล้ว แต่ปรากฏว่าการใช้งานที่มีอยู่สำหรับ FFT เช่นFFTWนั้นมีขีดจำกัดความสามารถในการปรับขนาด
แต่ข้อความกลับบ้านตรงนี้คือ FFT ควรขยายตัว อย่างไรก็ตามบางครั้งมีข้อ จำกัด และการโต้ตอบที่ไม่คาดคิดที่เกิดขึ้นเมื่อมีการย้ายจากการพิจารณาทางทฤษฎีเกี่ยวกับประสิทธิภาพของอัลกอริทึมเป็นการใช้งานจริงบนแพลตฟอร์ม HPC จริง
การค้นหา "parallel FFT" หรือ "pseudospectral scalability" ใน Google Scholar ทำให้ได้รับข้อมูลจำนวนมากซึ่งฉันไม่มีคุณสมบัติเพียงพอที่จะประเมิน แต่นี่เป็นตัวอย่างล่าสุดที่ดีของสิ่งที่สามารถทำได้ในทางปฏิบัติ:
นามธรรม:
ชุดรูปแบบไฮบริดที่ใช้ MPI สำหรับการกระจายหน่วยความจำแบบขนานและ OpenMP สำหรับหน่วยความจำแบบขนานที่นำเสนอจะถูกนำเสนอ งานนี้ได้รับแรงบันดาลใจจากความปรารถนาที่จะประสบความสำเร็จในการคำนวณตัวเลขเรย์โนลด์สสูงในการคำนวณ pseudospectral ของความปั่นป่วนของของไหลบน petascale ที่เกิดขึ้นใหม่ระบบคอร์ประมวลผลแบบขนานจำนวนมาก การใช้งานแบบไฮบริดนั้นมาจากและเพิ่มรหัสเทียมปลอมแบบขนานที่ปรับขนาดได้ของ MPI ที่ผ่านการทดสอบเป็นอย่างดี กระบวนทัศน์ลูกผสมนำไปสู่ภาพใหม่สำหรับการสลายตัวของโดเมนของกริด pseudospectral ซึ่งมีประโยชน์ในการทำความเข้าใจเหนือสิ่งอื่นใดคือการถ่ายโอน 3D ของข้อมูลทั่วโลกที่จำเป็นสำหรับการแปลงฟูริเยร์แบบขนานที่รวดเร็วซึ่งเป็นองค์ประกอบสำคัญของ discretizations ตัวเลข รายละเอียดของการใช้งานแบบไฮบริดมีให้ และการทดสอบประสิทธิภาพแสดงให้เห็นถึงประโยชน์ของวิธีการ มันแสดงให้เห็นว่ารูปแบบไฮบริดได้รับความสามารถในการปรับขนาดได้ใกล้ถึง ~ 20,000 แกนการคำนวณที่มีประสิทธิภาพสูงสุดเฉลี่ย 83% มีการนำเสนอข้อมูลที่แสดงวิธีการเลือกจำนวนกระบวนการ MPI และเธรด OpenMP ที่เหมาะสมเพื่อปรับประสิทธิภาพโค้ดในแพลตฟอร์มที่แตกต่างกันสองแพลตฟอร์ม