処理実行前データを記憶する共有メモリと、前記処理実行前データを用いて第1の処理を実行する複数のアクセラレータと、前記複数のアクセラレータにおいて分散処理されたデータを、前記複数のアクセラレータの数よりも多い分散配置データとして前記共有メモリに分散配置するデータ配置部と、前記分散配置データを、前記複数のアクセラレータのうち前記分散処理されたデータを用いて第2の処理を実行するアクセラレータと同数の集約配置データとして前記共有メモリに集約配置するデータ集約部と、を備える情報処理装置。前記分散処理されたデータは、キー情報とバリュー情報とを有するデータであって、前記データ配置部は、前記キー情報に基づいて前記分散処理されたデータを分散配置データとして分散配置する、請求項1に記載の情報処理装置。前記処理実行前データ及び前記集約配置されたデータを、前記共有メモリから、前記アクセラレータによってアクセスされるローカルメモリへ出力するデータコピー部をさらに備える、請求項1又は2記載の情報処理装置。前記ローカルメモリは、前記アクセラレータ毎に備えられ、前記アクセラレータは、前記ローカルメモリに記録された前記処理実行前データを用いて前記第1の処理を実行し、前記ローカルメモリに記録された前記集約配置データを用いて前記第2の処理を実行する、請求項3に記載の情報処理装置。前記データ集約部は、前記集約配置データをキー情報に基づいて並び替えを行う、請求項2に記載の情報処理装置。前記複数のアクセラレータは、前記処理実行前データを用いてマップリデュースプログラミングにおけるマップ処理を実行することにより前記データを分散処理し、前記集約配置データを用いてリデュース処理を行う、請求項3又は4に記載の情報処理装置。前記アクセラレータにおいて分散処理されたデータを、前記データ配置部からの指示を受けて前記分散配置データとして前記共有メモリに分散配置し、前記分散配置データを、前記データ集約部からの指示を受けて前記集約配置データとして前記共有メモリに集約配置する処理を実行する複数のプロセッサをさらに備える、請求項1乃至6のいずれか1項に記載の情報処理装置。前記データ配置部は、前記分散処理されたデータを、前記プロセッサの数と同数、又は前記プロセッサの数を下回りかつ前記アクセラレータの数を上回る数の分散配置データとして分散配置する、請求項1乃至7のいずれか1項に記載の情報処理装置。共有メモリに記憶されている処理実行前データを、複数のアクセラレータにおいて第1の処理を実行し、前記複数のアクセラレータにおいて分散処理されたデータを、前記複数のアクセラレータの数よりも多い分散配置データとして前記共有メモリに分散配置し、前記分散配置データを、前記複数おアクセラレータのうち前記分散処理されたデータを用いて第2の処理を実行するアクセラレータと同数の集約配置データとして前記共有メモリに集約配置する、データ配置方法。複数のアクセラレータにおいて第1の処理を実行され、前記複数のアクセラレータにおいて分散処理されたデータを、前記複数のアクセラレータの数よりも多い分散配置データとして共有メモリに分散配置するステップと、前記分散配置データを、前記複数のアクセラレータのうち前記分散処理されたデータを用いて第2の処理を実行するアクセラレータと同数の集約配置データとして集約配置するステップと、をコンピュータに実行させるプログラム。しかしながら、特許文献1に開示されている方式は、次の問題点を有している。特許文献1には、複数のサーバにおける並列処理はネットワーク接続を介して実行されることが開示されている。そのため、単一情報処理装置内における複数のアクセラレータを用いた並列処理は想定されていない。また、MAP処理後における複数サーバ間でのデータの再配置は、やはりネットワーク接続を仮定しており、共有メモリ上におけるデータの再配置の方法は開示されていない。また、特許文献2は、複数のサーバ間での負荷分散を開示しているものの、やはり特許文献1と同様に、共有メモリ上におけるデータの再配置の方法を開示していない。そのため、特許文献1及び2に開示されている複数のサーバにおける並列処理もしくは負荷分散を用いたとしても、情報処理装置内に複数のアクセラレータを導入した場合における、効率的なデータの再配置を行うことができず、複数のアクセラレータを用いた高い並列処理能力を実現することができないという問題がある。本発明はこのような問題を解決するために、複数のアクセラレータを導入した場合に、効率的なデータの再配置を行うことができる情報処理装置、データ配置方法及びプログラムを提供することを目的とする。本発明の第1の態様にかかる情報処理装置は、処理実行前データを記憶する共有メモリと、前記処理実行前データを用いて第1の処理を実行する複数のアクセラレータと、前記複数のアクセラレータにおいて分散処理されたデータを、前記複数のアクセラレータの数よりも多い分散配置データとして前記共有メモリに分散配置するデータ配置部と、前記分散配置データを、前記複数のアクセラレータのうち前記分散処理されたデータを用いて第2の処理を実行するアクセラレータと同数の集約配置データとして前記共有メモリに集約配置するデータ集約部と、を備えるものである。本発明の第2の態様にかかるデータ配置方法は、共有メモリに記憶されている処理実行前データを、複数のアクセラレータにおいて第1の処理を実行し、前記複数のアクセラレータにおいて分散処理されたデータを、前記複数のアクセラレータの数よりも多い分散配置データとして前記共有メモリに分散配置し、前記分散配置データを、前記複数おアクセラレータのうち前記分散処理されたデータを用いて第2の処理を実行するアクセラレータと同数の集約配置データとして前記共有メモリに集約配置するものである。本発明の第3の態様にかかるプログラムは、複数のアクセラレータにおいて第1の処理を実行され、前記複数のアクセラレータにおいて分散処理されたデータを、前記複数のアクセラレータの数よりも多い分散配置データとして共有メモリに分散配置するステップと、前記分散配置データを、前記複数のアクセラレータのうち前記分散処理されたデータを用いて第2の処理を実行するアクセラレータと同数の集約配置データとして集約配置するステップと、をコンピュータに実行させるものである。本発明により、複数のアクセラレータを導入した場合に、効率的なデータの再配置を行うことができる情報処理装置、データ配置方法及びプログラムを提供することができる。実施の形態1以下、図面を参照して本発明の実施の形態について説明する。図1を用いて本発明の実施の形態1にかかる情報処理装置10の構成例について説明する。情報処理装置10は、共有メモリ30と、アクセラレータ50G1~50Gmと、データ配置部32と、データ集約部34と、を備えている。共有メモリ30は、アクセラレータ50G1~50Gmにおいてデータ処理される際に用いられるデータ以下、処理実行前データと称するを保持している。共有メモリ30は、RAMRandomAccessMemory等により構成されてもよい。アクセラレータ50G1~50Gmとは、情報処理装置10には、複数のアクセラレータが導入されていることを示している。mは2以上の整数である。アクセラレータ50G1~50Gmは、共有メモリ30に保持されている処理実行前データを用いて、データの分散処理を実行する。データ配置部32は、アクセラレータ50G1~50Gmにおいて分散処理されたデータを、アクセラレータ50G1~50Gmの数よりも多い分散配置データとして、共有メモリ30に分散配置する。データ集約部34は、分散配置データを、アクセラレータ50G1~50Gmのうち、分散処理されたデータを用いて、あらかじめ規定された演算処理を実行するアクセラレータと同数の集約配置データとして、共有メモリ30に集約配置する。アクセラレータ50G1~50Gmの全てが分散処理されたデータを用いて、あらかじめ規定された演算処理を実行する場合、アクセラレータ50G1~50Gmと同じ数の集約配置データが生成され、共有メモリ30に集約配置される。以上説明したように、図1の情報処理装置10を用いることにより、アクセラレータ50G1~50Gmにおいて分散処理されたデータを、アクセラレータ50G1~50Gmの数よりも多い分散配置データとして分散配置することにより、分散処理されたデータに対する競合アクセスを減らすことができる。つまり、共有メモリ30上にアクセラレータ50G1~50Gmの数と同じ数のデータに再配置する場合と比べて、アクセラレータ50G1~50Gmの数よりも多い分散配置データとして分散配置することにより、共有メモリ上におけるロック競合などを緩和することができる。これにより、情報処理装置10の性能向上を実現することができる。続いて、図2を用いて本発明の実施の形態1にかかる情報処理装置10の詳細な構成例について説明する。情報処理装置10は、CPU20P1~20Pnを含むCPU群20と、共有メモリ30と、チップセット40と、アクセラレータ50G1~50Gmと、ローカルメモリ60M1~60Mmと、プロセッサ制御部100とを備えている。CPU群20は、共有メモリ30と、チップセット40と、プロセッサ制御部100とに接続される。CPU群20に含まれるCPU20P1~20Pnは、プロセッサや、中央演算装置等であり、計算もしくは演算処理を実行する回路により構成される。nは2以上の整数を示し、CPU群20は、2以上のCPUを含む。また、CPU群20は、プロセッサ制御部100からの指示を受けて動作するように構成されている。共有メモリ30は、CPU20P1~20Pn及びアクセラレータ50G1~50Gmにおいてデータ処理されるデータを保持している。また、共有メモリ30上のデータは、プロセッサ制御部100によって制御されたCPU群20によって、データの再配置又はデータのコピー処理等が実行される。チップセット40は、CPU群20と、アクセラレータ50G1~50Gmとを接続するために用いられる。チップセット40は、例えば、CPU群20と、アクセラレータ50G1~50Gmを接続するシステムバスとして動作してもよい。アクセラレータ50G1~50Gmは、GPGPUやFPGAFieldProgrammableGateArrayといった、CPUよりも高密度な演算装置を備えたデバイスである。アクセラレータ50G1~50Gmは、1対1に対応するローカルメモリ60M1~60Mmに接続される。アクセラレータ50G1~50Gmは、それぞれ同じ種類及び性能であっても異なる種類及び性能であってもよい。プロセッサ制御部100は、アクセラレータ50G1~50Gmと共有メモリ30との間におけるデータコピーや、アクセラレータ50G1~50Gmにおけるプログラムの実行指示、共有メモリ30上におけるデータの分散配置、グルーピング、集約配置といった機能を有する。ローカルメモリ60M1は、アクセラレータ50G1に接続され、ローカルメモリ60M2は、アクセラレータ50G2に接続され、ローカルメモリ60Mmは、アクセラレータ50Gmに接続されている。つまり、ひとつのアクセラレータに対してひとつのローカルメモリが対応して設けられている。ローカルメモリ60M1~60Mmは、アクセラレータ50G1~50Gmにおけるデータ処理に用いられるデータを保持し、もしくは、アクセラレータ50G1~50Gmにおいてデータ処理されたデータを保持する。続いて、図3を用いて本発明の実施の形態1にかかる並列処理方式を説明する。共有メモリ30に保持されているデータ200は、アクセラレータ50G1~50Gmに等分ないしアクセラレータの演算能力に応じて配分供給される。アクセラレータ50G1~50Gmは、供給されたデータを用いて、MAP処理と称されるユーザ規定のプログラムを実行する。アクセラレータ50G1~50Gmは、MAP処理を実行することにより、キーとバリューという2つの値のペアの列からなるデータ列を生成する。例えば、アクセラレータ50G1は、キーの値を350、バリューの値を10とするデータを含むデータ列を生成する。アクセラレータ50G2は、キーの値を220、バリューの値を20とするデータを含むデータ列を生成し、アクセラレータ50G3は、キーの値を150、バリューの値を777とするデータを含むデータ列を生成し、アクセラレータ50Gmは、キーの値を70、バリューの値を1とするデータを含むデータ列を生成する。ここで、アクセラレータ50G1においてMAP処理されたデータをデータ列300M1、アクセラレータ50G2においてMAP処理されたデータをデータ列300M2、アクセラレータ50G3においてMAP処理されたデータをデータ列300M3、アクセラレータ50GmにおいてMAP処理されたデータをデータ列300Mmとする。MAP処理により生成されたデータ列は、中間バッファに蓄えられる。その後、中間バッファに蓄えられたデータは、それぞれのデータ列のキーの値に従い、アクセラレータ50G1~50Gmに再配置される。例えば、本図においては、キーの値が1~100であれば、アクセラレータ50G1へ、101~200であれば、アクセラレータ50G2へ、201~300であれば、アクセラレータ50G3へ、そして、301~400であれば、アクセラレータ50Gmへと再配置される。その後、アクセラレータ50G1~50Gmは、再配置されたデータを用いて、REDUCEと称されるユーザ規定のプログラムを実行する。REDUCE処理は、アクセラレータ50G1~50Gmの全てにおいて実行されてもよく、アクセラレータ50G1~50Gmの一部のアクセラレータにおいて実行されてもよい。続いて、図4を用いて本発明の実施の形態1にかかるプロセッサ制御部100の構成例について説明する。プロセッサ制御部100は、データコピー制御部110と、アクセラレータ制御部120と、データ分散化制御部130と、データ再配置制御部140と、データ集約化制御部150と、を備えている。データコピー制御部110は、共有メモリ30と、アクセラレータ50G1~50Gmに接続されたローカルメモリ60M1~60Mmとの間におけるデータの送受信制御を行う。つまり、データコピー制御部110は、CPU群20に対して、共有メモリ30に保持されているデータをローカルメモリ60M1~60Mmへコピーし、もしくは、ローカルメモリ60M1~60Mmに保持されているデータを共有メモリ30へコピーするように指示する。データコピー制御部110は、CPU群20に対して動作指示信号を出力し、CPU群20の動作を制御してもよい。プロセッサ制御部100内の他の構成要素についても同様である。アクセラレータ制御部120は、アクセラレータ50G1~50Gmに対して、MAP処理やREDUCE処理といったユーザ規定のプログラムの実行を指示する。データ分散化制御部130は、共有メモリ30上のデータを分散的に配置する。具体的には、データ分散化制御部130は、CPU群20に対して、アクセラレータ50G1~50GmにおいてMAP処理されたデータ列を用いて、アクセラレータ50G1~50Gmの数よりも多い分散配置データ列を生成し、共有メモリ30上に分散配置データ列を分散的に配置するように指示する。データ再配置制御部140は、データ分散化制御部130によって分散配置された分散配置データ列を、REDUCE処理を実行するアクセラレータの数と等分にグループ化する。もしくはデータ再配置制御部140は、REDUCE処理を実行するアクセラレータの演算能力に傾斜して、分散配置データ列を各グループに配分する。データ再配置制御部140は、CPU群20に対して、分散配置データ列をグループ化するように指示する。つまり、データ再配置制御部140は、CPU群20に対して、演算能力が他のアクセラレータに比べて高いアクセラレータに対して、相対的に多い数のデータをグループ化し、演算能力が他のアクセラレータに比べて低いアクセラレータに対して、相対的に低い数のデータをグループ化して対応づけるように指示してもよい。データ集約化制御部150は、データ再配置制御部140によってグループ化されたデータを集約して、REDUCE処理を実行するために用いられる集約化データ列を生成する。具体的には、データ集約化制御部150は、CPU群20に対して、グループ化されたデータを集約して、集約化データ列を生成するように指示する。続いて、図5を用いて、本発明の実施の形態1にかかる、初期データの配置について説明する。本図は、図2の構成において、共有メモリ30上に、処理対象となる初期データ列200が保持されている例を示している。続いて、図6を用いて、MAP処理前のデータ配置について説明する。本図は、図5において共有メモリ30に保持されていた初期データ列200が分割され、ローカルメモリ60M1~60Mmが、分割されたMAP処理前データ列201M1~201Mmを保持している例について示している。初期データ列200は、データコピー制御部110の制御により、アクセラレータ50G1~50Gmの数と等分に分割されてローカルメモリ60M1~60Mmに配分されてもよく、アクセラレータ50G1~50Gmの演算能力に応じて傾斜配分されてもよい。続いて、図7を用いてMAP処理後のデータ配置について説明する。アクセラレータ50G1~50Gmは、アクセラレータ制御部120の制御により、MAP処理前データ列201M1~201Mmを用いてMAP処理を実行し、MAP処理後データ列300M1~300Mmを生成する。MAP処理後データ列300M1~300Mmは、ローカルメモリ60M1~60Mmに保持される。つまり、ローカルメモリ60M1~60Mmは、中間バッファとして、データ列300M1~300Mmを保持してもよい。ここで、MAP処理前のデータ列201M1~201MmとMAP処理後のデータ列300M1~300Mmとの各サイズは同じでもよく、異なっていてもよい。続いて、図8を用いて共有メモリ30におけるMAP処理後のデータ配置について説明する。ローカルメモリ60M1~60Mmに保持されているMAP処理後データ列300M1~300Mmは、データコピー制御部110の制御により、ローカルメモリ60M1~60Mmから共有メモリ30に対してそのままコピーされる。このようにして、共有メモリ30上に、MAP処理後データ列300M1~300Mmが保持される。続いて、図9を用いて共有メモリ30におけるMAP処理後のデータの分散配置について説明する。共有メモリ30上のMAP処理後データ列300M1~300Mmは、キーの値に応じて、データ分散化制御部130の制御により、情報処理装置10内のアクセラレータ数よりも多い数の分散配置データ列400M1~400Mkへと再配置される。kは、2以上の整数であり、MAP処理後データ列に用いられる整数mよりも大きな値が設定される。例えば、分散配置データ列は、キーが1~10であるデータを、分散配置データ列400M1とし、キーが11~20であるデータを、分散配置データ列400M2とし、キーが391~400であるデータを、分散配置データ列400Mkというように再配置する。分散配置データ列400M1~400Mkは、MAP処理後データ列300M1~300Mmの各サイズよりも小さくなるように、キーの範囲が定められる。続いて、図10を用いて共有メモリ30上の分散配置データ列400M1~400Mkのグルーピングについて説明する。分散配置データ列400M1~400Mkは、アクセラレータ50G1~50Gmの数よりも多いデータ列として、共有メモリ30上に分散配置されている。ここで、分散配置データ列400M1~400Mkは、データ再配置制御部140の制御により、アクセラレータ50G1~50Gmと同じ数のデータ列にグルーピングされる。もしくは、分散配置データ列400M1~400Mkは、データ再配置制御部140の制御により、アクセラレータ50G1~50GmのうちREDUCE処理を実行するアクセラレータの数と同じ数のデータ列にグルーピングされる。グルーピングされた分散配置データ列400M1~400Mkの集合を、それぞれ500M1~500Mmとする。各グループにおけるデータ列のサイズは、500M1~500Mmにおいて等分にされてもよく、あるいは、アクセラレータの処理能力に応じて傾斜配分されてもよい。本図においては、キーの値が1~100までをグループデータ列500M1とし、キーの値が101~200までをグループデータ列500M2とし、キーの値が301~400までをグループデータ列500Mmとするようにグルーピングされている。続いて、図11を用いて共有メモリ30上のグループデータ列500M1~500Mmの集約について説明する。グループデータ列500M1~500Mmにグルーピングされている分散配置データ列は、データ集約化制御部150の制御により各グループ単位に集約されて、集約データ列600M1~600Mmとして集約配置される。それぞれのグループデータ列500M1~500Mmにグルーピングされている分散配置データ列を集約しているため、集約データ列600M1~600Mmの数は、アクセラレータ50G1~50Gmと同じ数となる。続いて、図12を用いて、ローカルメモリ60M1~60Mm上の集約データ列600M1~600Mmの配置について説明する。共有メモリ30上に集約配置されている集約データ列600M1~600Mmは、データコピー制御部110の制御により、それぞれローカルメモリ60M1~60Mmへコピーされる。続いて、図13を用いて、REDUCE処理後のデータの配置について説明する。アクセラレータ50G1~50Gmは、アクセラレータ制御部120の制御により、ローカルメモリ60M1~60Mmに蓄積されている集約データ列600M1~600Mmを用いてREDUCE処理を実行する。アクセラレータ50G1~50Gmは、REDUCE処理後のデータ列602M1~602Mmを、ローカルメモリ60M1~60Mmに蓄積する。ここで、REDUCE処理前の集約データ列600M1~600MmとREDUCE処理後のデータ列602M1~602Mmの各サイズは同じでもよく、異なっていてもよい。なお、アクセラレータ50G1~50Gmは、REDUCE処理前に集約データ列600M1~600Mmにソートをかけて、同一のキーが連続するように再配置を行ってもよい。同一のキーが連続するように再配置されることにより、REDUCE処理の実行時間を短縮させることができる。ここで、共有メモリ30上のMAP処理後データ列の分散配置、及び、分散配置データ列の集約配置等は、CPU群20のCPU20P1~20Pnによって実行される。そのため、分散配置されるデータ列の数は、CPU群20が備えるCPU20P1~20Pnの数と同等もしくは、CPU20P1~20Pnの数の近傍の数とすることにより情報処理装置10の性能が向上する。なぜなら、CPU20P1~20Pnは、MAP処理後データ列にアクセスをして、分散配置を行い、分散配置データ列にアクセスをして、分散配置データ列を集約配置等行う。この時、CPU20P1~20Pnは、同一の分散配置データ列へアクセスを行う場合、ロックなどの同期処理を用いて順序よくアクセスを行う。この場合、分散配置データ列の数が、CPU20P1~20Pnの数よりも極端に少ない場合、複数のCPUから、分散配置データ列への競合アクセスが増加することになり、情報処理装置10の性能が低下する。そのため、分散配置データ列の数を増加させ、CPU20P1~20Pnの数と同程度にすることにより、同一の分散配置データ列への競合アクセスを減少させることができる。なお、上記の説明においては、分散配置の方法として、各分散配置データ列の扱うキーの範囲を小さくする方法について説明したが、ハッシュにより分散化する方法等を用いて分散配置を行ってもよい。続いて、図14を用いて本発明の実施の形態1にかかる情報処理装置10におけるMAP/REDUCE処理の流れについて説明する。はじめに、データコピー制御部110は、CPU群20に対して、共有メモリ30の初期データ列200を分割し、MAP処理前データ列201M1~201Mmとしてローカルメモリ60M1~60Mmへコピーするように指示するS1。指示を受けたCPU群20のCPU20P1~20Pnは、共有メモリ30上の初期データ列200へアクセスし、ローカルメモリ60M1~60Mmへコピーするように動作する。次に、アクセラレータ制御部120は、CPU群20を介してアクセラレータ50G1~50Gmに対して、ローカルメモリ60M1~60Mm上のMAP処理前データ列201M1~201Mmを用いたMAP処理の実行を指示するS2。アクセラレータ50G1~50Gmは、ローカルメモリ60M1~60Mmに蓄積されているMAP処理前データ列201M1~201Mmを抽出し、MAP処理を実行する。アクセラレータ50G1~50Gmは、MAP処理後データ列300M1~300Mmをローカルメモリ60M1~60Mmへ蓄積する。次に、データコピー制御部110は、CPU群20に対して、ローカルメモリ60M1~60Mm上のMAP処理後データ列300M1~300Mmを共有メモリ30へコピーするように指示するS3。指示を受けたCPU群20のCPU20P1~20Pnは、アクセラレータ50G1~50Gmを介してローカルメモリ60M1~60Mmへアクセスし、MAP処理後データ列300M1~300Mmを共有メモリ30上へコピーするように動作する。次に、データ分散化制御部130は、CPU群20に対して、共有メモリ30上のMAP処理後データ列300M1~300Mmを、分散配置データ列400M1~400Mkとして分散配置するように指示するS4。指示を受けたCPU群20のCPU20P1~20Pnは、共有メモリ30上のMAP処理後データ列300M1~300Mmへアクセスし、MAP処理後データ列300M1~300Mmをアクセラレータ50G1~50Gmの数よりも多い数へ分散配置するように動作する。次に、データ再配置制御部140は、CPU群20に対して、分散配置データ列400M1~400Mkのグルーピングを指示するS5。例えば、指示を受けたCPU群20のCPU20P1~20Pnは、アクセラレータ50G1~50Gmの数と同数のグループを生成するように、分散配置データ列400M1~400Mkのグルーピングをするように動作する。次に、データ集約化制御部150は、CPU群20に対して、グループデータ列500M1~500Mmを、集約データ列600M1~600Mmとすることを指示するS6。指示を受けたCPU群20のCPU20P1~20Pnは、グループデータ列500M1~500Mmへアクセスし、それぞれのグループデータ列毎に、集約データ列600M1~600Mmを生成するように動作する。次に、データコピー制御部110は、CPU群20に対して共有メモリ30上の集約データ列600M1~600Mmをローカルメモリ60M1~60Mmへコピーすることを指示するS7。指示を受けたCPU群20のCPU20P1~20Pnは、共有メモリ30上の集約データ列600M1~600Mmへアクセスし、集約データ列600M1~600Mmをローカルメモリ60M1~60Mmへコピーするように動作する。次に、アクセラレータ制御部120は、CPU群20を介してアクセラレータ50G1~50Gmに対して、ローカルメモリ60M1~60Mm上の集約データ列600M1~600Mmを用いてREDUCE処理の実行を指示するS8。アクセラレータ50G1~50Gmは、ローカルメモリ60M1~60Mmに蓄積されている集約データ列600M1~600Mmを抽出し、REDUCE処理を実行する。REDUCE処理実行後のデータ列は、ローカルメモリ60M1~60Mmに一時的に蓄積され、その後、共有メモリ30にコピーされるようにしてもよい。以上説明したように、本発明の実施の形態1にかかる情報処理装置10を用いることにより、MAP処理後データ列を、情報処理装置10内に搭載されているアクセラレータの数よりも多い数のデータ列に分散配置し、分散配置されたデータ列をさらにREDUCE処理を実行するアクセラレータの数に集約配置することができる。このように、分散配置を経ることにより、通常のデータ再配置と比較して、共有メモリ上でのロック競合等を緩和することができる。さらに、MAP処理後のキーの値に基づいて、分散配置することにより、分散配置されたデータを、キーの値に基づいてグルーピングすることができる。そのため、グルーピングされたデータを集約する際におけるロック競合も最低限に抑えることができる。上述の実施の形態では、本発明をハードウェアの構成として説明したが、本発明は、これに限定されるものではない。本発明は、プロセッサ制御部100における図14のに記載の処理を、CPUCentralProcessingUnitにコンピュータプログラムを実行させることにより実現することも可能である。上述の例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体nontransitorycomputerreadablemediumを用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体tangiblestoragemediumを含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ、光磁気記録媒体例えば光磁気ディスク、CD-ROMReadOnlyMemory、CD-R、CD-R/W、半導体メモリ例えば、マスクROM、PROMProgrammableROM、EPROMErasablePROM、フラッシュROM、RAMRandomAccessMemoryを含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体transitorycomputerreadablemediumによってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。