JP2010003031A - コンパイル処理装置,ならびにアクセスパターン変更処理方法および処理プログラム - Google Patents
コンパイル処理装置,ならびにアクセスパターン変更処理方法および処理プログラム Download PDFInfo
- Publication number
- JP2010003031A JP2010003031A JP2008160024A JP2008160024A JP2010003031A JP 2010003031 A JP2010003031 A JP 2010003031A JP 2008160024 A JP2008160024 A JP 2008160024A JP 2008160024 A JP2008160024 A JP 2008160024A JP 2010003031 A JP2010003031 A JP 2010003031A
- Authority
- JP
- Japan
- Prior art keywords
- access
- access pattern
- processing
- elements
- array
- 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.)
- Granted
Links
Images
Landscapes
- Devices For Executing Special Programs (AREA)
Abstract
【解決手段】 コンパイル処理装置1のコンパイル処理手段11またはリンク手段12の処理の際に,アクセスパターン取得部13が,入力プログラムの解析結果からメモリアクセスする命令を解析し,構造体要素の配列上の配置,アクセス回数,アクセス順序を含むアクセスパターンを取得する。アクセスパターン変更部14が,アクセスパターンに基づいて,構造体の要素の配列上の配置を変更する。
【選択図】 図1
Description
または,アクセスパターンのアクセス回数に基づいて,アクセス回数の高い構造体要素を,前記配列の先頭の領域から優先して割り付ける。
第1の処理例では,図15(A)に示すプログラムを処理対象とする。
第2の処理例では,図3に示すプログラムを処理対象とする。
第3の処理例では,図15に示すプログラムを処理対象とする。
この命令が,前記の条件を満たす場合にのみ(ステップS12のYES),命令の各構造体が,別の構造体へのポインタを要素として持っているかを判断する(ステップS13)。
11 コンパイル処理手段
12 リンク手段
13 アクセスパターン取得部
14 アクセスパターン変更部
111 ソース解析部
113 最適化部
115 コード生成部
Claims (8)
- プログラムのコンパイル処理またはリンク処理またはこれらの処理を行うコンパイル処理装置において,
入力されたプログラムの解析結果から,メモリアクセスする命令のアクセス動作を解析し,命令に関連する構造体の要素の配列上の配置,アクセス回数およびアクセス順序を含むアクセスパターンを取得するアクセスパターン取得部と,
前記アクセスパターンに基づいて,前記構造体の要素の配列上の配置を変更するアクセスパターン変更部とを備える
ことを特徴とするコンパイル処理装置。 - 前記アクセスパターン変更部は,前記アクセスパターンのアクセス順序に基づいて,アクセスする構造体要素を,前記配列の先頭から連続する領域に割り付ける
ことを特徴とする請求項1記載のコンパイル処理装置。 - 前記アクセスパターン変更部は,前記アクセスパターンのアクセス回数に基づいて,アクセス回数の高い構造体の要素を,前記配列の先頭の領域から優先して割り付ける
ことを特徴とする請求項1または請求項2に記載のコンパイル処理装置。 - 前記アクセスパターン変更部は,前記構造体が関連する複数の関数内で,アクセスする構造体の要素に偏りがある場合に,該関数各々の処理内でアクセスする構造体の要素のみを前記配列の先頭から連続する領域に割り付け,該関数に関連する構造体の情報の同期処理を付加する
ことを特徴とする請求項1または請求項3のいずれか一項に記載のコンパイル処理装置。 - 前記アクセスパターン変更部は,前記構造体が関連するループ処理内で,アクセスする構造体の要素に偏りがある場合に,該ループ処理内でのみ,アクセス回数が多い構造体の要素を前記配列の先頭から連続する領域に割り付ける
ことを特徴とする請求項1または請求項3のいずれか一項に記載のコンパイル処理装置。 - 前記アクセスパターン取得部および前記アクセスパターン変更部は,前記コンパイル処理または前記リンク処理のいずれか一方の処理が実行されている間に起動および実行される
ことを特徴とする請求項1ないし請求項5のいずれか一項に記載のコンパイル処理装置。 - コンピュータが,プログラムのコンパイル処理またはリンク処理またはこれらの処理を行う間に実行するアクセスパターン変更処理方法であって,
入力されたプログラムの解析結果から,メモリアクセスする命令のアクセス動作を解析し,命令に関連する構造体の要素の配列上の配置,アクセス回数およびアクセス順序を含むアクセスパターンを取得するアクセスパターン取得処理過程と,
前記アクセスパターンに基づいて,前記構造体の要素の配列上の配置を変更するアクセスパターン変更処理過程とを備える
ことを特徴とするアクセスパターン変更処理方法。 - プログラムのコンパイル処理またはリンク処理またはこれらの処理を行うコンピュータを,
入力されたプログラムの解析結果から,メモリアクセスする命令のアクセス動作を解析し,命令に関連する構造体の要素の配列上の配置,アクセス回数およびアクセス順序を含むアクセスパターンを取得するアクセスパターン取得部と,
前記アクセスパターンに基づいて,前記構造体の要素の配列上の配置を変更するアクセスパターン変更部とを備えるコンパイル処理装置として機能させる
ことを特徴とするアクセスパターン変更処理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008160024A JP5146134B2 (ja) | 2008-06-19 | 2008-06-19 | コンパイル処理装置,ならびにアクセスパターン変更処理方法および処理プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008160024A JP5146134B2 (ja) | 2008-06-19 | 2008-06-19 | コンパイル処理装置,ならびにアクセスパターン変更処理方法および処理プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010003031A true JP2010003031A (ja) | 2010-01-07 |
JP5146134B2 JP5146134B2 (ja) | 2013-02-20 |
Family
ID=41584721
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008160024A Expired - Fee Related JP5146134B2 (ja) | 2008-06-19 | 2008-06-19 | コンパイル処理装置,ならびにアクセスパターン変更処理方法および処理プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5146134B2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016081135A (ja) * | 2014-10-10 | 2016-05-16 | 富士通株式会社 | 情報処理プログラム、情報処理装置、情報処理方法 |
JP2019219912A (ja) * | 2018-06-20 | 2019-12-26 | 富士通株式会社 | 情報処理装置、コンパイラプログラム及びコンパイル方法 |
FR3103590A1 (fr) * | 2019-11-27 | 2021-05-28 | Commissariat à l'Energie Atomique et aux Energies Alternatives | Procédé de construction d’une signature caractéristique des accès, par un microprocesseur, à une mémoire |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI394352B (zh) | 2009-07-16 | 2013-04-21 | Silicon Touch Tech Inc | 發電裝置 |
CN101997385B (zh) * | 2009-08-17 | 2013-07-31 | 点晶科技股份有限公司 | 发电装置 |
RU175195U1 (ru) * | 2017-08-23 | 2017-11-28 | Акционерное общество "Корпорация "Стратегические пункты управления" АО "Корпорация "СПУ - ЦКБ ТМ" | Электромашинный источник |
-
2008
- 2008-06-19 JP JP2008160024A patent/JP5146134B2/ja not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016081135A (ja) * | 2014-10-10 | 2016-05-16 | 富士通株式会社 | 情報処理プログラム、情報処理装置、情報処理方法 |
JP2019219912A (ja) * | 2018-06-20 | 2019-12-26 | 富士通株式会社 | 情報処理装置、コンパイラプログラム及びコンパイル方法 |
FR3103590A1 (fr) * | 2019-11-27 | 2021-05-28 | Commissariat à l'Energie Atomique et aux Energies Alternatives | Procédé de construction d’une signature caractéristique des accès, par un microprocesseur, à une mémoire |
EP3828695A1 (fr) | 2019-11-27 | 2021-06-02 | Commissariat à l'Energie Atomique et aux Energies Alternatives | Procédé de construction d'une signature caractéristique des accès, par un microprocesseur, à une mémoire |
Also Published As
Publication number | Publication date |
---|---|
JP5146134B2 (ja) | 2013-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5146134B2 (ja) | コンパイル処理装置,ならびにアクセスパターン変更処理方法および処理プログラム | |
US9946523B2 (en) | Multiple pass compiler instrumentation infrastructure | |
KR101645035B1 (ko) | 병렬 프로그래밍 조절 장치 및 방법 | |
KR101213275B1 (ko) | 무선 장치에서 사용할모놀리식(monolithic)이미지를 제공하기 위한시스템 및 방법 | |
US8266416B2 (en) | Dynamic reconfiguration supporting method, dynamic reconfiguration supporting apparatus, and dynamic reconfiguration system | |
US7480768B2 (en) | Apparatus, systems and methods to reduce access to shared data storage | |
KR101926464B1 (ko) | 멀티코어 프로세서에서 수행되는 프로그램의 컴파일 방법, 멀티코어 프로세서의 태스크 매핑 방법 및 태스크 스케줄링 방법 | |
US6360360B1 (en) | Object-oriented compiler mechanism for automatically selecting among multiple implementations of objects | |
CN103645888A (zh) | 一种自动构建操作系统的系统及方法 | |
US8621468B2 (en) | Multi core optimizations on a binary using static and run time analysis | |
US8769498B2 (en) | Warning of register and storage area assignment errors | |
JP5489884B2 (ja) | 命令実行装置、命令実行方法、及び命令実行プログラム | |
US9311065B2 (en) | Data splitting for multi-instantiated objects | |
KR20060035077A (ko) | 데이터 처리 장치 및 이를 이용한 레지스터 할당 방법 | |
US20120017070A1 (en) | Compile system, compile method, and storage medium storing compile program | |
KR101670916B1 (ko) | 실행 파일 생성 방법 및 그 방법을 이용하는 시스템 장치 | |
JP4039633B2 (ja) | 最適化コンパイラ、コンパイル方法、コンパイラプログラム、及び記録媒体 | |
JP6349837B2 (ja) | スケジューラ装置及びそのスケジューリング方法、演算処理システム、並びにコンピュータ・プログラム | |
JP5551868B2 (ja) | 実行ファイル作成装置 | |
JP5660386B2 (ja) | メモリ配置管理装置、メモリ配置管理方法、メモリ配置管理プログラム、およびプログラム作成システム | |
JP5208589B2 (ja) | コンパイル装置、コンパイラ、コンパイル方法 | |
US20050050523A1 (en) | Method to generate a formatted trace for an embedded device | |
JP7239827B2 (ja) | 情報処理装置及びコンパイラプログラム | |
JP2011180814A (ja) | コンパイラ装置、コンパイル方法及びプログラム | |
Gómez-Iglesias et al. | High-Level Approaches for Leveraging Deep-Memory Hierarchies on Modern Supercomputers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110315 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121002 |
|
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: 20121030 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121112 |
|
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: 20151207 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |