Открыть64
Эта статья нуждается в дополнительных цитатах для проверки . ( сентябрь 2010 г. ) |
Разработчик(и) | Silicon Graphics , Inc., Институт вычислительных технологий Китайской академии наук , Hewlett-Packard , Университет Делавэра |
---|---|
Первоначальный выпуск | 2002 год |
Финальный выпуск | 5.0 / 10 ноября 2011 г |
Операционная система | Кроссплатформенность , Linux |
Тип | Компилятор |
Лицензия | Стандартная общественная лицензия GNU |
Веб-сайт | исходная кузня |
Open64 — это бесплатный с открытым исходным кодом оптимизирующий компилятор для архитектур Itanium и x86-64 микропроцессорных . Он происходит от компиляторов SGI для процессора MIPS R10000 , называемого MIPSPro . Первоначально оно было выпущено в 2000 году как программное обеспечение GNU GPL под названием Pro64. В следующем году Университет штата Делавэр принял проект и переименовал компилятор в Open64. Сейчас он в основном служит исследовательской платформой для исследовательских групп по компиляторам и компьютерной архитектуре . Open64 поддерживает Fortran 77/95 и C/C++, а также с общей памятью модель программирования OpenMP . Он может проводить высококачественный межпроцедурный анализ , анализ потоков данных , анализ зависимости данных и анализ областей массива . Разработка прекращена, хотя исходный код проекта могут использовать другие проекты.
Инфраструктура [ править ]
Его основными компонентами являются интерфейс для C/C++ (с использованием GCC ) и Fortran 77/90 (с использованием интерфейса и библиотек CraySoft), межпроцедурный анализ (IPA), оптимизатор гнезда циклов (LNO), глобальный оптимизатор (WOPT) и генератор кода (CG). Несмотря на то, что Open64 изначально был написан для одной компьютерной архитектуры, он доказал, что может генерировать эффективный код для CISC , RISC и VLIW архитектур , включая MIPS , x86 , IA-64 , ARM и других.
Промежуточное представление [ править ]
В этом компиляторе используется иерархическое промежуточное представление (IR) с пятью основными уровнями, которое служит общим интерфейсом между всеми компонентами внешнего и внутреннего интерфейса. Этот IR называется WHIRL.
Версии [ править ]
В исходной версии Open64, выпущенной в 2002 году, отсутствовал очень продвинутый программный генератор кода конвейерной обработки, и в ней был только элементарный генератор кода для Itanium. Полный исходный компилятор MIPSPro с этим генератором кода доступен по коммерческой лицензии как компилятор Blackbird от Reservoir Labs. В документе Showdown Paper описан генератор кода, который не был включен в Open64. Очень продвинутый компилятор от Tilera для его 64-ядерного чипа TILE64 основан на Blackbird.
Open64 существует во многих форках , каждый из которых имеет разные функции и ограничения. «Классической» ветвью Open64 является Open Research Compiler (ORC), который создает код только для Itanium (IA-64) и финансируется Intel . Работа ORC завершилась в 2003 году, и нынешний официальный филиал (возникший из проекта Intel ORC) находится под управлением Hewlett-Packard и Университета штата Делавэр Лаборатории компьютерной архитектуры и параллельных систем (CAPSL) .
Другие важные ветви включают компиляторы от Tensilica и AMD x86 Open64 Compiler Suite. [1]
Nvidia также использует форк Open64 для оптимизации кода в своей цепочке инструментов CUDA . [2]
Open64 используется в качестве серверной части для компиляторов ОС HPE NonStop на платформе x86-64. [3]
Релизы Open64 [ править ]
Версия | Дата выпуска |
---|---|
5.0 | 2011-11-11 |
4.2.4 | 2011-04-12 |
4.2.3 | 2010-04-09 |
4.2.1 | 2008-12-08 |
4.2 | 2008-10-01 |
4.1 | 2007-12-03 |
4.0 | 2007-06-15 |
3.1 | 2007-04-13 |
3.0 | 2006-11-22 |
2.0 | 2006-10-02 |
1.0 | 2006-09-22 |
0.16 | 2003-07-07 |
0.15 | 2002-11-30 |
0.14 | 2002-03-04 |
0.13 | 2002-01-10 |
AMD Выпуск Open64 x86
Версия | Дата выпуска |
---|---|
4.5.2.1 | 2013-03-28 |
4.5.2 | 2012-08-08 |
4.5.1 | 2011-12-19 |
4.2.4 | 2010-06-29 |
4.2.3.2 | 2010-05-17 |
4.2.3.1 | 2010-01-29 |
4.2.3 | 2009-12-11 |
4.2.2.3 | 2009-11-23 |
4.2.2.2 | 2009-08-31 |
4.2.2.1 | 2009-06-03 |
4.2.2 | 2009-04-24 |
проекты Текущие развития
Open64 также используется в ряде исследовательских проектов, таких как Unified Parallel C (UPC) и спекулятивные многопоточные работы в различных университетах. Форум разработчиков Open64 2010 описывает проекты, реализованные в Absoft , AMD , Китайской академии наук , Университете Фудань , HP , Национальном университете Цин Хуа , Nvidia , Tensilica , Университете Цинхуа и Университете Хьюстона . [4] Китайская академия наук портировала Open64 на платформу Loongson II. [5]
AMD расширила и выпустила Open64 с оптимизацией, предназначенной для развития многоядерных процессоров x86 и разработки многопоточного кода. [6] AMD поддерживает Open64 как дополнительный компилятор GCC . [7]
Проект OpenUH Университета Хьюстона, основанный на Open64, выпустил новую версию своего компилятора в ноябре 2015 года. [8]
См. также [ править ]
Ссылки [ править ]
- ^ «Компилятор x86 Open64» . АМД . Архивировано из оригинала 13 ноября 2013 года . Проверено 12 ноября 2013 г.
- ^ Опыт NVIDIA с Open64
- ^ «Интервью Джона Рейгана о LLVM, часть 2» . ecubesystems.com . 01.05.2019. Архивировано из оригинала 25 ноября 2020 г. Проверено 21 декабря 2020 г.
- ^ «Форум разработчиков Open64 2010, 25 августа 2010 г.» . Архивировано из оригинала 12 июня 2010 года . Проверено 6 сентября 2010 г.
- ^ Open64 на MIPS: портирование и улучшение Open64 для Loongson II
- ^ Найджел Дессау, директор по маркетингу AMD (22 июня 2009 г.). «Sweet Suite, публикация в блоге» . Архивировано из оригинала 6 сентября 2010 г.
- ^ «Страница загрузки AMD Open64» . Архивировано из оригинала 13 марта 2013 г. Проверено 13 ноября 2012 г.
- ^ Страница загрузок OpenUH