کامپایلرهای ابسافت فرترن
کامپایلرهای Absoft Fortran مجموعه ای از کامپایلرهای فرترن برای مایکروسافت ویندوز ، اپل مکینتاش و لینوکس هستند که توسط Absoft Corporation تولید شده اند. کامپایلرها کد منبع سازگار با پلتفرم ها هستند. همه با اشکال زدایی گرافیکی و محیط توسعه یکپارچه همراه شده اند. پشتیبانی تک رشته ای و چند رشته ای موازی توسط کاربر کنترل می شود و شامل پنج سطح بهینه سازی، OpenMP، سطوح سرعت ریاضی 0 تا 9 و سایر قابلیت های پیشرفته است.
مدیران Absoft، پیتر جاکوبسون و وود لوتز، در دانشگاه میشیگان ملاقات کردند. آنها با هم یک فروشگاه صوتی تحت عنوان Absolute Sound در سال 1975 راه اندازی کردند. در سال 1979، آنها ظهور میکرو رایانه های 16 بیتی را مشاهده کردند و بازار کامپایلرهای Fortran با کیفیت بالا را مشاهده کردند و یک کامپایلر برای ریزپردازنده Western Digital WD16 ساختند، که آنها را به صورت تجاری در آن منتشر کردند. 1980. ابتدا از نام نرم افزار مطلق استفاده شد، اما نام کوتاه شده Absoft بعنوان یک علامت تجاری کاربردی تر در نظر گرفته شد.
اولین موفقیت عمده فروش Absoft، قرارداد 500 هزار دلاری با Alpha Microsystems برای حقوق توزیع مجدد جهانی کامپایلر Fortran 77 سازگار با سیستم عامل AMOS آنها با استفاده از پردازنده سری Motorola 68000 بود. در این مرحله Absoft هنوز فقط از دو بنیانگذار تشکیل شده بود، بنابراین این موفقیت به شرکت اجازه داد تا مستقل بماند، کارکنان خود را اضافه کند و به یک مرکز اداری بزرگتر نقل مکان کند. قراردادهای OEM اضافی برای کامپایلرهای Fortran برای انواع مختلف یونیکس دنبال شد. بنیانگذاران مدیری برای Absolute Sound استخدام کردند که به موفقیت خود ادامه داد و به سه فروشگاه گسترش یافت؛ این زنجیره در سال 1988 به یک زنجیره بزرگتر Hi-Fi فروخته شد.
MIL-STD-1753 توسط DoD در سال 1978 برای استانداردسازی برخی از ویژگی های صنعتی Real-Time Fortran به عنوان افزونه Fortran 77 منتشر شد. این افزونه IMPLICIT NONE، DO WHILE، END DO را جایگزین CONTINUE به عنوان دستور برای پایان حلقه های DO و توابع ذاتی برای آزمایش و تنظیم بیت ها کرد. MIL-STD-1753 در استاندارد ISO/IEC 1539: 1991 جذب شد و بعدها استانداردهای ISO/IEC مطابق MIL-STD-1753 هستند و MIL-STD-1753 در سال 1995 به عنوان اضافی حذف شد.
زمانی که Alpha Micro میکروکامپیوتر مبتنی بر MC68000 خود را منتشر کرد، Absoft پیشنهاد های خود را به موتورولا و مکینتاش گسترش داد. در دسترس بودن ماشین های مبتنی بر MD68000، یونیکس 32 بیتی را در ماشین های کوچک قابل اجرا کرد و Absoft کامپایلرهای Fortran را برای ماشین های یونیکس توسط Data General، HP، Sun Microsystems، Tektronix و دیگران ارائه داد.
در سال 1985 مایکروسافت مجوز MacFortran را صادر کرد که شامل یک کامپایلر بومی ANSI FORTRAN 77 و دیباگر گرافیکی بود. اندکی پس از آن، مایکروسافت با Absoft قراردادی برای توسعه مایکروسافت فرترن برای مکینتاش و یک کامپایلر بیسیک مایکروسافت که 100% نحو با مفسر مایکروسافت بیسیک موجود در مکینتاش سازگار بود، منعقد کرد. اپل با سفارش زیادی برای دانشگاه Drexel، یکی از اولین مشتریان Mac Fortran بود. انواع کامپایلرهای Fortran و BASIC برای مکینتاش تحت نام A/C Fortran و A/C Basic برای آمیگا به بازار عرضه شد. کامپایلرهای فرترن برای لینوکس/یونیکس و مایکروسافت ویندوز دنبال شدند.
کامپایلرهای Mac و Amiga Fortran شامل یک محیط توسعه یکپارچه (IDE) و نمایه ساز بودند. IDE به کامپایلرهای ویندوز اضافه شد و در همه کامپایلرهای بعدی Absoft Fortran گنجانده شد.
در طول دهه 1990، خطوط تولید گسترده و اینترنت، ابسافت را قادر ساخت تا پایگاهی از فروشندگان در سراسر جهان ایجاد کند. برای مدتی در اواسط دهه 1990، Absoft یک نماینده تمام وقت در کالیفرنیا داشت، اما استفاده گسترده از اینترنت این موقعیت را حذف کرد و اجازه داد همه چیز در یک مکان واحد اجرا شود.
جزئیات مربوط به نقاط عطف از سال 2006 در صفحه انتشارات مطبوعاتی وب سایت Absoft موجود است. ابسافت پرو فورترن از ژوئیه ی 2018 در پنج ورژن در دسترس است:نسخه های ویندوز، مک و 64 بیتی لینوکس با توجه به گزینه کاربر، فایل های اجرایی 32 بیتی یا 64 بیتی تولید می کنند. نسخه لینوکس 32 بیتی اجزای 32 بیتی تولید می کند. همه نسخه ها کتابخانه های IMSL را به عنوان یک گزینه اضافی ارائه می دهند.
GINO GUI Lite به عنوان یک جزء اختیاری و بدون هزینه اضافی در دسترس است. GINO GUI و گرافیک و Winteracter GUI Toolset نیز با هزینه اضافی در دسترس هستند.
گزینه های موازی سازی و بهینه سازی اسبافت پرو فورترن توسط تصویر صفحه گزینه های مربوطه در سمت راست نشان داده شده است. Absoft Pro Fortran پنج سطح بهینه سازی کلاسیک و گزینه های Speed Math 0 تا 9 را ارائه می دهد. گزینه های موازی سازی شامل موازی سازی خودکار به عنوان یک کادر تأیید با نشانه های گرافیکی از میزان موفقیت در کد منبع در پنجره ویرایشگر به عنوان برجسته کردن رنگ ها است. OpenMP 3.0 نیز به عنوان چک باکس در دسترس است. Speed ​​OpenMP به صورت هیچکدام یا سطوح 0 تا 5 در دسترس است. Absoft پشتیبانی از MPI (MPICH2 و Open MPI) را ارائه می دهد. ScaLAPACK و BLACS با تمام سیستم عامل ها ارسال می شود. IMSL 7.0، یکپارچه اما از زمان انتشار نسخه 7.0 در سال 2011 به عنوان مجوز جداگانه در دسترس است، MPICH2 را تأمین می کند. اجرای برنامه هایی که از موازی سازی در ماشین هایی استفاده می کنند که Absoft Fortran را نصب نکرده اند، نیاز به افزودن pthreadVC2.dll برای فایل های اجرایی 32 بیتی یا، برای اجراهای 64 بیتی، pthreadVC2_64.dll دارد. این کتابخانه تحت LGPL 2.1 توزیع شده است.
برخی از افزونه های فورترن 2003 و فورترن 2008 از آوریل 2014 با نسخه 14.0.3 اجرا شده اند.
برخی از برنامه های افزودنی Fortran 2003 در نسخه های فعلی Absoft Pro Fortran موجود است. از جمله این موارد عبارتند از:چندین افزونه Fortran 2008 از آوریل 2014 در دسترس است. بیشتر با به روزرسانی ها و نسخه های جدید در دسترس خواهد بود. موارد موجود در حال حاضر شامل موارد زیر است، اما به آنها محدود نمی شود: همه این بسته ها در IDE گنجانده شده اند و کاملاً در کامپایلر ادغام شده اند. هزینه در قیمت خرید گنجانده شده است به جز IMSL و GINO یا Winteracter، که جداگانه فروخته می شوند. بسته های نصب شده را می توان برای افزودن در جعبه های علامت گذاری در برگه ای در منوی گزینه های پروژه انتخاب کرد که در تصویر سمت راست نشان داده شده است. برخی از این موارد در زیر توضیح داده شده است.
دیباگر گرافیکی FX3 با تمام نسخه های Absoft Pro Fortran همراه است. اشکال زدایی گرافیکی FX3 با مجموعه کامپایلر GNU (gcc) (در مکینتاش و لینوکس)، Apple C، Microsoft Visual Studio C/C ++ (فقط Windows) و زبان اسمبلی در هر سه سیستم عامل سازگار است.
GINO و Winteracter APIهای شخص ثالث اختیاری برای ایجاد گرافیک های پیچیده دو بعدی و سه بعدی و برنامه های رابط کاربری گرافیکی با استفاده از برنامه های فرترن هستند. GINO Lite (فقط 32 بیتی، برخی محدودیت ها) با Absoft Pro Fortran برای Windows بدون هیچ گونه هزینه اضافی همراه است و برای اکثر کاربران مناسب است. Absoft مجوزها را در تمام پلتفرم‌ها برای نسخه‌های کامل GINO یا Winteracter ارائه می‌دهد که شامل پشتیبانی 64 بیتی است، هیچ محدودیتی ندارد و با مجموعه Absoft Pro Fortran یکپارچه شده است.
Absoft تنها فروشنده تجاری Fortran است که بسته‌های IMSL Numerical Libraries را با کامپایلرهای فرترن برای ویندوز، مک و لینوکس ارائه می‌کند. Absoft تنها ارائه دهنده IMSL برای MacOS است. Absoft مجوزهای IMSL و اسناد را به عنوان کدهای بازگشایی می فروشد که امکان انتشار کتابخانه ها و اسناد IMSL را از نرم افزار نصب Absoft فراهم می کند. نسخه‌های فعلی با IMSL 7، آخرین نسخه عرضه می‌شوند.
برای استفاده در کد انتقال نوشته شده بر روی سیستم‌های UNIX یا VAX، کتابخانه‌های ذاتی Fortran مخصوص UNIX و VAX با علامت زدن کادری در پنجره گزینه‌های پروژه، کتابخانه‌ها/ابزارها در دسترس هستند. سایر برنامه های افزودنی مهم برای انتقال از سیستم عامل های دیگر، مانند اشاره گرهای Cray، در Absoft Pro Fortran به عنوان بخشی از کامپایلر گنجانده شده است.
بسته جبر خطی (LAPACK) با زیر برنامه های اصلی جبر خطی (BLAS) یا BLAS به تنهایی، به عنوان کتابخانه های قابل پیوند ارائه می شود.
کتابخانه‌های قالب داده سلسله مراتبی HDF4 نسخه 4.2.8 و HDF5 نسخه 1.8.9 را می‌توان با علامت زدن کادری در پنجره گزینه‌های پروژه، کتابخانه‌ها/ابزارها گنجاند.
فرم داده مشترک شبکه (NetCDF) نسخه 4.3 با علامت زدن یک کادر در دسترس است.
انویدیا کارت‌های گرافیکی را تولید می‌کند که از آرایه‌های واحدهای پردازش گرافیکی با معماری کامل یکپارچه دستگاه (CUDA) استفاده می‌کنند. یک نسخه ویژه از BLAS را می توان با علامت زدن کادری در پنجره گزینه های پروژه، کتابخانه ها/ابزارها در پیوند دادن کتابخانه ها گنجاند.
CAPS یک کامپایلر چند هسته ای برای استفاده از آرایه های هسته CUDA در GPU برای محاسبه است.
PLplot 5.9 با علامت زدن کادری در پنجره Project Options Libraries/Tools در دسترس است. صحافی ها برای هر دو دقت تکی و دوگانه، از FORTRAN 77 یا Fortran 95 یا برای تماس از مایکروسافت WIN32 در دسترس هستند.
برای همه سیستم عامل ها، Absoft Pro Fortran از کتابخانه های استاتیک یا پویای کاربر که توسط سیستم، سایر کامپایلرها یا کاربر ارائه می شود پیوند می دهد. Absoft Pro Fortran قابلیت تولید کتابخانه های ایستا و پویا را دارد.
همه کامپایلرهای Absoft را می توان از خط فرمان فراخوانی کرد و به طور کامل کنترل کرد. از آنجایی که Absoft از نسخه 10.0 در سال 2005 از فرمت پیوند دهنده سیستم برای همه پلتفرم ها استفاده کرده است، فایل های شی C/C++ را می توان با فایل های آبجکت کامپایلر Absoft پیوند داد و ادغام با رایج ترین کامپایلرهای C/C++ توسط تنظیمات در Absoft IDE انجام می شود.
Absoft IDE برای استفاده از کامپایلرهای Absoft Fortran سیم‌کشی شده است و برای استفاده از یک کامپایلر C/C++ که فایل‌های شی سازگار با پیوند دهنده سیستم را تولید می‌کند، قابل تنظیم است.
گزینه های GUI مخصوص Absoft امکان استفاده از برنامه های کامپایل شده با Absoft Pro Fortran با استفاده از ماوس و برخورد با پنجره های بازشو را به همان روشی که از برنامه های GUI پنجره دار استفاده می شود، می دهد. استفاده از ویژگی های GUI مخصوص Absoft بین سیستم عامل هایی که از Absoft Pro Fortran در هر پلتفرم استفاده می کنند قابل حمل است، اما سایر کامپایلرها و سیستم عامل ها نمی توانند از این ویژگی ها استفاده کنند و کد ویژگی های Absoft خاص توسط سایر کامپایلرها قابل تشخیص نخواهد بود.
گزینه Microsoft/Macintosh Runtime Window Environment (MRWE) از یک برنامه اصلی Fortran 77 استفاده می کند که از کتابخانه های GUI سیستم برای ایجاد یک برنامه پنجره ای استفاده می کند. محیط MRWE به عنوان یک نوع اجرایی در گزینه های IDE برای ایجاد یک برنامه انتخاب شده است. برنامه پیش فرض MRWE ورودی و خروجی را به یک پنجره پیمایش شبیه به خط فرمان ترسیم می کند، اما کاربر تمام خروجی را حفظ می کند و می تواند پس از خروج برنامه، آن را به عنوان یک فایل متنی ذخیره کند. در برنامه MRWE GUI برای افزودن تماس های سیستم ویندوز برای افزایش رابط کاربری، قلاب هایی ارائه شده است که پتانسیل یک برنامه کامل ویندوز را به طور کامل در Fortran نوشته شده است. کد منبع MRWE به عنوان نقطه شروع برای یک برنامه GUI تمام Fortran Win32 در دسترس است. MRWE در سال 2012 با AWE جایگزین شد اما هنوز به عنوان یک محیط هدف برای برنامه های قدیمی در دسترس است.
محیط پنجره Absoft (AWE ) با انتخاب نوع برنامه در GUI ارائه می شود. وقتی این کار انجام شد، یک فایل codice_62 به پروژه شما اضافه می شود. این فایل Fortran شامل رویه های کوچکی است که در حین مقدار دهی اولیه نامیده می شوند که AWE را با تعیین اندازه پشته برای پنجره تعاملی، اندازه و رفتار پنجره و فونت پیکربندی می کند.
یک برنامه AWE می تواند موارد منوی پنجره کنسول تعاملی را که می تواند برای اجرای واحدهای برنامه و خروج از آنها استفاده شود، افزایش دهد و GUI را برای یک برنامه تعاملی ارائه دهد. واحدهای برنامه می توانند با استفاده از پنجره های بازشو، منوها و پنجره های صفحه نمایش کار کنند، به طوری که کنسول سنتی I/O به طور کلی استفاده نمی شود و بنابراین یک برنامه کاربردی GUI تمام Fortran را در هر سه سیستم عامل پشتیبانی شده ارائه می دهد.
برنامه های AWE که برای استفاده بدون کامپایلر Absoft توزیع شده اند، نیاز به codice_63 با فایل های اجرایی 32 بیتی یا codice_64 برای فایل های اجرایی 64 بیتی دارند. این DLL ها تحت مجوز Free Public Foundation GNU General Public Foundation (نسخه 3 با استثناء کتابخانه GCC) منتشر می شوند. با استفاده از دستور codice_65 به پنجره های بازشو، گرافیک و صفحات گسترده تعاملی دسترسی پیدا می کنید. توزیع فایل های اجرایی با این ویژگی ها شامل codice_66 و codice_67 است. QT تحت LGPL نسخه 2.1 دارای مجوز است.
کامپایل به عنوان یک برنامه AWE ورودی و خروجی استاندارد را به یک پنجره پیمایش شبیه به خط فرمان ترسیم می کند، اما کاربر تمام خروجی را حفظ می کند و این گزینه را دارد که پس از خروج برنامه، آن را به عنوان یک فایل متنی ذخیره کند. سایر ویژگی ها، که در زیر توضیح داده شده است، با استفاده از برنامه AWE فعال می شود. می توان یک برنامه AWE تعاملی نوشت که به هیچ عنوان از کنسول تعاملی استفاده نمی کند و این پنجره را برای استفاده به عنوان یک گزارش اجرا در دسترس می گذارد.
این توابع از طریق فراخوانی به رویه ها در ماژول codice_68 پیاده سازی می شوند. برنامه نویسی تقریباً همان چیزی است که برای یک رابط تعاملی پنجره خط فرمان مورد نیاز است.
نمودارهای میله ای، نمودارهای پای و نمودارهای X-Y از طریق فراخوانی به رویه ها در ماژول codice_68 پشتیبانی می شوند. پیش فرض ها استفاده ساده را ارائه می دهند اما انعطاف پذیری زیادی در رنگ های خروجی، رنگ و عرض خط، پس زمینه و غیره در صورت تمایل در دسترس است.
نمودارهای سه بعدی شامل نمودارهای x-y-z چشم انداز و نمودارهای کانتور نیز از طریق فراخوانی به رویه ها در ماژول codice_68 برای انتشار 2015 و بعد پشتیبانی می شوند.
برای نمایش آرایه های رتبه 2 می توانید پنجره های صفحه گسترده ای را در AWE ایجاد کنید. زیربرنامه ها برای باز کردن، بستن، خواندن، نوشتن و برچسب زدن برگه ها ارائه شده است. دستورهای منو را که در بالا توضیح داده شد، می توان به یک برنامه AWE اضافه کرد تا داده های موجود در صفحه گسترده را دستکاری کند.
در صفحه ای در وب سایت Absoft، بیش از 180 کاربر مجوز شرکت و دولت فهرست شده است. از جمله آنها می توان به کامپیوتر اپل، آزمایشگاه های سرن، آزمایشگاه های ملی لارنس لیورمور، مرکز تحقیقات نویسی ناسا، مرکز جنگ دریایی زیر دریایی، آزمایشگاه تحقیقات نیروی دریایی، مرکز جنگی نیروی دریایی، شرکت Raytheon Systems، Seagate Technology، شرکت توشیبا، آزمایشگاه فیلیپس USAF، Boeing Defense و Space، Canon، Inc.، Nikon Corporation، Computer Science Corporation، General Motors، Ford Motor Company، Toyota Motor Company، Hewlett Packard، Institute for Defense Analysis، Lockheed Martin، Los Alamos National Laboratories، McDonnell Douglas، MIT Lincoln Laboratories، Mitsubishi Heavy صنایع، SRI International، Texas Instruments، نیروی هوایی ایالات متحده، Wolfram Research، Micro Devices پیشرفته، آزمایشگاههای ملی Argonne، آزمایشگاههای AT&T Bell، شرکت هواپیماهای نظامی بوئینگ، آزمایشگاه ملی بروکهاون، آزمایشگاههای CSDraper، مرکز تحقیقات دیوید سرنوف، GE Aerospace، IBM TJ مرکز تحقیقات واتسون، شرکت اینتل، آزمایشگاه پیشرانش جت، آزمایشگاه های لارنس برکلی، Loral Space & Range Systems، شرکت میتر، مرکز تحقیقات لانگلی ناسا و بسیاری دیگر.