Exo-language
伝統的なコンパイラは、あるハードウェア上で動作するようにプログラムを自動的に最適化するように作られており、多くのプログラマーにとって素晴らしい。だが、パフォーマンス・エンジニアにとっては、コンパイラは助けになるのと同じくらい邪魔になることも多い。コンパイラによる最適化は完全に自動で行われるため、間違った処理をした場合、修正する良い手段が用意されていない。
そして2022年現在作られている最高性能のハードウェア(GoogleのTPU、AppleのNeural Engine、NvidiaのTensor Coreなど)は、科学計算や機械学習の主要カーネル(例えば、基本線形代数サブルーチン(BLAS)ライブラリなど)を駆動する。これらのチップは、設計に何百人ものエンジニアを要するため、アプリケーション開発者にとっては、これらのカーネルが可能にする程度の性能しか発揮しない。
エキソコンパイルでは、パフォーマンス・エンジニアに最適化の手段を提供する。
どの最適化を、いつ、どのような順番で適用するかを選択する責任は、コンパイラからパフォーマンス・エンジニアに委ねられる。
Exo を使って、インテルの手作業で最適化された数学カーネル・ライブラリと同等の性能を持つコードを迅速に記述できることを示された。また、カリフォルニア大学バークレー校は、オープンソースの機械学習アクセラレータであるGEMMINI向けのコードを作成するための共同作業を継続している。