Основанные на GCC проекты JIT-компилятора и расширения, использующего GPU для вычислений

3 октября 2013 года

Дэвид Малколм (David Malcolm), активный разработчик GCC из компании Red Hat, опубликовал прототип библиотеки libgccjit.so с реализацией встраиваемого в приложения JIT-компилятора, использующего GCC в качестве бэкенда. Данная библиотека может быть динамически связана с интерпретаторами байткода и другими программами, которым необходима генерации машинного кода на лету, во время выполнения.

Идея проекта состоит в том, что GCC собирается в форме позиционно-независимого кода, который присоединяется к библиотеке libgccjit.so, что позволяет обеспечить возможность выполнения GCC в одном процессе с генерируемым машинным кодом. Инициирование компиляции и выполнения откомпилированных на лету блоков кода производится приложением при помощи специально предоставленного библиотекой API. Первый прототип проекта поддерживает JIT-компиляцию кода на языке Си, но уже началась подготовка биндинга для языка Python.

Другим интересным проектом, является опубликованный разработчиками из компании Samsung модифицированный вариант GCC с интегрированной поддержкой стандарта OpenACC 1.0. Указанный вариант GCC даёт возможность сформировать исполняемый файл, позволяющий в процессе работы программы вынести выполнение некоторых вычислительных операций на плечи GPU.

Источники

править


 
 
Creative Commons
Эта статья содержит материалы из статьи «Основанные на GCC проекты JIT-компилятора и расширения, использующего GPU для вычислений», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.