論文の概要: JLIR: A Julia-Native MLIR-Inspired Intermediate Representation with Automatic JACC Kernel Extraction
- arxiv url: http://arxiv.org/abs/2609.04585v1
- Date: Fri, 04 Sep 2026 00:35:54 GMT
- ステータス: 翻訳完了
- システム内更新日: 2026-09-07 18:15:23.869206
- Title: JLIR: A Julia-Native MLIR-Inspired Intermediate Representation with Automatic JACC Kernel Extraction
- Title(参考訳): JLIR: 自動JACCカーネル抽出によるユリアネイティブMLIRインスパイアされた中間表現
- Authors: Narasinga Rao Miniskar, Seyong Lee, Keita Teranishi, Jeffrey S Vetter,
- Abstract要約: JLIR(Julia-native Level Intermediate Representation)は、Julia-nativeの中間表現フレームワークである。
MLIRスタイルのマルチレベルな方言指向コンパイルの主な利点をJuliaエコシステムにもたらすと同時に、通常のJuliaコードとして使用することができる。
これには算術、制御フロー、関数、構造化ループ、メモリ操作のための組み込み方言が含まれている。
- 参考スコア(独自算出の注目度): 0.27998963147546135
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: The Multi-Level Intermediate Representation (MLIR) has made reusable compiler infrastructure practical for domain-specific computation. However, MLIR's strong compile-time type requirements and low-level (C++) extension model can be a poor match for high-level, dynamically specialized languages such as Julia. MLIR has several drawbacks for dynamic programming languages in terms of the type system and level of abstraction. It is thus extremely challenging for non-compiler or scientific computing users to introduce new programming abstractions and express algorithm implementations in a form that remains both natural and optimizable. As a result, library interfaces for linear algebra, mesh processing, partial differential equations, and related domains often sit outside the compiler optimization path. We present JLIR (Julia-native Level Intermediate Representation), a Julia-native intermediate representation framework that brings the main benefits of MLIR-style multi-level, dialect-oriented compilation into the Julia ecosystem while remaining usable as ordinary Julia code. JLIR represents Julia programs before low-level lowering, supports extensible operations and transformation passes through Julia's language mechanisms, and allows partially typed programs to remain transformable until concrete types are known. The framework includes built-in dialects for arithmetic, control flow, functions, structured loops, and memory operations, and it also includes a lightweight mechanism for adding new domain operations without modifying the core system. To demonstrate JLIR's capabilities, we applied it to automatic Julia for Accelerators (JACC) kernel generation.
- Abstract(参考訳): MLIR(Multi-Level Intermediate Representation)は、再利用可能なコンパイラ基盤をドメイン固有の計算に活用する。
しかし、MLIRの強力なコンパイル時型要求と低レベル(C++)拡張モデルは、Juliaのようなハイレベルで動的に特殊化された言語には適さない。
MLIRは、型システムと抽象化のレベルの観点から、動的プログラミング言語にいくつかの欠点がある。
したがって、非コンパイラや科学計算ユーザーにとって、新しいプログラミング抽象化を導入し、アルゴリズムの実装を自然かつ最適化可能な形で表現することは極めて困難である。
その結果、線形代数、メッシュ処理、偏微分方程式、および関連する領域のライブラリインタフェースは、しばしばコンパイラ最適化パスの外側に置かれる。
JLIR(Julia-native Level Intermediate Representation)は、JLIR(Julia-native Level Intermediate Representation)という、ユリア固有の中間表現フレームワークである。
JLIRは、低レベルの低下の前にJuliaプログラムを表現し、拡張可能な操作をサポートし、Juliaの言語メカニズムを通過する変換をサポートし、具体的な型が知られるまで部分的に型付けされたプログラムを変換可能である。
このフレームワークには算術、制御フロー、関数、構造化ループ、メモリ操作のための組み込み方言が含まれており、コアシステムを変更することなく新しいドメイン操作を追加するための軽量なメカニズムも含まれている。
JLIRの能力を示すために、我々はJACCカーネル生成のためのJuliaにそれを適用した。
関連論文リスト
- LLM Translation of Compiler Intermediate Representation [2.614444430580024]
本稿では,GIMPLE を LLVM IR に変換するための変換器モデル IRIS-14B を提案する。
我々の知る限りでは、IRIS-14BはIR-to-IR翻訳のために明示的に訓練された最初のモデルである。
現在入手可能な最先端のオープンモデルを含む、広く使われているモデルの精度は、13~1000億のパラメータから44ポイントまで向上している。
論文 参考訳(メタデータ) (2026-05-07T13:22:23Z) - A High-level Synthesis Toolchain for the Julia Language [1.7995266833057173]
本稿では,Juliaプログラミング言語で記述されたカーネルをSystemVerilogに自動コンパイルすることで,開発プロセスを統一するMLIRベースのコンパイラツールチェーンを提案する。
我々のツールチェーンは動的および静的なスケジューリングをサポートし、AXI4-Streamプロトコルと直接統合し、ベンダーに依存しないRTLを生成する。
このプロトタイプツールチェーンは、実際のFPGAデバイス上で100MHzで動作する一連の信号処理/数学的ベンチマークを合成することができる。
論文 参考訳(メタデータ) (2025-12-17T18:32:06Z) - Equality Saturation for Optimizing High-Level Julia IR [3.4492141860812233]
ドメインの専門家は、コンパイラが適用できない特定の最適化を認識しているかもしれません。
ドメインエキスパートがJuliaプログラミング言語のコードを最適化するための書き直しルールを表現できるシステムを開発した。
論文 参考訳(メタデータ) (2025-02-24T11:40:49Z) - LILO: Learning Interpretable Libraries by Compressing and Documenting Code [71.55208585024198]
LILOは、反復的に合成、圧縮、文書化を行う、ニューロシンボリックなフレームワークである。
LILOは、LLM誘導プログラム合成と、Stitchから自動化された最近のアルゴリズムの進歩を組み合わせたものである。
LILOのシンセサイザーが学習した抽象化を解釈し、デプロイするのを手助けすることで、AutoDocがパフォーマンスを向上させることが分かりました。
論文 参考訳(メタデータ) (2023-10-30T17:55:02Z) - QParallel: Explicit Parallelism for Programming Quantum Computers [62.10004571940546]
並列量子プログラミングのための言語拡張を提案する。
QParallelは、現在の量子プログラミング言語における並列性に関する曖昧さを取り除く。
並列化によって最も利益を上げるサブルーチンを識別し,並列領域の配置にプログラマを誘導するツールを提案する。
論文 参考訳(メタデータ) (2022-10-07T16:35:16Z) - Enabling Retargetable Optimizing Compilers for Quantum Accelerators via
a Multi-Level Intermediate Representation [78.8942067357231]
我々は、最適化され、再ターゲット可能で、事前コンパイルが可能なマルチレベル量子古典中間表現(IR)を提案する。
ゲートベースのOpenQASM 3言語全体をサポートし、共通量子プログラミングパターンのカスタム拡張と構文の改善を提供します。
私たちの研究は、通常のPythonのアプローチよりも1000倍高速で、スタンドアロンの量子言語コンパイラよりも5~10倍高速なコンパイル時間を実現しています。
論文 参考訳(メタデータ) (2021-09-01T17:29:47Z) - Instead of Rewriting Foreign Code for Machine Learning, Automatically
Synthesize Fast Gradients [6.09170287691728]
本稿では,LLVMコンパイラフレームワーク用の高性能自動微分(AD)コンパイラプラグインであるEnzymeを提案する。
EnzymeはLLVM中間表現(IR)をターゲットにした任意の言語で記述されたプログラムの勾配を合成する
MicrosoftのADBenchを含む機械学習に焦点を当てたベンチマークスイートでは、最適化されたIR上のADは、IR上のAD上の4.5倍の幾何平均スピードアップを達成する。
論文 参考訳(メタデータ) (2020-10-04T22:32:51Z) - MLJ: A Julia package for composable machine learning [0.8661220987937566]
MLJは、Juliaやその他の言語で記述された機械学習モデルと対話するための、オープンソースのソフトウェアパッケージである。
モデルの選択、チューニング、評価、構成、比較のためのツールとメタアルゴリズムを提供する。
論文 参考訳(メタデータ) (2020-07-23T22:46:33Z) - PolyDL: Polyhedral Optimizations for Creation of High Performance DL
primitives [55.79741270235602]
本稿では,Deep Learningプリミティブの高性能実装を自動的に生成するコンパイラアルゴリズムを提案する。
我々は多面体モデルを用いた新しいデータ再利用分析アルゴリズムを開発した。
また、このようなハイブリッドコンパイラとライブラリ使用の最小限のアプローチが、最先端のパフォーマンスをもたらすことを示す。
論文 参考訳(メタデータ) (2020-06-02T06:44:09Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。