ATSA
ATソフトウェア建築論
AT Software Architecture
性能可搬性を達成するソフトウェアの構造・設計原理を研究する分野です。 ソフトウェア自動チューニングを含み、ソフトウェアのモデル化や、自動チューニングに必要な最適化理論を研究対象とします。
Auto-tuning Engineering
Auto-tuning Engineering — 性能可搬性を支えるソフトウェア・工学・計算の体系
自動チューニング機能付き数値計算ソフトウェア、ソフトウェア自動チューニング、 自動チューニングソフトウェア工学を包括する研究分野として、 自動チューニング工学(Auto-tuning Engineering, ATE)を提案しています。
Original Concept
2008年の原提案では、それまで進めてきた自動チューニング関連研究を、個別技術ではなく一つの工学分野として整理しました。
自動チューニング工学は、性能可搬性を達成するソフトウェアの構造、開発方法論、そして実際の計算・応用を横断して扱う考え方です。 単一の最適化手法だけでなく、ソフトウェアのモデル化、最適化理論、開発支援、実行環境への適応、数値計算ライブラリやアプリケーションまでを一つの体系として捉えます。
原提案では、この体系を AT Software Architecture(ATSA)、 AT Software Engineering(ATSE)、 AT Computing(ATC) の3本柱で構成しています。
Three Pillars
ATEは「どのようなソフトウェア構造にするか」「どのように開発するか」「どの計算へ適用するか」を分離せず、相互に関連する研究対象として扱います。
ATSA
AT Software Architecture
性能可搬性を達成するソフトウェアの構造・設計原理を研究する分野です。 ソフトウェア自動チューニングを含み、ソフトウェアのモデル化や、自動チューニングに必要な最適化理論を研究対象とします。
ATSE
AT Software Engineering
性能可搬性を達成するソフトウェアを開発するための方法論とツールを研究する分野です。 自動チューニングソフトウェア工学、FIBER、ABCLibScript等の研究を含みます。
ATC
AT Computing
性能可搬性を達成する計算、アプリケーション、数値計算ライブラリを研究する分野です。 自動チューニング機能付き数値計算ライブラリABCLibや、自動チューニング機能を備えた数値シミュレーション等を含みます。
Core Technologies
原提案で言及した主要技術は、ソフトウェア構造、開発方法論、計算ライブラリをつなぐ役割を持っています。
Evolution
ATEで中心となった「性能可搬性」「自動最適化」「最適化知識のソフトウェア化」という考え方は、現在の生成AI・AIエージェントを用いたHPCコード生成・性能最適化研究へ発展しています。
従来は、人間が最適化候補や探索方法を設計し、自動チューニングシステムが性能測定に基づいて最適化していました。 現在は、LLMやAIエージェントが要求理解、コード生成、コンパイル、実行、性能測定、解析、修正までを担う方向へ研究対象を拡張しています。