JP4291306B2 - 数値計算ライブラリのチューニングパラメータ算出プログラム及び方法 - Google Patents
数値計算ライブラリのチューニングパラメータ算出プログラム及び方法 Download PDFInfo
- Publication number
- JP4291306B2 JP4291306B2 JP2005212469A JP2005212469A JP4291306B2 JP 4291306 B2 JP4291306 B2 JP 4291306B2 JP 2005212469 A JP2005212469 A JP 2005212469A JP 2005212469 A JP2005212469 A JP 2005212469A JP 4291306 B2 JP4291306 B2 JP 4291306B2
- Authority
- JP
- Japan
- Prior art keywords
- policy
- parameter
- calculation
- target
- library
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Complex Calculations (AREA)
- Devices For Executing Special Programs (AREA)
- Stored Programmes (AREA)
Description
図2は、本発明のポリシーマネージャ10の構成と、図1の計算機システムで行われる処理の全体的な流れを説明するブロック図である。
本実施形態では、ライブラリ格納部50のライブラリがソルバー51で構成されるものとし、ポリシー設定部111はライブラリ格納部50に格納された複数のソルバー51の中から、利用者が指定したソルバー51を読み込む。また、後述するように利用者の指定に応じてポリシー設定部111が目的評価関数52をライブラリ格納部50から読み込む。
min(TIME/TIME_BEST+ERROR/ERROR_BEST)
とすることで、後述するように、ポリシープリプロセッサ110に演算時間と演算誤差が最小となる目的評価関数52によってチューニングパラメータTUNEを演算させる。
次に、ポリシーマネージャ10で行われる処理について、図8のPAD図を参照しながら以下に説明する。
図10は、第2の実施形態を示し、前記第1実施形態の図9に示した最適なチューニングパラメータTUNEの演算を、図3のように横軸を速度性能、縦軸を計算誤差とした2次元座標空間に予想ラインLを設定してから求めるようにしたもので、その他の構成は前記第1実施形態と同様である。
図11、図12は、第3の実施形態を示し、前記第1実施形態のポリシーマネージャ10を、予め作成されたソースプログラム90を読み込んで、最適なチューニングパラメータTUNEをコンソール6に出力するようにしたもので、コンパイラ11の起動と、オブジェクト12の起動は、利用者がコンソール6から指令する。その他の構成は前記第1実施形態と同様である。すなわち、前記第1実施形態に示した3つの機能のうち、第2の機能のみを備えた場合を示している。
図13は、第4の実施形態を示し、前記第1実施形態のネットワーク8に、ユーザ計算機1から依頼された計算の実行を提供する複数のユーティリティ計算機30、31と、ユーティリティ計算機30、31を利用したユーザ計算機1に関する課金情報を管理する課金サーバ140を接続し、ユーザ計算機1はコンパイラ11で生成したオブジェクト12の実行を、ユーティリティ計算機30、31の何れかに依頼するものである。ユーザ計算機1及び実績・ライブラリサーバ20は前記第1実施形態と同様に構成される。
min(TIME/TIME_BEST+ERROR/ERROR_BEST+COST/COST_BEST)
と表すことができ、選択したソルバー51を実行する際に、実行時間と計算誤差及び利用料金(COST)を最小とするチューニングパラメータTUNEを選択することが可能となる。このとき、図3に示したグラフは3次元グラフとなる。このとき、ユーティリティ計算機30、31毎に利用料金が異なる場合には、各ユーティリティ計算機毎に利用料金を推定して最も安いものを選択することができる。
10 ポリシーマネージャ
11 コンパイラ
12 オブジェクト12
20 実績・ライブラリサーバ
41 実績データベース
50 ライブラリ格納部
90 ソースプログラム
110 ポリシープリプロセッサ
111 ポリシー設定部
112 パラメータ候補出力部
Claims (15)
- 数値計算ライブラリを実行するための最適なチューニングパラメータを、前記数値計算ライブラリの実行履歴、及び、予め設定した目的評価関数に基づいて算出するプログラムであって、
前記実行履歴は、前記数値計算ライブラリが過去に実行した数値計算における速度性能を示す演算時間と演算精度を示す演算誤差との関係を蓄積した実績データであって、
前記目的評価関数は、前記演算誤差と前記演算時間とが最小となる解を算出する関数であって、
前記数値計算ライブラリを読み込む手順と、
前記目的評価関数を読み込む手順と、
前記数値計算ライブラリに対する速度性能及び演算精度に関するユーザのポリシーを複数のポリシーパラメータとして設定する手順と、
予め設定した数値計算ライブラリの実行履歴から前記数値計算ライブラリに関する実行履歴を読み込む手順と、
前記ポリシーパラメータを満足する範囲で、前記実行履歴に基づいて、前記速度性能と演算精度の相反する要素を最適化する目的評価関数により当該数値計算ライブラリのチューニングパラメータを算出する手順と、
前記目的評価関数に基づいて算出されたチューニングパラメータを出力する手順と、
を計算機に機能させることを特徴とする数値計算ライブラリのチューニングパラメータ算出プログラム。 - 前記ユーザのポリシーを複数のポリシーパラメータとして設定する手順は、
前記速度性能の目標とする値を示す第1の目標ポリシーパラメータと、前記演算精度の目標とする値を示す第2の目標ポリシーパラメータとを設定し、
前記チューニングパラメータを算出する手順は、
前記目的評価関数が前記実行履歴の中から前記第1の目標ポリシーパラメータと第2の目標ポリシーパラメータに近いチューニングパラメータを求めることを特徴とする請求項1に記載の数値計算ライブラリのチューニングパラメータ算出プログラム。 - 前記ユーザのポリシーを複数のポリシーパラメータとして設定する手順は、
前記速度性能に最低限必要な値を示す第1の必須ポリシーパラメータと、前記速度性能の目標とする値を示す第1の目標ポリシーパラメータと、前記演算精度に最低限必要な値を示す第2の必須ポリシーパラメータと、前記演算精度の目標とする値を示す第2の目標ポリシーパラメータとを設定し、
前記チューニングパラメータを算出する手順は、
前記目的評価関数が前記実行履歴の中から前記第1の必須ポリシーパラメータと第2の必須ポリシーパラメータを満たし、且つ、第1の目標ポリシーパラメータと第2の目標ポリシーパラメータに近いチューニングパラメータを求めることを特徴とする請求項1に記載の数値計算ライブラリのチューニングパラメータ算出プログラム。 - 前記ユーザのポリシーを複数のポリシーパラメータとして設定する手順は、
前記実行履歴に含まれる項目と、チューニングパラメータとの対応を設定する手順を含むことを特徴とする請求項1に記載の数値計算ライブラリのチューニングパラメータ算出プログラム。 - 前記目的評価関数に基づいて算出されたチューニングパラメータを出力する手順は、
前記チューニングパラメータと、当該チューニングパラメータに対応する実行履歴とを計算機の表示装置に出力することを特徴とする請求項1に記載の数値計算ライブラリのチューニングパラメータ算出プログラム。 - 前記チューニングパラメータを算出する手順は、
前記速度性能と演算精度の2次元座標において、複数の実行履歴に含まれる速度性能と計算誤差から当該実行履歴の特性を求め、前記第1の目標ポリシーパラメータと第2の目標ポリシーパラメータの交点から前記特性までの距離が最小となる前記特性上の点を最適なチューニングパラメータとして算出することを特徴とする請求項2または請求項3に記載の数値計算ライブラリのチューニングパラメータ算出プログラム。 - 前記数値計算ライブラリを読み込む手順は、
前記数値計算ライブラリの入力パラメータを設定する手順を含み、
前記数値計算ライブラリに関する実行履歴を読み込む手順は、
前記実行履歴の中から前記入力パラメータが一致する実行履歴を抽出して読み込むことを特徴する請求項1に記載の数値計算ライブラリのチューニングパラメータ算出プログラム。 - 前記ユーザのポリシーを複数のポリシーパラメータとして設定する手順は、
前記速度性能の目標とする値を示す第1の目標ポリシーパラメータと、前記演算精度の目標とする値を示す第2の目標ポリシーパラメータと、数値計算ライブラリの実行に使用する計算機の利用料金について目標とする値を示す第3の目標ポリシーパラメータとを設定し、
前記チューニングパラメータを算出する手順は、
前記目的評価関数が前記実行履歴の中から前記第1の目標ポリシーパラメータと第2の目標ポリシーパラメータ及び第3の目標ポリシーパラメータに近いチューニングパラメータを求めることを特徴とする請求項1に記載の数値計算ライブラリのチューニングパラメータ算出プログラム。 - 前記ユーザのポリシーを複数のポリシーパラメータとして設定する手順は、
前記速度性能に最低限必要な値を示す第1の必須ポリシーパラメータと、前記速度性能の目標とする値を示す第1の目標ポリシーパラメータと、前記演算精度に最低限必要な値を示す第2の必須ポリシーパラメータと、前記演算精度の目標とする値を示す第2の目標ポリシーパラメータと、数値計算ライブラリの実行に使用する計算機の利用料金について目標とする値を示す第3の目標ポリシーパラメータと、前記利用料金について許容可能な 第3の必須ポリシーパラメータとを設定し、
前記チューニングパラメータを算出する手順は、
前記目的評価関数が前記実行履歴の中から前記第1の必須ポリシーパラメータと第2の必須ポリシーパラメータ及び第3の必須ポリシーパラメータを満たし、且つ、第1の目標ポリシーパラメータと第2の目標ポリシーパラメータ及び第3の目標ポリシーパラメータに近いチューニングパラメータを求めることを特徴とする請求項1に記載の数値計算ライブラリのチューニングパラメータ算出プログラム。 - 前記ユーザのポリシーを複数のポリシーパラメータとして設定する手順は、
前記速度性能の目標とする値を示す第1の目標ポリシーパラメータと、前記演算精度の目標とする値を示す第2の目標ポリシーパラメータと、数値計算ライブラリの実行に使用する計算機のリソースについて目標とする値を示す第3の目標ポリシーパラメータとを設定し、
前記チューニングパラメータを算出する手順は、
前記目的評価関数が前記実行履歴の中から前記第1の目標ポリシーパラメータと第2の目標ポリシーパラメータ及び第3の目標ポリシーパラメータに近いチューニングパラメータを求めることを特徴とする請求項1に記載の数値計算ライブラリのチューニングパラメータ算出プログラム。 - 前記ユーザのポリシーを複数のポリシーパラメータとして設定する手順は、
前記速度性能に最低限必要な値を示す第1の必須ポリシーパラメータと、前記速度性能の目標とする値を示す第1の目標ポリシーパラメータと、前記演算精度に最低限必要な値を示す第2の必須ポリシーパラメータと、前記演算精度の目標とする値を示す第2の目標ポリシーパラメータと、数値計算ライブラリの実行に使用する計算機のリソースについて目標とする値を示す第3の目標ポリシーパラメータと、前記リソースについて許容可能な 第3の必須ポリシーパラメータとを設定し、
前記チューニングパラメータを算出する手順は、
前記目的評価関数が前記実行履歴の中から前記第1の必須ポリシーパラメータと第2の必須ポリシーパラメータ及び第3の必須ポリシーパラメータを満たし、且つ、第1の目標ポリシーパラメータと第2の目標ポリシーパラメータ及び第3の目標ポリシーパラメータに近いチューニングパラメータを求めることを特徴とする請求項1に記載の数値計算ライブラリのチューニングパラメータ算出プログラム。 - 前記ユーザのポリシーを複数のポリシーパラメータとして設定する手順は、
予め設定したポリシーパラメータの入力を受け付けるインターフェースを含むことを特徴とする請求項1に記載の数値計算ライブラリのチューニングパラメータ算出プログラム。 - 数値計算ライブラリを実行するための最適なチューニングパラメータを、前記数値計算ライブラリの実行履歴、及び、予め設定した目的評価関数に基づいて計算機に算出させる方法であって、
前記実行履歴は、前記数値計算ライブラリが過去に実行した数値計算における速度性能を示す演算時間と演算精度を示す演算誤差との関係を蓄積した実績データであって、
前記目的評価関数は、前記演算誤差と前記演算時間とが最小となる解を算出する関数であって、
前記数値計算ライブラリを前記計算機に読み込む処理と、
前記目的評価関数を前記計算機に読み込む処理と、
前記数値計算ライブラリに対する速度性能及び演算精度に関するユーザのポリシーを複数のポリシーパラメータとして受け付ける処理と、
予め設定した数値計算ライブラリの実行履歴から前記数値計算ライブラリに関する実行履歴を前記計算機に読み込む処理と、
前記ポリシーパラメータを満足する範囲で、前記実行履歴に基づいて前記速度性能と演算精度の相反する要素を最適化する前記目的評価関数により当該数値計算ライブラリのチューニングパラメータを前記計算機が算出する処理と、
前記目的評価関数に基づいて算出されたチューニングパラメータを出力する処理と、
を含むことを特徴とする数値計算ライブラリのチューニングパラメータ算出方法。 - 前記ユーザのポリシーを複数のポリシーパラメータとして受け付ける処理は、
前記速度性能の目標とする値を示す第1の目標ポリシーパラメータと、前記演算精度の目標とする値を示す第2の目標ポリシーパラメータとを受け付けて、
前記チューニングパラメータを前記計算機が算出する処理は、
前記目的評価関数が前記実行履歴の中から前記第1の目標ポリシーパラメータと第2の目標ポリシーパラメータに近いチューニングパラメータを求めることを特徴とする請求項13に記載の数値計算ライブラリのチューニングパラメータ算出方法。 - 前記ユーザのポリシーを複数のポリシーパラメータとして受け付ける処理は、
前記速度性能に最低限必要な値を示す第1の必須ポリシーパラメータと、前記速度性能の目標とする値を示す第1の目標ポリシーパラメータと、前記演算精度に最低限必要な値を示す第2の必須ポリシーパラメータと、前記演算精度の目標とする値を示す第2の目標ポリシーパラメータとを受け付けて、
前記チューニングパラメータを前記計算機が算出する処理は、
前記目的評価関数が前記実行履歴の中から前記第1の必須ポリシーパラメータと第2の必須ポリシーパラメータを満たし、且つ、第1の目標ポリシーパラメータと第2の目標ポリシーパラメータに近いチューニングパラメータを求めることを特徴とする請求項13に記載の数値計算ライブラリのチューニングパラメータ算出方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005212469A JP4291306B2 (ja) | 2005-07-22 | 2005-07-22 | 数値計算ライブラリのチューニングパラメータ算出プログラム及び方法 |
US11/480,393 US7739083B2 (en) | 2005-07-22 | 2006-07-05 | Program and/or method for calculating tuning parameters for numerical computation library |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005212469A JP4291306B2 (ja) | 2005-07-22 | 2005-07-22 | 数値計算ライブラリのチューニングパラメータ算出プログラム及び方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007034375A JP2007034375A (ja) | 2007-02-08 |
JP4291306B2 true JP4291306B2 (ja) | 2009-07-08 |
Family
ID=37680114
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005212469A Expired - Fee Related JP4291306B2 (ja) | 2005-07-22 | 2005-07-22 | 数値計算ライブラリのチューニングパラメータ算出プログラム及び方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7739083B2 (ja) |
JP (1) | JP4291306B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011028523A (ja) * | 2009-07-24 | 2011-02-10 | Panasonic Corp | プログラム変換装置およびプログラム変換システム |
JP5586417B2 (ja) | 2010-10-25 | 2014-09-10 | 株式会社日立製作所 | ストリームデータ処理における性能保証方法および装置 |
JP5872324B2 (ja) * | 2012-02-28 | 2016-03-01 | 株式会社日立製作所 | メッシュ生成装置 |
US10108414B2 (en) | 2014-10-09 | 2018-10-23 | International Business Machines Corporation | Maintaining the integrity of process conventions within an ALM framework |
EP3423865B1 (en) * | 2016-03-01 | 2024-03-06 | Brightway Vision Ltd. | Gated imaging apparatus, system and method |
GB2565593B (en) * | 2017-08-18 | 2021-03-17 | Centrica Hive Ltd | Automated control method and apparatus |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6253113B1 (en) * | 1998-08-20 | 2001-06-26 | Honeywell International Inc | Controllers that determine optimal tuning parameters for use in process control systems and methods of operating the same |
US7191130B1 (en) * | 2002-09-27 | 2007-03-13 | Nuance Communications | Method and system for automatically optimizing recognition configuration parameters for speech recognition systems |
JP2004178372A (ja) | 2002-11-28 | 2004-06-24 | Dainippon Printing Co Ltd | 動作パラメータの自動チューニング装置および自動セットアップ装置 |
US20050096950A1 (en) * | 2003-10-29 | 2005-05-05 | Caplan Scott M. | Method and apparatus for creating and evaluating strategies |
US7079145B2 (en) * | 2004-01-22 | 2006-07-18 | Ageia Technologies, Inc. | Method and program solving LCPs for rigid body dynamics |
JP4680546B2 (ja) | 2004-07-21 | 2011-05-11 | 株式会社日立製作所 | 実行条件設定支援方法および装置 |
-
2005
- 2005-07-22 JP JP2005212469A patent/JP4291306B2/ja not_active Expired - Fee Related
-
2006
- 2006-07-05 US US11/480,393 patent/US7739083B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20070021849A1 (en) | 2007-01-25 |
US7739083B2 (en) | 2010-06-15 |
JP2007034375A (ja) | 2007-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109766497B (zh) | 排行榜生成方法及装置、存储介质、电子设备 | |
US9772890B2 (en) | Sophisticated run-time system for graph processing | |
US10402300B2 (en) | System, controller, method, and program for executing simulation jobs | |
JP4291306B2 (ja) | 数値計算ライブラリのチューニングパラメータ算出プログラム及び方法 | |
CN110795455A (zh) | 依赖关系解析方法、电子装置、计算机设备及可读存储介质 | |
CN106104468B (zh) | 动态地确定数据处理应用程序的模式 | |
CN107092701A (zh) | 一种多维数据模型的数据处理方法及装置 | |
US20160117199A1 (en) | Computing system with thermal mechanism and method of operation thereof | |
CN115981980A (zh) | 系统性能测试方法、装置、设备、介质和程序产品 | |
CN115237920A (zh) | 面向负载的数据索引推荐方法及其装置、存储介质 | |
CN107209763B (zh) | 指定和应用数据的规则 | |
US20060175393A1 (en) | Analysis technique of computer system | |
CN113190576A (zh) | 数据处理方法、装置、计算机设备和可读存储介质 | |
JP2005148901A (ja) | ジョブスケジューリングシステム | |
Cao et al. | Revisiting Query Performance in GPU Database Systems | |
JP4870956B2 (ja) | 組み込み用プログラム生成方法、組み込み用プログラム開発システム、及び情報テーブル部 | |
CN113656292B (zh) | 一种多维度跨时空基础软件性能瓶颈检测方法 | |
Chung et al. | A framework for automated performance bottleneck detection | |
KR101621490B1 (ko) | 쿼리 실행 장치 및 방법, 그리고 그를 이용한 데이터 처리 시스템 | |
CN110059328B (zh) | 结构分析模拟方法、信息处理设备和计算机可读存储介质 | |
EP2990960A1 (en) | Data retrieval via a telecommunication network | |
WO2007072567A1 (ja) | 並列処理支援装置 | |
CN114661301B (zh) | 图形处理单元编译方法、装置、编译加速库和存储介质 | |
JP5190899B2 (ja) | 情報処理装置、設定ファイル生成方法、および設定ファイル生成プログラム | |
CN118277224B (zh) | 构建能效模型的方法、计算机设备、存储介质及程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080116 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20081127 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081202 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090202 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090331 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090402 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120410 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120410 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130410 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130410 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140410 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |