> > > > Опубликован исходный код компилятора HLSL на основе Clang/LLVM

Опубликован исходный код компилятора HLSL на основе Clang/LLVM

Опубликовано:

Microsoft2012Microsoft выпустила компилятор для HLSL (High Level Shading Language) и опубликовала его в открытом коде в качестве составляющей программной платформы Clang/LLVM. Начиная с 2002, язык HLSL был важной частью программирования для GPU. Включив язык в DirectX 12, Microsoft значительно расширила сферу его применения.

HLSL используется в DirectX 12 для создания эффектов. Из программируемых эффектов компилятор создает код, который интерпретируется драйвером видеокарты для корректной работы железа. Shader Model 6.0 позволяет использовать потоковые процессоры по-новому. Теперь отдельные эффекты не должны рассчитываться как поток, а могут распределяться на отдельные шейдеры. Этот параллелизм позволяет значительно увеличить производительность. HLSL позволяет создавать трехмерные эффекты как на GPU компании AMD, так и на чипах NVIDIA. При этом разница архитектуры шейдеров или конвейера рендеринга не влияет на конечный результат, поскольку компилятор переводит язык HSLS в машинный язык GPU.

В начале Microsoft использовала проприетарный компилятор Fxc, но в настоящий момент компания решила перейти на открытый Clang. В качестве фронтенда в нем используются языки программирования C, C ++, Objective-C и Objective-C ++. Бэкендом служит LLVM. Благодаря модульному дизайну Clang, его компоненты можно интегрировать в другие платформы.

Причиной перехода на открытый код является более широкая доступность для разработчиков. Microsoft также надеется, что идеи извне помогут развить проект в целом. Опубликованный код можно найти на Github, а готовые проекты можно будет протестировать на инсайдерской сборке Windows 10 за номером 15007.