JP2009258936A - 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム - Google Patents
情報処理装置、および情報処理方法、並びにコンピュータ・プログラム Download PDFInfo
- Publication number
- JP2009258936A JP2009258936A JP2008106354A JP2008106354A JP2009258936A JP 2009258936 A JP2009258936 A JP 2009258936A JP 2008106354 A JP2008106354 A JP 2008106354A JP 2008106354 A JP2008106354 A JP 2008106354A JP 2009258936 A JP2009258936 A JP 2009258936A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- data
- dma
- mfc
- information processing
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
- Multi Processors (AREA)
Abstract
【解決手段】情報処理装置内のシステムメモリのカーネル空間とユーザ空間の間のデータコピー処理や、デバイス間のデータ転送処理に際して、マルチプロセッサユニット内のサブプロセッサユニットに設けられたメモリフローコントローラ(MFC)がDMAによって外部から自己のローカルメモリにデータを転送し、さらに自己のローカルメモリから、外部のメモリまたはデバイスにデータをDMA転送することで、データ転送やコピーを行う。本構成により、メインプロセッサに対する負荷を発生させることのないデータ転送やコピー処理が実現される。
【選択図】図4
Description
まず、ステップS101においてデバイスがデータを取得する。
次にステップS102において、デバイスがデータをメモリのカーネル空間へDMA(Direct Memory Access)を用いて転送する。
次に、ステップS103において、CPU(Central Processing Unit)の実行するOSの制御の下、ユーザ空間へコピーされる。
最後に、ステップS104において、アプリケーションがユーザ空間からデータを取得する。
特許文献4(特開平9−294132(日立電線))は、フレーム中継装置において受信フレームをメモリコピーすること無く送信フレームとして扱うことが可能なメモリ管理方法を利用した構成を提案している。この構成により、メモリコピー性能に依存しないフレーム中継を実現している。
複数のプロセッサを含むマルチプロセッサユニットを有し、
前記マルチプロセッサユニットは、
メインプロセッサを含むメインプロセッサエレメントと、
サブプロセッサと、プロセッサ対応のローカルメモリと、該ローカルメモリに対するデータ入出力をDMA(ダイレクトメモリアクセス)によって実行するメモリフローコントローラ(MFC)とを有するサブプロセッサエレメントを1つ以上有する構成であり、
前記メモリフローコントローラ(MFC)は、
前記マルチプロセッサユニットの外部からデータをDMA処理により前記ローカルメモリに入力して格納し、さらに、前記ローカルメモリに格納したデータをDMA処理により前記マルチプロセッサユニットの外部のメモリまたはデバイスに出力する処理を実行する構成である情報処理装置にある。
情報処理装置においてデータ転送処理を行う情報処理方法であり、
前記情報処理装置は、複数のプロセッサを含むマルチプロセッサユニットを有し、
前記マルチプロセッサユニットは、
メインプロセッサを含むメインプロセッサエレメントと、
サブプロセッサと、プロセッサ対応のローカルメモリと、該ローカルメモリに対するデータ入出力をDMA(ダイレクトメモリアクセス)によって実行するメモリフローコントローラ(MFC)とを有するサブプロセッサエレメントを1つ以上有する構成であり、
前記メモリフローコントローラ(MFC)が、前記マルチプロセッサユニットの外部からデータをDMA処理により前記ローカルメモリに入力して格納するステップと、
前記メモリフローコントローラ(MFC)が、前記ローカルメモリに格納したデータをDMA処理により前記マルチプロセッサユニットの外部のメモリまたはデバイスに出力する処理を実行するステップを有する情報処理方法にある。
情報処理装置においてデータ転送処理を実行させるコンピュータ・プログラムであり、
前記情報処理装置は、複数のプロセッサを含むマルチプロセッサユニットを有し、
前記マルチプロセッサユニットは、
メインプロセッサを含むメインプロセッサエレメントと、
サブプロセッサと、プロセッサ対応のローカルメモリと、該ローカルメモリに対するデータ入出力をDMA(ダイレクトメモリアクセス)によって実行するメモリフローコントローラ(MFC)とを有するサブプロセッサエレメントを1つ以上有する構成であり、
前記メモリフローコントローラ(MFC)に、前記マルチプロセッサユニットの外部からデータをDMA処理により前記ローカルメモリに入力して格納させるステップと、
前記メモリフローコントローラ(MFC)に、前記ローカルメモリに格納したデータをDMA処理により前記マルチプロセッサユニットの外部のメモリまたはデバイスに出力する処理を実行させるステップを有するコンピュータ・プログラムにある。
まず、図4を参照して、本発明の一実施例に係る情報処理装置の構成および処理例について説明する。図4に示す本実施例に係る情報処理装置200は、マルチプロセッサユニット210と、ネットワークカードなどの通信デバイスやビデオカードなどのデータ処理デバイスなどから構成されるデバイス220、さらにシステムメモリとしてのメモリ230がシステムバス202に接続された構成を持つ。システムバス202に接続された各構成部位にはシステムバス202を介してデータ転送がなされる。
次にステップS202において、デバイス220がデータをメモリ230のカーネル空間232へDMA(Direct Memory Access)を用いて転送する。
(1)サブプロセッサエレメント(SPE)のMFCによるダイレクトメモリアクセス(DMA)、すなわち、[MFC GET]の実行。
この処理により、メモリのカーネル空間にあるデータをサブプロセッサエレメント(SPE)のローカルストア(LS)上にコピーする。
(2)サブプロセッサエレメント(SPE)のMFCによるダイレクトメモリアクセス(DMA)、すなわち、[MFC GET]の実行。
この処理により、サブプロセッサエレメント(SPE)のローカルストア(LS)上にあるデータをメモリのユーザ空間にコピーする。
これらの処理シーケンスとすることで、メインのプロセッサであるPPE211に対する処理負荷を発生させることなく、カーネル空間からユーザ空間へのデータコピーを実現している。
サブプロセッサエレメントのMFCによるデータコピー処理は、図4に示すメモリ230のようなメインメモリとのコピー処理に限らず、例えばデバイス間でのデータコピーに適用することもできる。
次にステップS302において、マルチプロセッサユニット310内の1つのサブプロセッサエレメント(SPE)312の実行するOSの制御の下、デバイスA320にあるデータ321を、サブプロセッサエレメント(SPE)312のローカルストア(LS)にコピーする。図6に示すデータ321のコピーデータがデータ315となる。このデータコピー処理は、サブプロセッサエレメント(SPE)312のMFCによるデータコピー処理(MFC GET)として実行される。
(1)サブプロセッサエレメント(SPE)のMFCによるダイレクトメモリアクセス(DMA)、すなわち、[MFC GET]の実行。
この処理により、第1のデバイスにあるデータをサブプロセッサエレメント(SPE)のローカルストア(LS)上にコピーする。
(2)サブプロセッサエレメント(SPE)のMFCによるダイレクトメモリアクセス(DMA)、すなわち、[MFC GET]の実行。
この処理により、サブプロセッサエレメント(SPE)のローカルストア(LS)上にあるデータを第2デバイスに提供する。
これらの処理シーケンスとすることで、メインのプロセッサであるPPEに対する処理負荷を発生させることなく、デバイス間のデータコピーを実現している。
102 システムバス
110 CPU(Central Processor Unit)
120 デバイス
121 データ
130 メモリ
131 ユーザ空間
132 カーネル空間
140 情報処理装置
142 システムバス
150 CPU(Central Processor Unit)
160 デバイス
161 データ
170 メモリ
171 ユーザ空間
172 カーネル空間
200 情報処理装置
202 システムバス
210 マルチプロセッサユニット
211 メインプロセッサエレメント(PPE)
212 サブプロセッサエレメント(SPE)
221 データ
230 メモリ
231 ユーザ空間
232 カーネル空間
251〜253 データ
300 情報処理装置
302 システムバス
310 マルチプロセッサユニット
311 メインプロセッサエレメント(PPE)
312 サブプロセッサエレメント(SPE)
320 デバイスA
321 データ
330 デバイスB
331 データ
340 メモリ
Claims (7)
- 複数のプロセッサを含むマルチプロセッサユニットを有し、
前記マルチプロセッサユニットは、
メインプロセッサを含むメインプロセッサエレメントと、
サブプロセッサと、プロセッサ対応のローカルメモリと、該ローカルメモリに対するデータ入出力をDMA(ダイレクトメモリアクセス)によって実行するメモリフローコントローラ(MFC)とを有するサブプロセッサエレメントを1つ以上有する構成であり、
前記メモリフローコントローラ(MFC)は、
前記マルチプロセッサユニットの外部からデータをDMA処理により前記ローカルメモリに入力して格納し、さらに、前記ローカルメモリに格納したデータをDMA処理により前記マルチプロセッサユニットの外部のメモリまたはデバイスに出力する処理を実行する構成である情報処理装置。 - 前記情報処理装置は、
前記マルチプロセッサユニットとバス接続されたシステムメモリを有し、
前記システムメモリは、オペレーションシステム(OS)によって管理されるカーネル空間と、アプリケーションの利用可能なユーザ空間が定義されたメモリであり、
前記メモリフローコントローラ(MFC)は、
前記システムメモリのカーネル空間からデータをDMA処理により前記ローカルメモリに入力して格納し、さらに、前記ローカルメモリに格納したデータをDMA処理により前記システムメモリのユーザ空間に出力する処理を実行する構成である請求項1に記載の情報処理装置。 - 前記情報処理装置は、
前記マルチプロセッサユニットとバス接続された第1デバイスおよび第2デバイスを有し、
前記メモリフローコントローラ(MFC)は、
前記第1デバイスからデータをDMA処理により前記ローカルメモリに入力して格納し、さらに、前記ローカルメモリに格納したデータをDMA処理により前記第2デバイスに出力する処理を実行する構成である請求項1に記載の情報処理装置。 - 前記DMA処理によるデータ転送を実行するメモリフローコントローラ(MFC)を有するサブプロセッサエレメントはオペレーションシステム(OS)を実行するエレメントである請求項1に記載の情報処理装置。
- 前記DMA処理によるデータ転送によって、前記ユーザ空間に出力されたデータは、前記マルチプロセッサユニット内の複数のサブプロセッサエレメントのいずれかのサブブロセッサエレメントが実行するアプリケーションによって取得され利用される構成である請求項1に記載の情報処理装置。
- 情報処理装置においてデータ転送処理を行う情報処理方法であり、
前記情報処理装置は、複数のプロセッサを含むマルチプロセッサユニットを有し、
前記マルチプロセッサユニットは、
メインプロセッサを含むメインプロセッサエレメントと、
サブプロセッサと、プロセッサ対応のローカルメモリと、該ローカルメモリに対するデータ入出力をDMA(ダイレクトメモリアクセス)によって実行するメモリフローコントローラ(MFC)とを有するサブプロセッサエレメントを1つ以上有する構成であり、
前記メモリフローコントローラ(MFC)が、前記マルチプロセッサユニットの外部からデータをDMA処理により前記ローカルメモリに入力して格納するステップと、
前記メモリフローコントローラ(MFC)が、前記ローカルメモリに格納したデータをDMA処理により前記マルチプロセッサユニットの外部のメモリまたはデバイスに出力する処理を実行するステップを有する情報処理方法。 - 情報処理装置においてデータ転送処理を実行させるコンピュータ・プログラムであり、
前記情報処理装置は、複数のプロセッサを含むマルチプロセッサユニットを有し、
前記マルチプロセッサユニットは、
メインプロセッサを含むメインプロセッサエレメントと、
サブプロセッサと、プロセッサ対応のローカルメモリと、該ローカルメモリに対するデータ入出力をDMA(ダイレクトメモリアクセス)によって実行するメモリフローコントローラ(MFC)とを有するサブプロセッサエレメントを1つ以上有する構成であり、
前記メモリフローコントローラ(MFC)に、前記マルチプロセッサユニットの外部からデータをDMA処理により前記ローカルメモリに入力して格納させるステップと、
前記メモリフローコントローラ(MFC)に、前記ローカルメモリに格納したデータをDMA処理により前記マルチプロセッサユニットの外部のメモリまたはデバイスに出力する処理を実行させるステップを有するコンピュータ・プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008106354A JP4548505B2 (ja) | 2008-04-16 | 2008-04-16 | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
US12/419,817 US20090265515A1 (en) | 2008-04-16 | 2009-04-07 | Information Processing Apparatus, Information Processing Method, and Computer Program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008106354A JP4548505B2 (ja) | 2008-04-16 | 2008-04-16 | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009258936A true JP2009258936A (ja) | 2009-11-05 |
JP4548505B2 JP4548505B2 (ja) | 2010-09-22 |
Family
ID=41202083
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008106354A Expired - Fee Related JP4548505B2 (ja) | 2008-04-16 | 2008-04-16 | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US20090265515A1 (ja) |
JP (1) | JP4548505B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9507951B2 (en) * | 2014-10-20 | 2016-11-29 | Intel Corporation | Technologies for secure input and display of virtual touch user interfaces |
WO2018113030A1 (en) * | 2016-12-23 | 2018-06-28 | Intel Corporation | Technology to implement bifurcated non-volatile memory express driver |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007028364A (ja) * | 2005-07-20 | 2007-02-01 | Matsushita Electric Ind Co Ltd | 通信制御装置、受信装置、集積回路、及び通信制御方法 |
JP2008077640A (ja) * | 2006-09-22 | 2008-04-03 | Sony Computer Entertainment Inc | マルチプロセッサシステムにおける消費電力削減方法および装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080126599A1 (en) * | 2006-08-28 | 2008-05-29 | Chung-Yu Wei | Iscsi target apparatus that does not require creating a buffer in the user space and related method thereof |
US7865631B2 (en) * | 2007-12-06 | 2011-01-04 | International Business Machines Corporation | Dynamic logical data channel assignment using time-grouped allocations |
-
2008
- 2008-04-16 JP JP2008106354A patent/JP4548505B2/ja not_active Expired - Fee Related
-
2009
- 2009-04-07 US US12/419,817 patent/US20090265515A1/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007028364A (ja) * | 2005-07-20 | 2007-02-01 | Matsushita Electric Ind Co Ltd | 通信制御装置、受信装置、集積回路、及び通信制御方法 |
JP2008077640A (ja) * | 2006-09-22 | 2008-04-03 | Sony Computer Entertainment Inc | マルチプロセッサシステムにおける消費電力削減方法および装置 |
Also Published As
Publication number | Publication date |
---|---|
JP4548505B2 (ja) | 2010-09-22 |
US20090265515A1 (en) | 2009-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20020161941A1 (en) | System and method for efficiently performing a data transfer operation | |
EP2798461B1 (en) | Low latency cluster computing | |
KR100570138B1 (ko) | 복수의 프로세서들에 소프트웨어를 로딩하는 시스템 및 방법 | |
KR20110130435A (ko) | 메모리 세그먼테이션 및 acpi 기반 컨텍스트 전환을 사용하는 운영 시스템 로딩 | |
JP2012508938A (ja) | セキュアなアプリケーション実行方法および装置 | |
TW201741867A (zh) | 記憶體複製指令、處理器、方法及系統 | |
JP2017509064A (ja) | マスクド結果要素に伝搬する対応アンマスクド結果要素にソース要素を記憶するプロセッサ、方法、システム、及び命令 | |
JP2008226236A (ja) | 構成可能なマイクロプロセッサ | |
US20160224325A1 (en) | Hiding compilation latency | |
TWI507991B (zh) | 多核心處理器及其相關控制方法與電腦系統 | |
JP4548505B2 (ja) | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム | |
US11481250B2 (en) | Cooperative workgroup scheduling and context prefetching based on predicted modification of signal values | |
JP2008269094A (ja) | 情報処理装置、情報処理装置の最適化方法、プログラム | |
JP2007207074A (ja) | オペレーションシステム、スレッド制御機構、及び情報処理装置 | |
JP2008041059A (ja) | マルチプロセッサ制御装置及び情報処理装置 | |
JP5783348B2 (ja) | 制御装置、制御プログラム、画像形成装置 | |
KR20100070981A (ko) | 직접 메모리 참조 전송의 효율성 향상 | |
JP4444305B2 (ja) | 半導体装置 | |
EP1235139B1 (en) | System and method for supporting precise exceptions in a data processor having a clustered architecture | |
JP2020140284A (ja) | ベクトル演算処理装置、ベクトル演算処理装置による配列変数初期化方法、及び、ベクトル演算処理装置による配列変数初期化プログラム | |
TWI847670B (zh) | 使用矩陣乘法指令的設備 | |
JP2007087244A (ja) | コプロセッサ及びコンピュータシステム | |
JP6940283B2 (ja) | Dma転送制御装置、dma転送制御方法、及び、dma転送制御プログラム | |
JP2011150636A (ja) | マイクロプロセッサ及びその制御方法 | |
KR100490438B1 (ko) | 연산/저장을 병행하여 처리하는 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100202 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100326 |
|
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: 20100615 |
|
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: 20100628 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130716 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |