Open64 — открытый оптимизирующий компилятор под архитектуры Intel IA-64 (Itanium) и AMD64 (x86_64). Представляет собой ответвление компилятора фирмы SGI для MIPS-процессора R10000. Open64 был выпущен под лицензией GPL в 2000 году, и сейчас чаще всего устанавливается на исследовательских платформах и в организациях, занимающихся исследованиями компиляторов и компьютерных архитектур. Open64 распространяется под лицензией GPL. Open64 поддерживает языки Фортран 77/95 и Си / Си++; также поддерживает API OpenMP для программирования кроссплатформенных многопоточных приложений с разделяемой памятью. Компилятор обеспечивает высококачественный межпроцедурный анализ, анализ потока данных[англ.], анализ зависимости по данным и контроль границ массивов.
Open64 | |
---|---|
Тип | Компилятор |
Разработчик | Open64 Team |
Операционная система | Кроссплатформенное программное обеспечение |
Первый выпуск | 2002 |
Последняя версия | 5.0 (10 ноября 2011[1]) |
Лицензия | GPL |
Сайт | sourceforge.net/projects… |
Инфраструктура
правитьОсновные компоненты инфраструктуры поддерживают внутреннее представление для языков Си / Си++ (используя компилятор gcc) и Фортран 77/90 (используя компилятор CraySoft), межпроцедурный анализ, оптимизацию вложенных циклов, глобальную оптимизацию и кодогенерацию. Несмотря на то, что для простых компьютеров разработки Open64 находятся на начальной стадии, они уже доказали, что способны генерировать код для архитектур CISC, RISC и VLIW, включая MIPS, x86, IA-64, ARM и других.
Версии
правитьОригинальная версия Open64 была выпущена в 2002 году. Она была лишена некоторых важных оптимизаций, в частности, продвинутого кодогенератора с поддержкой software pipelining, и поддерживала лишь упрощенный генератор машинного кода для Itanium. Полнофункциональный вариант компилятора, MIPSPro, был доступен лишь под коммерческой лицензией как компилятор Blackbird от Reservoir Labs. Описание исключенного кодогенератора приводится в статье Showdown Архивная копия от 6 марта 2021 на Wayback Machine. В частности, на базе Blackbird был создан компилятор для чипов TILE64 компании Tilera.
Open64 продолжил развитие в множестве версий, каждое из ответвлений имеет собственные достоинства и ограничения. Классическая ветвь Open64 развивается как Open Research Compiler (ORC) и поддерживает компиляцию только для платформы Itanium (IA-64), этот вариант финансировался Intel. В 2003 году ORC прекратил развитие, код, унаследованный от проекта Intel ORC, поддерживается Hewlett Packard и университетом Делавэра (лаборатория CAPSL - Computer Architecture and Parallel Systems Laboratory).
Собственные версии компиляторов на базе Open64 выпускала Tensilica.
AMD создала "x86 Open64 Compiler Suite" на базе варианта Open64.[2]
Nvidia использовала вариант Open64 в наборе компиляторов для GPGPU интерфейса CUDA.[3]
Выпуски Open64
правитьВерсия | Дата выхода |
---|---|
5.0 | 2011-11-10 |
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 x86 Open64
правитьВерсия | Дата выхода |
---|---|
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 5.0 is available (недоступная ссылка)
- ↑ x86 Open64 Compiler Suite . AMD. Дата обращения: 12 ноября 2013. Архивировано из оригинала 13 ноября 2013 года.
- ↑ NVIDIA’s Experience with Open64 . Дата обращения: 5 августа 2016. Архивировано 30 октября 2020 года.