PALLAS とは

PALLASは、並列アプリケーション、ライブラリ、言語、アルゴリズム、システムの略です。これはカリフォルニア大学バークレー校の電気工学およびコンピュータサイエンス学科の並列コンピューティング研究室の研究グループであり、Kurt Keutzer教授が率いています。このグループは、新世代の高度に並列なマイクロプロセッサのためのアプリケーションの生産的な開発が、私たちの時間の卓越したプログラミング課題であると考えています。その目的は、並列プログラミングの専門家だけでなく、ドメインの専門家による効率的な並列アプリケーションの生産的な開発を可能にすることです。
このグループは、並列プログラムの設計の鍵はソフトウェアアーキテクチャであり、効率的な実装の鍵はフレームワークであるという仮説をもとに研究を行っています。そのアプローチでは、ソフトウェアアーキテクチャとそれに対応するフレームワークの両方の基礎は、設計パターンとパターン言語です。市民の建築から借用された用語「デザインパターン」は、ドメイン専門家が学ぶ定期的な設計上の問題に対する解決策を意味します。パターン言語は、デザインを生成するためにデザインパターンのコレクションをナビゲートする組織化された方法です。
私たちのパターン・ランゲージ(OPL)の計算要素は、主に13のモチーフから作成された一連の計算パターンから構築されています。これらは、基本的なソフトウェアビルディングブロックとみなされます。これらのビルディングブロックは、パイプとフィルタなどの一般的なソフトウェアアーキテクチャスタイルから引き出されたOPLの構造パターンを使用して作成されます。ソフトウェアアーキテクチャは、計算パターンと構造パターンの階層構成であり、後で下位レベルの設計パターンを使用して改良されます。