AMD x86 Open64 คอมไพเลอร์สวีทมีประสิทธิภาพสูงรหัสคุณภาพการผลิตเครื่องมือสร้างการออกแบบที่มีประสิทธิภาพสูงปริมาณการคำนวณแบบขนาน & nbsp;. สภาพแวดล้อม Open64 x86 ให้นักพัฒนาทางเลือกที่สำคัญเมื่อมีการสร้างและเพิ่มประสิทธิภาพ C, C ++ และการประยุกต์ใช้ Fortran กำหนดเป้าหมาย 32 บิตและ 64 บิตแพลตฟอร์มลินุกซ์
ระบบคอมไพเลอร์ Open64 x 86 มีระดับสูงของการเพิ่มประสิทธิภาพขั้นสูงแบบมัลติเธรดและการสนับสนุนหน่วยประมวลผลที่มีการเพิ่มประสิทธิภาพของโลก vectorization วิเคราะห์ interprocedural คิดเห็นกำกับการเพิ่มประสิทธิภาพการแปลงห่วงและสร้างรหัสซึ่งสารสกัดประสิทธิภาพที่ดีที่สุดจากแกนประมวลผลแต่ละ x86 .
x86 Open64 คอมไพเลอร์สวีทช่วยลดความยุ่งยากและเร่งการพัฒนาและการปรับแต่งสำหรับ x86, AMD64 (เอเอ็มดีและ reg; x86-64 สถาปัตยกรรม) และ Intel64 (Intel & reg; สถาปัตยกรรม x86-64) การใช้งาน คอมไพเลอร์ x86 Open64 สร้างรากฐานที่แข็งแกร่งสำหรับการสร้างที่แข็งแกร่งรหัสที่มีประสิทธิภาพสูงขนานผ่าน MPI, OpenMP & reg ;, และอัตโนมัติแบบขนานพร้อมกับห้องสมุดเพิ่มประสิทธิภาพสูง *
คุณสมบัติ .
- มาตรฐานภาษา:
- ANSI C99, ISO C ++ 98
- สอดคล้องกับมาตรฐาน ISO / IEC 9899: 1999, การเขียนโปรแกรมภาษา - มาตรฐาน C
- สอดคล้องกับมาตรฐาน ISO / IEC 14882: 1998 (E), การเขียนโปรแกรมภาษา - ภาษา C ++ มาตรฐาน
- Fortran 77, 90, 95
- สอดคล้องกับมาตรฐาน ISO / IEC 1539-1: 1997 การเขียนโปรแกรมภาษา - Fortran
- โทรอินเตอร์ภาษา
- IEEE 754 สนับสนุนจุดลอย
- pragmas ในการควบคุมการเพิ่มประสิทธิภาพ
- แพลตฟอร์มไฮไลท์:
- 86 x 32 x 86 บิตและรหัสรุ่น 64 บิต
- การสนับสนุนไฟล์ขนาดใหญ่บนระบบ 32 บิต
- ไบต์แลกเปลี่ยน I / O
- เวกเตอร์และสเกลา SSE / SSE2 / SSE3 รหัสรุ่น
- OpenMP 2.5 สำหรับรุ่นหน่วยความจำที่ใช้ร่วมกัน
- MPICH2 สำหรับรุ่นหน่วยความจำที่ใช้ร่วมกันกระจายและ
- เพิ่มประสิทธิภาพของ AMD หลักคณิตศาสตร์ห้องสมุด (ACML)
- ไฮไลท์การเพิ่มประสิทธิภาพ
- การเพิ่มประสิทธิภาพทั่วโลก e.g.
- การกำจัดความซ้ำซ้อนบางส่วน
- การขยายพันธุ์อย่างต่อเนื่องและการเคลื่อนไหวรหัส
- ลดความแข็งแรงและความเรียบง่ายแสดงออก
- กำจัดรหัสตายและการกำจัดการแสดงออกย่อยที่พบบ่อย
- การเพิ่มประสิทธิภาพห่วงรัง (เปิดใช้งานด้วย '-O3) เช่น
- Loopfusion และการจัดจำหน่าย
- แลกเปลี่ยนห่วงและการเพิ่มประสิทธิภาพท้องถิ่นแคช
- Vectorization สำหรับ SSE * รหัสรุ่น
- ข้อมูลซอฟท์แว prefetching
- รหัสรุ่นและการเพิ่มประสิทธิภาพ, e.g.
- การจัดสรรลงทะเบียนขั้นสูง
- ห่วง unrolling
- เลือกการเรียนการสอนและการจัดตาราง
- การเพิ่มประสิทธิภาพช่องมอง
- การเพิ่มประสิทธิภาพข้อเสนอแนะกำกับ (เปิดใช้งานด้วย '-fb_create / -fb_opt) เช่น
- รูปแบบรหัส
- ฟังก์ชั่นข้อเสนอแนะกำกับ inlining และ-virtualization
- ลงทะเบียนตอบรับแนะนำ spilling
- เชี่ยวชาญค่า
- การวิเคราะห์ระหว่างการดำเนินการและการเพิ่มประสิทธิภาพ (เปิดใช้งานด้วย '-ipa) เช่น
- inlining ฟังก์ชั่นและการโคลน
- วิเคราะห์นามแฝงระหว่างขั้นตอน
- ข้อมูลการเพิ่มประสิทธิภาพอีกรูปแบบสำหรับสมาชิกโครงสร้าง
- ระหว่างขั้นตอนการขยายพันธุ์อย่างต่อเนื่องและการกำจัดรหัสที่ตายแล้ว
มีอะไรใหม่ ในข่าวประชาสัมพันธ์นี้:
- รุ่นนี้รวมถึงการเพิ่มประสิทธิภาพการปฏิบัติงานใหม่การสนับสนุนสำหรับเอเอ็มดีในครอบครัว 15h อาคารที่ดีขึ้นจากแหล่งที่มาและหลาย bugfixes.
มีอะไรใหม่ ในรุ่น 4.2.4:
- ปรับปรุงฟังก์ชั่นการวิเคราะห์พฤติกรรม inlining และการขยายตัวแบบอินไลน์ที่เพิ่มขึ้นของห้องสมุด ฟังก์ชั่น
- กรอบที่เพิ่มขึ้นสำหรับหลายเวอร์ชัน
- การเหนี่ยวนำความเรียบง่ายการแสดงออกที่ดีขึ้นและการเพิ่มประสิทธิภาพถ้า-ผสาน
- รหัสรุ่นสำหรับผู้ประกอบการที่ดีขึ้น%
- ปรับปรุงการวิเคราะห์ interprocedural ฟังก์ชั่นสำหรับการโทรทางอ้อมฟังก์ชั่นเสมือนจริงและฟังก์ชั่นที่มี & quot; noreturn & quot; แอตทริบิวต์.
- การจัดการข้อยกเว้นการเพิ่มประสิทธิภาพ
- การเพิ่มประสิทธิภาพการประมวลผลของ Fortran 90 อาร์เรย์ชั่วคราว
- การทำแผนที่ความสัมพันธ์ที่ดีขึ้นในการประมวลผล OpenMP และห้องสมุดรันไทม์ขนาน
- เพิ่มการสนับสนุนสำหรับ 1GB หน้าขนาดใหญ่
- ย่อตัวเลือกจุดลอย
- ดำเนินการคู่ยาวถึง 80 บิตแม่นยำ IEEE คู่
- ที่แท้จริงเพิ่มไปยัง -ffastmath
- Fortran โมดูล ISO_C_BINDING
- แก้ไขข้อผิดพลาดในหลายพื้นที่ ได้แก่ :
- เข้ากันได้ GCC
- การสนับสนุนหน้าขนาดใหญ่
- การสนับสนุน Fortran
- OpenMP
- อาคารจากแหล่ง
- การสนับสนุนแพลตฟอร์มขยายรวมทั้ง RHEL 5.5 และ SLES11 SP1
มีอะไรใหม่ ในรุ่น 4.2.4:
- ปรับปรุงฟังก์ชั่นการวิเคราะห์พฤติกรรม inlining และการขยายตัวแบบอินไลน์ที่เพิ่มขึ้นของห้องสมุด ฟังก์ชั่น
- กรอบที่เพิ่มขึ้นสำหรับหลายเวอร์ชัน
- การเหนี่ยวนำความเรียบง่ายการแสดงออกที่ดีขึ้นและการเพิ่มประสิทธิภาพถ้า-ผสาน
- รหัสรุ่นสำหรับผู้ประกอบการที่ดีขึ้น%
- ปรับปรุงการวิเคราะห์ interprocedural ฟังก์ชั่นสำหรับการโทรทางอ้อมฟังก์ชั่นเสมือนจริงและฟังก์ชั่นที่มี & quot; noreturn & quot; แอตทริบิวต์.
- การจัดการข้อยกเว้นการเพิ่มประสิทธิภาพ
- การเพิ่มประสิทธิภาพการประมวลผลของ Fortran 90 อาร์เรย์ชั่วคราว
- การทำแผนที่ความสัมพันธ์ที่ดีขึ้นในการประมวลผล OpenMP และห้องสมุดรันไทม์ขนาน
- เพิ่มการสนับสนุนสำหรับ 1GB หน้าขนาดใหญ่
- ย่อตัวเลือกจุดลอย
- ดำเนินการคู่ยาวถึง 80 บิตแม่นยำ IEEE คู่
- ที่แท้จริงเพิ่มไปยัง -ffastmath
- Fortran โมดูล ISO_C_BINDING
- แก้ไขข้อผิดพลาดในหลายพื้นที่ ได้แก่ :
- เข้ากันได้ GCC
- การสนับสนุนหน้าขนาดใหญ่
- การสนับสนุน Fortran
- OpenMP
- อาคารจากแหล่ง
- การสนับสนุนแพลตฟอร์มขยายรวมทั้ง RHEL 5.5 และ SLES11 SP1
มีอะไรใหม่ ในรุ่น 4.2.3:
- ปรับปรุงการวิเคราะห์ interprocedural ที่จะรวมถึงการเพิ่มประสิทธิภาพโครงสร้างอาร์เรย์คัดลอกและ อาเรย์แมปการเพิ่มประสิทธิภาพ.
- การเพิ่มประสิทธิภาพที่ดีขึ้นห่วง. คลี่ห่วงเหยียดห่วงและแยมลูปสามเหลี่ยมแลกวงเชิงรุกกระจายห่วงลอกห่วง
- การเพิ่มประสิทธิภาพการกำจัดความซ้ำซ้อนที่ดีขึ้นสำหรับร้านค้าและหน่วยความจำเริ่มต้น; บูรณาการที่ดีขึ้นของสมาคมอีกครั้งและการกำจัดการแสดงออกย่อยทั่วไป การแสดงออกที่เพิ่มขึ้นตีนเป็ด.
- เลือกการเรียนการสอนที่ดีขึ้นและการสร้างรหัสที่อยู่.
- ปรับปรุง vectorization.
- ขยาย prefetching จะรวมอาร์เรย์ที่มีที่อยู่ฐานอุปนัย.
- วงที่เพิ่มขึ้นหลายรุ่น.
- OpenMP ที่ดีขึ้นและอัตโนมัติแบบขนานการสร้างรหัส.
- การปรับแต่งที่ดีขึ้นของ OpenMP และฟังก์ชั่นห้องสมุดรันไทม์ขนาน.
- แนะนำการเพิ่มประสิทธิภาพเชิงรุกในการปรับปรุง scalability / การใช้แบนด์วิดธ์ของหน่วยประมวลผลแบบมัลติคอร์ (เรียกโดยระบุใหม่ & quot; -mso & quot;. ธง)
- เข้ากันได้ดีขึ้น gcc รวมถึงการสนับสนุนสำหรับแอตทริบิวต์เพิ่มเติมตัวเลือกบรรทัดคำสั่งและฟังก์ชั่น.
- การสนับสนุนแพลตฟอร์มขยายรวมทั้ง SLES 11 และ RHEL 5.4.
- แก้ไขข้อผิดพลาดหลาย.
ความคิดเห็นที่ไม่พบ