Разработчик (и) | Silicon Graphics, Inc., Институт вычислительных технологий, Китайская академия наук, Hewlett Packard, Университет штата Делавэр |
---|---|
Первый выпуск | 2002 г.; 18 лет назад (2002 г.) |
Финальная версия | 5.0 / 10 ноября 2011 г.; 8 лет назад (2011-11-10) |
Операционная система | Кросс-платформенная, Linux |
Тип | Компилятор |
Лицензия | Стандартная общественная лицензия GNU |
Веб-сайт | sourceforge.net / projects / open64 / |
Open64 - это бесплатный, open-source, оптимизирующий компилятор для архитектур 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 - это (ORC), которая производит код только для Itanium (IA-64) и финансируется Intel. Работа над ORC завершилась в 2003 году, и текущая официальная ветвь (которая возникла из проекта Intel ORC) находится под управлением Hewlett Packard и компьютерной архитектуры и параллельных систем Университета Делавэра. Лаборатория (CAPSL).
Другие важные ответвления включают компиляторы из Tensilica и AMD x86 Open64 Compiler Suite.
Nvidia также использует форк Open64 для оптимизации кода в его CUDA toolchain.
Версия | Дата выпуска |
---|---|
5.0 | 11.11.2011 |
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 | 07.07.2003 |
0,15 | 2002-11-30 |
0,14 | 04.03.2002 |
0.13 | 10.01.2002 |
Версия | Дата выпуска |
---|---|
4.5.2.1 | 28.03.2013 |
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 | 24.04.2009 |
Open64 также используется в ряде исследовательских проектов, таких как Unified Parallel C (UPC) и спекулятивная многопоточность работают в различных университетах. Форум разработчиков Open64 2010 описывает проекты, выполненные в Absoft, AMD, Китайской академии наук, Университете Фудань, HP, Национальный университет Цин Хуа, Nvidia, Tensilica, Университет Цинхуа и Университет Хьюстона. Китайская академия наук перенесла Open64 на платформу Loongson II.
AMD расширила и произвела Open64 с оптимизацией, разработанной для усовершенствования многоядерных процессоров x86 и многоядерных процессоров. многопоточная разработка кода. AMD поддерживает Open64 как дополнительный компилятор к GCC.
Проект OpenUH Хьюстонского университета, основанный на Open64, выпустил новую версию своего компилятора в ноябре 2015 года.