इंटेल फोरट्रान कंपाइलर

From Vigyanwiki
Revision as of 22:27, 28 July 2023 by alpha>Jyotis
Intel Fortran Compiler
Other names
  • ifx
Developer(s)Intel
Preview release
2023.0.0[1] / December 21, 2022; 21 months ago (2022-12-21)
Operating systemLinux, Windows
TypeCompiler
LicenseFreeware, Optional priority support
Websitesoftware.intel.com/content/www/us/en/develop/tools/oneapi/components/fortran-compiler.html
Intel Fortran Compiler Classic
Other names
  • ifort
Developer(s)Intel
Stable release
2021.8.0[1] / December 21, 2022; 21 months ago (2022-12-21)
Operating systemLinux, Windows, macOS
TypeCompiler
LicenseFreeware, Optional priority support
Websitesoftware.intel.com/content/www/us/en/develop/tools/oneapi/components/fortran-compiler.html

इंटेल वनएपीआई एचपीसी टूलकिट के हिस्से के रूप में इंटेल फोरट्रान कंपाइलर, माइक्रोसॉफ़्ट विंडोज़ , मैकओएस और लिनक्स के लिए इंटेल के फोरट्रान संकलनकर्ता का एक समूह है।

अवलोकन

कंपाइलर IA-32 और Intel 64 प्रोसेसर और कुछ गैर-इंटेल लेकिन संगत प्रोसेसर, जैसे कि कुछ AMD प्रोसेसर के लिए कोड उत्पन्न करते हैं। IA-64 (इटेनियम) प्रोसेसर के लिए लिनक्स-आधारित अनुप्रयोगों के विकास के लिए कंपाइलर (11.1) की एक विशिष्ट रिलीज़ उपलब्ध रहती है। विंडोज़ पर, इसे इंटेल विज़ुअल फोरट्रान के नाम से जाना जाता है।[2] MacOS और Linux पर, इसे इंटेल फोरट्रान के नाम से जाना जाता है। 2020 में मौजूदा कंपाइलर का नाम बदलकर "इंटेल फोरट्रान कंपाइलर क्लासिक" (आईफोर्ट) कर दिया गया और जीपीयू ऑफलोड को सपोर्ट करने वाले वनएपीआई (कंप्यूट एक्सेलेरेशन) (आईएफएक्स) के लिए एक नया इंटेल फोरट्रान कंपाइलर पेश किया गया।

क्लासिक कंपाइलर की 2021 रिलीज में 2018 मानक, पूर्ण ओपनएमपी* 4.5 और केवल सीपीयू के लिए प्रारंभिक ओपन एमपी 5.1 के माध्यम से पूर्ण फोरट्रान समर्थन जोड़ा गया है। 2021 बीटा कंपाइलर जीपीयू ऑफलोड के लिए ओपनएमपी पर केंद्रित है। जब इंटेल वनएपीआई एचपीसी टूलकिट (नीचे पैकेजिंग का विवरण देखें) के साथ उपयोग किया जाता है, तो कंपाइलर ओपनएमपी निर्देशों से वितरित मेमोरी मल्टीप्रोसेसिंग के लिए स्वचालित रूप से संदेश पासिंग इंटरफ़ेस कॉल भी उत्पन्न कर सकता है।

फ़ोरट्रान मानकों पर अधिक जानकारी के लिए, एक संख्या या संसाधन उपलब्ध हैं, जैसे विकिपीडिया फ़ोरट्रान प्रविष्टि या फ़ोरट्रान विकि पृष्ठ।

इंटेल फोरट्रान पैकेज में इंटेल ऐरे विज़ुअलाइज़र शामिल है, जो एफआईटीएस और नेटसीडीएफ जैसे वैज्ञानिक प्रारूपों के लिए एक विज़ुअलाइज़ेशन टूल है, जो एक्स-वाई प्लॉट, समोच्च प्लॉट और छवि प्लॉट का उत्पादन कर सकता है, और उन्हें अन्य प्रारूपों में सहेज सकता है।[3][4]

अनुकूलन

इंटेल कंपाइलर अनुकूलित हैं[5] इंटेल आर्किटेक्चर का समर्थन करने वाले प्रोसेसर का उपयोग करने वाले कंप्यूटर सिस्टम के लिए। वे स्टालों को कम करने और कोड का उत्पादन करने के लिए डिज़ाइन किए गए हैं जो कम से कम संभव संख्या में चक्रों में निष्पादित होते हैं। इंटेल फोरट्रान कंपाइलर्स संकलित प्रोग्राम को अनुकूलित करने के लिए तीन अलग-अलग उच्च-स्तरीय तकनीकों का समर्थन करते हैं: अंतरप्रक्रियात्मक अनुकूलन (आईपीओ), प्रोफ़ाइल-निर्देशित अनुकूलन (पीजीओ), और अन्य कार्यक्रम अनुकूलन|उच्च-स्तरीय अनुकूलन (एचएलओ)।

इंटरप्रोसेड्यूरल ऑप्टिमाइज़ेशन विशिष्ट कंपाइलर ऑप्टिमाइज़ेशन (जैसे निरंतर प्रसार) लागू करता है लेकिन एक व्यापक दायरे का उपयोग करता है जिसमें कई प्रक्रियाएँ, कई फ़ाइलें या संपूर्ण प्रोग्राम शामिल हो सकते हैं।[6] प्रोफ़ाइल-निर्देशित अनुकूलन के संबंध में, कंपाइलर प्रतिनिधि वर्कलोड के साथ एप्लिकेशन का उपयोग करने से प्रदर्शन-संबंधित जानकारी का एक डेटासेट उत्पन्न करता है, जिसका विश्लेषण यह पता लगाने के लिए किया जाता है कि एप्लिकेशन के कौन से हिस्से अधिक और कम बार निष्पादित होते हैं। कंपाइलर इन डेटा का उपयोग एप्लिकेशन निष्पादन को व्यवस्थित करने के लिए करता है ताकि एप्लिकेशन वास्तव में कैसे उपयोग किया जाता है इसके आधार पर प्रदर्शन को अनुकूलित किया जा सके। यह आईपीओ के विपरीत है जो कार्यभार से स्वतंत्र एप्लिकेशन के तार्किक प्रवाह के अनुसार अनुप्रयोगों को अनुकूलित करता है। कार्यभार-आधारित अनुकूलन प्रदान करने के लिए दोनों को जोड़ा जा सकता है जिसके भीतर तार्किक-प्रवाह अनुकूलित होता है। इस प्रकार, सभी अनुकूलन प्रोफ़ाइल-निर्देशित फीडबैक से लाभान्वित हो सकते हैं क्योंकि संकलन निर्णय लेते समय वे अनुमान पर कम निर्भर होते हैं।

उच्च-स्तरीय अनुकूलन प्रोग्राम के एक संस्करण पर किए गए अनुकूलन हैं जो स्रोत कोड को अधिक बारीकी से दर्शाते हैं। इसमें लूप इंटरचेंज, पाश संलयन, लूप का खुलना , पाश वितरण , डेटा प्रीफ़ेच और बहुत कुछ शामिल है।[7]

मानक समर्थन

इंटेल फोरट्रान कंपाइलर क्लासिक 2018 मानक के माध्यम से फोरट्रान का पूरी तरह से समर्थन करता है। इंटेल फोरट्रान कंपाइलर (बीटा) पूर्ण फोरट्रान 77/90/95 का समर्थन करता है और इसमें फोरट्रान 2003 मानक का आंशिक समर्थन है।

वास्तुकला

पैकेजिंग का विवरण

कंपाइलर इंटेल और एपीटी और यम रिपॉजिटरी से स्टैंडअलोन उपलब्ध हैं। वे इंटेल वनएपीआई एचपीसी टूलकिट में भी उपलब्ध हैं जिसमें अन्य बिल्ड टूल, जैसे लाइब्रेरी, और त्रुटि जांच और प्रदर्शन विश्लेषण के लिए विश्लेषण टूल शामिल हैं। कंपाइलर्स वाले कंटेनर डॉकर हब पर हैं।

2003 से इतिहास

संकलक संस्करण रिलीज़ की तारीख प्रमुख नई सुविधाएँ
इंटेल फोरट्रान कंपाइलर 8.0 December 15, 2003 Precompiled headers, code-coverage tools.
इंटेल फोरट्रान कंपाइलर 8.1 September, 2004 AMD64 architecture (for Linux).
इंटेल फोरट्रान कंपाइलर 9.0 June 14, 2005 AMD64 architecture (for Windows), software-based speculative pre-computation (SSP) optimization, improved loop optimization reports.
इंटेल फोरट्रान कंपाइलर 10.0 June 5, 2007 Improved parallelizer and vectorizer, Streaming SIMD Extensions 4 (SSE4), new and enhanced optimization reports for advanced loop transformations, new optimized exception handling implementation.
इंटेल फोरट्रान कंपाइलर 10.1 November 7, 2007 New OpenMP* compatibility runtime library. To use the new libraries, you need to use the new option "-Qopenmp /Qopenmp-lib:compat" on Windows, and "-openmp -openmp-lib:compat" on Linux. This version of the Intel compiler supports more intrinsics from Microsoft Visual Studio 2005. VS2008 support - command line only in this release.
इंटेल फोरट्रान कंपाइलर 11.0 November 2008 More Fortran 2003 support. Support for OpenMP 3.0. Source Checker for static memory/parallel diagnostics. Commercial licenses for Windows version include Microsoft Visual Studio 2005 Premier Partner Edition.
इंटेल फोरट्रान कंपाइलर 11.1 June 23, 2009 Support for latest Intel SSE, AVX and AES instructions. More Fortran 2003 support. Support for latest Intel MKL release (included in compiler products). Commercial licenses for Windows version include Microsoft Visual Studio 2008 Shell and libraries.
इंटेल फोरट्रान कंपोजर XE 2011 अपडेट 5 तक (कंपाइलर 12.0) November 7, 2010 Coarray Fortran, additional 2003 (FINAL subroutines, GENERIC keyword,) and 2008 (Coarrays, CODIMENSION, SYNC ALL, SYNC IMAGES, SYNC MEMORY, CRITICAL, LOCK, ERROR STOP, ALLOCATE/DEALLOCATE)
इंटेल फोरट्रान कंपोजर XE 2011 अपडेट 6 और उससे ऊपर (कंपाइलर 12.1) September 8, 2011 OpenMP 3.1, additional 2003 (ALLOCATE with SOURCE=, polymorphic source) and 2008 standards support, Windows version ships with Visual Studio 2010 Shell.
इंटेल फोरट्रान कंपोजर XE 2013 (कंपाइलर 13.0) September 5, 2012 Linux-based support for Intel Xeon Phi coprocessors, support for Microsoft Visual Studio 12 (Desktop), support for gcc 4.7, support for Intel AVX 2 instructions, updates to existing functionality focused on delivering improved application performance. Continued availability of the Visual Studio 2010 Shell for Windows versions.
इंटेल फोरट्रान कंपोजर XE 2013 SP1 (कंपाइलर 14.0) July 31, 2013 User-Defined Derived Type I/O; OpenMP directives, clauses and procedures; coarrays ; Microsoft Visual Studio parallel build support
इंटेल फोरट्रान कंपोजर XE 2013 SP1 अपडेट 1 (कंपाइलर 14.0.1) October 18, 2013 Japanese localization of 14.0; Windows 8.1 and Xcode 5.0 support
इंटेल फोरट्रान कंपोजर XE 2015 (कंपाइलर 15.0) August 5, 2014 Full support for Fortran 2003; BLOCK from Fortran 2008; EXECUTE_COMMAND_LINE from Fortran 2008; New optimization report annotates the source from within Visual Studio[8]
इंटेल फोरट्रान कंपोजर XE 2015 अपडेट 1 (कंपाइलर 15.0.1) October 30, 2014 AVX-512 support; Japanese localization; MIN/MAX Reductions in SIMD Loop Directive
इंटेल फोरट्रान कंपाइलर 16.0, इंटेल पैरेलल स्टूडियो XE 2016 का हिस्सा August 25, 2015 Submodules from Fortran 2008, enhanced interoperability of Fortran with C from draft Fortran 2018, OpenMP 4.1 extensions
इंटेल फोरट्रान कंपाइलर 17.0 March 4, 2016 OpenMP 4.5 extensions
इंटेल फोरट्रान कंपाइलर 18.0 January 17, 2017 Full Fortran 2008 support
इंटेल फोरट्रान कंपाइलर 19.0 September 12, 2018 Some Fortran 2018 features
इंटेल फोरट्रान कंपाइलर क्लासिक 2021.1.1 December 8, 2020 Full Fortran 2018 support, OpenMP 4.5 and initial Open MP 5.1 for CPU only
इंटेल फोरट्रान कंपाइलर (बीटा) 2021.1.1 December 8, 2020 OpenMP* 4.5 and initial OpenMP support for CPU and GPU Offload
इंटेल फोरट्रान कंपाइलर क्लासिक 2021.5.0 December 6, 2021 Fortran language fixes and security updates
इंटेल फोरट्रान कंपाइलर वनएपीआई 2022.0.0 December 6, 2021
  • Full Fortran 2003 except parameterized derived types
  • Full Fortran 2008 except coarrays
  • Corrections to reported problems[9]
इंटेल फोरट्रान कंपाइलर वनएपीआई 2023.0.0 December 21, 2022
  • Complete Fortran 2003, 2008, 2018 standards
  • IFX now has Fortran language feature parity with IFORT[10]

डिबगिंग

इंटेल कंपाइलर डिबगिंग जानकारी प्रदान करता है जो सामान्य डिबगर्स के लिए मानक है (लिनक्स पर डीडब्ल्यूएआरएफ, जीडीबी के समान, और विंडोज़ के लिए सीओएफएफ)। डिबगिंग जानकारी के साथ संकलित करने के लिए झंडे हैं /Zi विंडोज़ पर और -g लिनक्स पर। विंडोज़ पर विज़ुअल स्टूडियो डीबगर का उपयोग करके और लिनक्स पर जीडीबी का उपयोग करके डिबगिंग की जाती है।

जबकि इंटेल कंपाइलर एक जीप्रोफ-संगत प्रोफाइलर (कंप्यूटर विज्ञान) आउटपुट उत्पन्न कर सकता है, इंटेल वीट्यून नामक एक अलग उत्पाद के रूप में कर्नेल-स्तर, सिस्टम-वाइड सांख्यिकीय प्रोफाइलर भी प्रदान करता है। वीट्यून में उपयोग में आसान जीयूआई (विंडोज के लिए विजुअल स्टूडियो, लिनक्स के लिए ग्रहण (सॉफ्टवेयर) में एकीकृत) के साथ-साथ एक कमांड-लाइन इंटरफ़ेस भी है। वीट्यून प्रोफाइलर के अलावा, इंटेल सलाहकार है जो वेक्टराइजेशन ऑप्टिमाइज़ेशन और थ्रेडिंग डिज़ाइन और प्रोटोटाइपिंग के लिए टूल में माहिर है।

इंटेल मेमोरी और थ्रेडिंग त्रुटि का पता लगाने के लिए इंटेल इंस्पेक्टर XE नामक एक टूल भी प्रदान करता है। मेमोरी त्रुटियों के संबंध में, यह स्मृति रिसाव , मेमोरी भ्रष्टाचार, एपीआई बेमेल के आवंटन/डी-आवंटन और असंगत मेमोरी एपीआई उपयोग का पता लगाने में मदद करता है। थ्रेडिंग त्रुटियों के संबंध में, यह डेटा रेस (हीप और स्टैक दोनों), डेडलॉक और थ्रेड और सिंक एपीआई त्रुटियों का पता लगाने में मदद करता है।

यह भी देखें

संदर्भ

  1. 1.0 1.1 "Intel® Fortran Compiler for oneAPI Release Notes". Intel (in English). Retrieved 2020-12-28.
  2. "Intel Visual Fortran Compiler Professional Edition for Windows". cnet.com.
  3. Readey, John (October 27, 2004). इंटेल ऐरे विज़ुअलाइज़र. HDF Workshop VIII. Retrieved 6 May 2023.
  4. "इंटेल ऐरे विज़ुअलाइज़र". Intel Developer Zone. 7 March 2016. Archived from the original on March 7, 2016. Retrieved 6 May 2023.
  5. "इंटेल (फोरट्रान, सी, और सी++)". NERSC.gov.
  6. Intel compiler documentation. Select the Fortran compiler of choice and search for Profile-Guided Optimization. http://software.intel.com/en-us/intel-software-technical-documentation
  7. The Software Optimization Cookbook, High-Performance Recipes for IA-32 Platforms, Richard Gerber, Aart J.C. Bik, Kevin B. Smith, and Xinmin Tian, Intel Press, 2006
  8. "Intel Visual Fortran 15 now available".
  9. "Fortran Language and OpenMP* Features Implemented in Intel® Fortran Compiler". Intel® Fortran Compiler. Intel. Retrieved 2021-12-27.
  10. "The Next Chapter for the Intel® Fortran Compiler 2023". community.intel.com (in English). 2022-12-21. Retrieved 2023-02-13.

बाहरी संबंध

  • No URL found. Please specify a URL here or add one to Wikidata.