JP2012242855A - データ処理装置及びデータ処理方法 - Google Patents
データ処理装置及びデータ処理方法 Download PDFInfo
- Publication number
- JP2012242855A JP2012242855A JP2011108733A JP2011108733A JP2012242855A JP 2012242855 A JP2012242855 A JP 2012242855A JP 2011108733 A JP2011108733 A JP 2011108733A JP 2011108733 A JP2011108733 A JP 2011108733A JP 2012242855 A JP2012242855 A JP 2012242855A
- Authority
- JP
- Japan
- Prior art keywords
- data
- data processing
- processing
- processors
- parallel
- 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
- 238000003672 processing method Methods 0.000 title claims description 6
- 238000006243 chemical reaction Methods 0.000 claims description 33
- 238000000034 method Methods 0.000 claims description 28
- MHABMANUFPZXEB-UHFFFAOYSA-N O-demethyl-aloesaponarin I Natural products O=C1C2=CC=CC(O)=C2C(=O)C2=C1C=C(O)C(C(O)=O)=C2C MHABMANUFPZXEB-UHFFFAOYSA-N 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000007906 compression Methods 0.000 description 8
- 230000006835 compression Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000008707 rearrangement Effects 0.000 description 3
- 230000006837 decompression Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0842—Multiuser, multiprocessor or multiprocessing cache systems for multiprocessing or multitasking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/0284—Multiple user address space allocation, e.g. using different base addresses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0877—Cache access modes
- G06F12/0886—Variable-length word access
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/34—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
- G06F9/345—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes of multiple operands or results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0875—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/45—Caching of specific data in cache memory
- G06F2212/455—Image or video data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Image Processing (AREA)
- Multi Processors (AREA)
Abstract
【解決手段】 データ処理装置が、第一のデータ処理を複数のプロセッサに並列処理させ、並列処理されたデータを記憶部に格納する際に、複数のプロセッサのデータキャッシュのサイズに基づいて記憶部のアドレスを変換して格納する。そして、記憶部に格納されたデータを読み出し、読み出したデータに対して第二のデータ処理を行う。
【選択図】 図2
Description
第一のデータ処理を複数のプロセッサに並列処理させる第一のデータ処理手段と、
前記第一のデータ処理手段で並列処理されたデータを記憶手段に格納する際に、前記複数のプロセッサのデータキャッシュのサイズに基づいて前記記憶手段に対するアドレスを変換するアドレス変換手段と、
前記記憶手段に格納されたデータを読み出し、読み出したデータに対して第二のデータ処理を行う第二のデータ処理手段と、
を有することを特徴とする。
図1は、第一の実施形態におけるデータ処理システムの構成例を示す図である。第一のデータ処理部102は、複数のプロセッサによって構成され、各プロセッサ上のソフトウェアによってデータ処理が実行される。第一のデータ処理領域分割部101は、第一のデータ処理部102とは別のプロセッサ等によって構成され、第一のデータ処理部102のマルチプロセッサに並列処理させるための領域分割に関する設定を行う。第一のデータ処理部102で実行される第一のデータ処理301(図3参照)は画像データの2値化処理とするが、本発明はこれに限定されるものではなく、二次元のデータを取り扱う処理(フィルタ処理、変倍処理、変換処理等)であっても構わない。
・オフセット901:L×N×QUONTIENT((y−1)、M)
・オフセット902:L×(n−1)
・オフセット903:Z×MOD((y−1)、M)
このように、オフセットは3つからなる。オフセット901はキャッシュラインサイズL×プロセッサ数Nが何個あるかを示している。キャッシュラインサイズにはM個の最小幅Zからなるため、ライン番号yをMで除算することによりキャッシュラインサイズL×プロセッサ数Nが何個あるかを求めることができる。オフセット902はプロセッサ数によるオフセットを示している。キャッシュラインサイズLと注目しているプロセッサnとの乗算により求めることができる。そして、オフセット903はライン数yの端数によるオフセットを示している。処理の最小幅Zとライン数yのMでの除算の余りとを乗算することで求めることができる。
次に、図面を参照しながら本発明に係る第二の実施形態を詳細に説明する。尚、第二の実施形態におけるデータ処理システムの構成は図1に示す第一の実施形態と同様であり、その説明は省略する。
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
Claims (7)
- 第一のデータ処理を複数のプロセッサが並列処理して記憶手段に格納し、前記記憶手段に格納されたデータに対して第二のデータ処理を行うデータ処理装置であって、
第一のデータ処理を複数のプロセッサに並列処理させる第一のデータ処理手段と、
前記第一のデータ処理手段で並列処理されたデータを記憶手段に格納する際に、前記複数のプロセッサのデータキャッシュのサイズに基づいて前記記憶手段に対するアドレスを変換するアドレス変換手段と、
前記記憶手段に格納されたデータを読み出し、読み出したデータに対して第二のデータ処理を行う第二のデータ処理手段と、
を有することを特徴とするデータ処理装置。 - 前記複数のプロセッサの数と前記データキャッシュのサイズとから各プロセッサに並列処理させるデータの領域の幅を設定する設定手段を更に有し、
前記アドレス変換手段は、前記設定手段で設定された領域の幅に基づいて前記記憶手段に対するアドレスを変換することを特徴とする請求項1に記載のデータ処理装置。 - 前記第二のデータ処理手段は、前記記憶手段に格納されたデータをラスタ順に読み出すことを特徴とする請求項1又は2に記載のデータ処理装置。
- 前記第二のデータ処理手段は、二次元のデータを矩形単位で前記記憶手段から読み出すことを特徴とする請求項1又は2に記載のデータ処理装置。
- 二次元の配列の入力データについて、第一のサイズごとに並列処理する複数の処理手段と、
前記複数の処理手段のそれぞれの処理によって得られる結果を、前記処理手段のキャッシュラインのサイズごとに、前記複数の処理手段について順番に記憶する記憶手段と、
前記記憶手段に記憶されている結果を第二のサイズごとに読み出して転送する転送手段と、
を有することを特徴とするデータ処理装置。 - 第一のデータ処理を複数のプロセッサが並列処理して記憶手段に格納し、前記記憶手段に格納されたデータに対して第二のデータ処理を行うデータ処理装置で実行されるデータ処理方法であって、
第一のデータ処理手段が、第一のデータ処理を複数のプロセッサに並列処理させる第一のデータ処理工程と、
アドレス変換手段が、前記第一のデータ処理工程において並列処理されたデータを記憶手段に格納する際に、前記複数のプロセッサのデータキャッシュのサイズに基づいて前記記憶手段に対するアドレスを変換するアドレス変換工程と、
第二のデータ処理手段が、前記記憶手段に格納されたデータを読み出し、読み出したデータに対して第二のデータ処理を行う第二のデータ処理工程と、
を有することを特徴とするデータ処理方法。 - 複数の処理手段と当該複数の処理手段で共有する記憶手段とを有するデータ処理装置によるデータ処理方法であって、
二次元の配列の入力データについて、前記複数の処理手段によって第一のサイズごとに並列処理する処理工程と、
前記処理工程によって得られる結果を、前記処理手段のキャッシュラインのサイズごとに、前記複数の処理手段について順番に前記記憶手段に記憶させる記憶工程と、
前記記憶手段に記憶されている結果を第二のサイズごとに読み出して転送する転送工程と、
を有することを特徴とするデータ処理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011108733A JP5706754B2 (ja) | 2011-05-13 | 2011-05-13 | データ処理装置及びデータ処理方法 |
US13/443,465 US9256439B2 (en) | 2011-05-13 | 2012-04-10 | Parallel processing of two-dimensional data, storage of plural data of the processing results in a cache line and transfer of the data to a memory as in the cache line |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011108733A JP5706754B2 (ja) | 2011-05-13 | 2011-05-13 | データ処理装置及びデータ処理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012242855A true JP2012242855A (ja) | 2012-12-10 |
JP5706754B2 JP5706754B2 (ja) | 2015-04-22 |
Family
ID=47142687
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011108733A Active JP5706754B2 (ja) | 2011-05-13 | 2011-05-13 | データ処理装置及びデータ処理方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9256439B2 (ja) |
JP (1) | JP5706754B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016063359A1 (ja) * | 2014-10-21 | 2016-04-28 | 株式会社東京機械製作所 | 画像処理装置 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103914401B (zh) * | 2013-01-06 | 2017-05-10 | 北京忆恒创源科技有限公司 | 具有多处理器的存储设备 |
US10761819B2 (en) | 2016-02-23 | 2020-09-01 | Intel Corporation | Optimizing structures to fit into a complete cache line |
US11314674B2 (en) | 2020-02-14 | 2022-04-26 | Google Llc | Direct memory access architecture with multi-level multi-striding |
WO2022139646A1 (en) * | 2020-12-23 | 2022-06-30 | Imsys Ab | A novel data processing architecture and related procedures and hardware improvements |
US11868244B2 (en) | 2022-01-10 | 2024-01-09 | Qualcomm Incorporated | Priority-based cache-line fitting in compressed memory systems of processor-based systems |
US11829292B1 (en) * | 2022-01-10 | 2023-11-28 | Qualcomm Incorporated | Priority-based cache-line fitting in compressed memory systems of processor-based systems |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030110360A1 (en) * | 2001-12-10 | 2003-06-12 | Mitsubishi Denki Kabushiki Kaisha | Cache device controlling a state of a corresponding cache memory according to a predetermined protocol |
JP2004252728A (ja) * | 2003-02-20 | 2004-09-09 | Univ Waseda | コンパイル方法、コンパイラ、コンパイル装置、プログラムコード作成方法、プログラム、キャッシュ最適利用演算方法、およびキャッシュ最適利用演算装置 |
US20050132144A1 (en) * | 2003-12-12 | 2005-06-16 | Illikkal Ramesh G. | Striping across multiple cache lines to prevent false sharing |
WO2008155844A1 (ja) * | 2007-06-20 | 2008-12-24 | Fujitsu Limited | 情報処理装置およびキャッシュ制御方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08185359A (ja) | 1994-10-31 | 1996-07-16 | Toshiba Corp | メモリサブシステム |
JP2009151526A (ja) * | 2007-12-20 | 2009-07-09 | Elpida Memory Inc | 半導体記憶装置及びその半導体記憶装置を用いたシステム |
JP2010073210A (ja) | 2008-09-17 | 2010-04-02 | Toshiba Corp | 画像処理装置 |
-
2011
- 2011-05-13 JP JP2011108733A patent/JP5706754B2/ja active Active
-
2012
- 2012-04-10 US US13/443,465 patent/US9256439B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030110360A1 (en) * | 2001-12-10 | 2003-06-12 | Mitsubishi Denki Kabushiki Kaisha | Cache device controlling a state of a corresponding cache memory according to a predetermined protocol |
JP2003177962A (ja) * | 2001-12-10 | 2003-06-27 | Mitsubishi Electric Corp | キャッシュ装置および方法 |
JP2004252728A (ja) * | 2003-02-20 | 2004-09-09 | Univ Waseda | コンパイル方法、コンパイラ、コンパイル装置、プログラムコード作成方法、プログラム、キャッシュ最適利用演算方法、およびキャッシュ最適利用演算装置 |
US20050132144A1 (en) * | 2003-12-12 | 2005-06-16 | Illikkal Ramesh G. | Striping across multiple cache lines to prevent false sharing |
WO2008155844A1 (ja) * | 2007-06-20 | 2008-12-24 | Fujitsu Limited | 情報処理装置およびキャッシュ制御方法 |
US20100088472A1 (en) * | 2007-06-20 | 2010-04-08 | Fujitsu Limited | Data processing system and cache control method |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016063359A1 (ja) * | 2014-10-21 | 2016-04-28 | 株式会社東京機械製作所 | 画像処理装置 |
US9848101B2 (en) | 2014-10-21 | 2017-12-19 | Kabushiki Kaisha Tokyo Kikai Seisakusho | Image processing device |
Also Published As
Publication number | Publication date |
---|---|
US9256439B2 (en) | 2016-02-09 |
US20120290815A1 (en) | 2012-11-15 |
JP5706754B2 (ja) | 2015-04-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5706754B2 (ja) | データ処理装置及びデータ処理方法 | |
US20190220731A1 (en) | Indirectly accessing sample data to perform multi-convolution operations in a parallel processing system | |
US9818170B2 (en) | Processing unaligned block transfer operations | |
JP5744574B2 (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP2011113234A (ja) | 画像処理装置、および画像処理装置の動作方法 | |
CN104981838B (zh) | 优化图像存储器访问 | |
US20190318461A1 (en) | Histogram Statistics Circuit and Multimedia Processing System | |
JP6815741B2 (ja) | 画像処理装置および画像処理方法 | |
US11935153B2 (en) | Data compression support for accelerated processor | |
US8982134B2 (en) | Area-based dependency chain analysis of shaders and command stream | |
US8441487B1 (en) | Bandwidth compression for shader engine store operations | |
US20220188380A1 (en) | Data processing method and apparatus applied to graphics processing unit, and electronic device | |
US10089561B2 (en) | Generating a raster image region by rendering in parallel plural regions of smaller height and segmenting the generated raster image region into plural regions of smaller width | |
US20180103174A1 (en) | Image processing apparatus and method for controlling the same | |
US8359446B2 (en) | Method for processing data using triple buffering | |
JP2010073210A (ja) | 画像処理装置 | |
JP5968497B2 (ja) | 制御方法、システム及びプログラム | |
JP5501298B2 (ja) | 画像処理装置 | |
CN108696670A (zh) | 在成像时进行瓦片重用 | |
EP3693861B1 (en) | System and method for reducing memory fragmentation in a device lacking graphics memory management unit | |
CN115936101A (zh) | 用于神经网络张量处理器的稀疏数据压缩装置及方法 | |
CN115936102A (zh) | 用于神经网络张量处理器的稀疏数据解压缩装置及方法 | |
JP2012134669A (ja) | 画像処理装置、画像処理方法 | |
JP6563358B2 (ja) | 画像処理装置及び画像処理方法 | |
JP2015069619A (ja) | 画像処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140513 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20141022 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20141117 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150108 |
|
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: 20150130 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150227 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5706754 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |