LLVM is a robust system, particularly well suited for developing new mid-level language-independent analyses and optimizations.

IntelコンパイラチームのAndrey Bokhanko氏は12月11日(米国時間)、LLVMのメーリングリストに「Update on OpenMP support in clang / llvm」というサブジェクトのメールを投函し、OpenMP 4の新機能のうちいくつかをコントリビュートしたこと、Texas InstrumentsがLLVM ClangにおけるOpenMP 4のサポートに興味を示していることを伝えた。LLVM ClangにおけるOpenMPのサポートはまだ本格的な状況には至っていないが関係者は高い興味を抱いている。

OpenMPは並列処理のために使われる技術。メモリを共有するタイプの並列処理で活用されている。並列処理を希望する部分にディレクティブを埋め込んでおくと、コンパイラがその部分を解釈して並列処理に展開するといった操作を実施する。OpenMPに対応していないコンパイラではそのままの処理としてコンパイルされるため、従来のコンパイル環境との互換性を確保したまま並列処理にも対応しやすいという特徴がある。

LLVM ClangはこれまでOpenMPに対応していなかった。このためGCCとのベンチマークでOpenMPに関する部分はGCCよりも低い性能しか計測されてこなかった。LLVM Clangはコンパイル速度が高速であることから採用を希望するプロジェクトも多く、OpenMP対応は長らくLLVM Clangにおける対応が求められてきた。IntelがLLVM ClangにおけるOpenMP対応に乗り出してから状況は変わりつつあり、この動きは今後も継続するとみられる。