IP Library Granted Patent US 9,639,337
Granted Patent B2
US 9,639,337 · App. 13/529,973 · Granted May 2, 2017

Arithmetic and control unit, arithmethic and control method, program and parallel processor

Inventor: Shorin Kyo (Kanagawa, JP)
Assignee: RENESAS ELECTRONICS CORPORATION
G06F8/453G06F8/423
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,639,337
App. No.
13/529,973
Granted
May 2, 2017
Kind
B2
Abstract

An attribute group storage unit acquires and holds attribute groups set to respective data blocks. A scenario determination unit determines respective transfer systems of the respective blocks between a memory of the lowest hierarchy and a memory of another hierarchy based on those attribute groups and a configuration of an arithmetic unit which is the parallel processor, and controls the transfer of the respective data blocks according to the determined transfer systems, and the parallel arithmetic operation corresponding to the transfer. Each of the attribute groups is necessary to determine the transfer systems, and includes one or more attributes not depending on the configuration of the parallel processor. The attribute groups of the write blocks are set assuming that each of the write blocks has already been located in the memory of another hierarchy, and is transferred to the memory of the lowest hierarchy.

Claims (26)

1. An arithmetic and control unit that controls a parallel arithmetic operation by a plurality of arithmetic elements of a parallel processor including the plurality of arithmetic elements, and a plurality of memories different in hierarchy which are disposed for the plurality of arithmetic elements, the arithmetic and control unit comprising:

an attribute group holding unit that acquires and holds attribute groups designated for respective data blocks of arithmetic subject and arithmetic result, the data blocks of arithmetic subject comprising read blocks in which data to be subjected to the parallel arithmetic operation is transferred to a memory of another hierarchy in the read blocks stored in a memory of a lowest hierarchy among the plurality of memories, and the data blocks of arithmetic result comprising write blocks that include an arithmetic result of the parallel arithmetic operation conducted on the read blocks in the write blocks which are transferred from the memory of the another hierarchy to the memory of the lowest hierarchy after the parallel arithmetic operation; and

a scenario determination unit that determines respective transfer systems of the read blocks and the write blocks on a basis of the respective attribute groups held by the attribute group holding unit, and a configuration parameter representing a configuration of the parallel processor, and controls the transfer of the read blocks and the write blocks according to the determined transfer systems, and the parallel arithmetic operation corresponding to the transfer,

wherein each of the attribute groups is necessary to determine the transfer systems, and includes one or more attributes not depending on the configuration of the parallel processor, and

wherein the attribute groups of the write blocks are set assuming that each of the write blocks has already been located in the memory of the another hierarchy, and is transferred to the memory of the lowest hierarchy.

2. The arithmetic and control unit according to claim 1 , wherein the parallel processor comprises an OpenCL (open computing language) device, and each of the attribute groups is set as an argument of a Kernel.

3. An arithmetic and control method that controls a parallel arithmetic operation by a plurality of arithmetic elements of a parallel processor including the plurality of arithmetic elements, and a plurality of memories different in hierarchy which are disposed for the plurality of arithmetic elements, the arithmetic and control method comprising:

acquiring and holding attribute groups designated for respective data blocks of arithmetic subject and arithmetic result, the data blocks of arithmetic subject comprising read blocks in which data to be subjected to the parallel arithmetic operation is transferred to a memory of another hierarchy in the read blocks stored in a memory of a lowest hierarchy among the plurality of memories, and the data blocks of arithmetic result comprising write blocks that include an arithmetic result of the parallel arithmetic operation conducted on the read blocks in the write blocks which are transferred from the memory of the another hierarchy to the memory of the lowest hierarchy after the parallel arithmetic operation; and

determining respective transfer systems of the read blocks and the write blocks on a basis of the respective held attribute groups, and a configuration parameter representing a configuration of the parallel processor, and controlling the transfer of the read blocks and the write blocks according to the determined transfer systems, and the parallel arithmetic operation corresponding to the transfer,

wherein each of the attribute groups is necessary to determine the transfer systems, and includes one or more attributes not depending on the configuration of the parallel processor, and

wherein the attribute groups of the write blocks are set assuming that each of the write blocks has already been located in the memory of the another hierarchy, and is transferred to the memory of the lowest hierarchy.

4. The arithmetic and control method according to claim 3 , wherein the parallel processor comprises an OpenCL (open computing language) device, and each of the attribute groups is set as an argument of a Kernel.

5. A non-transitory computer readable medium storing a program causing a computer to execute a process for controlling a parallel arithmetic operation by a plurality of arithmetic elements of a parallel processor including the plurality of arithmetic elements, and a plurality of memories different in hierarchy which are disposed for the plurality of arithmetic elements, the process comprising:

acquiring and holding attribute groups designated for respective data blocks of arithmetic subject and arithmetic result, the data blocks of arithmetic subject comprising read blocks in which data to be subjected to the parallel arithmetic operation is transferred to a memory of another hierarchy in the read blocks stored in a memory of a lowest hierarchy among the plurality of memories, and the data blocks of arithmetic result comprising write blocks that include an arithmetic result of the parallel arithmetic operation conducted on the read blocks in the write blocks which are transferred from the memory of the another hierarchy to the memory of the lowest hierarchy after the parallel arithmetic operation; and

determining respective transfer systems of the read blocks and the write blocks on a basis of the respective held attribute groups, and a configuration parameter representing a configuration of the parallel processor, and controlling the transfer of the read blocks and the write blocks according to the determined transfer systems, and the parallel arithmetic operation corresponding to the transfer,

wherein each of the attribute groups is necessary to determine the transfer systems, and includes one or more attributes not depending on the configuration of the parallel processor, and

wherein the attribute groups of the write blocks are set assuming that each of the write blocks has already been located in the memory of the another hierarchy, and is transferred to the memory of the lowest hierarchy.

6. The non-transitory computer readable medium according to claim 5 , wherein the parallel processor comprises an OpenCL (open computing language) device, and each of the attribute groups is set as an argument of a Kernel.

7. A parallel processor, comprising:

a plurality of arithmetic elements, a plurality of memories different in hierarchy which are disposed for the plurality of arithmetic elements; and

an arithmetic controller that controls a parallel arithmetic operation by the arithmetic elements, the arithmetic controller including:

an attribute group holding unit that acquires and holds attribute groups designated for respective data blocks of arithmetic subject and arithmetic result, the data blocks of arithmetic subject comprising read blocks in which data to be subjected to the parallel arithmetic operation is transferred to a memory of another hierarchy in the read blocks stored in a memory of a lowest hierarchy among the plurality of memories, and the data blocks of arithmetic result comprising write blocks that include an arithmetic result of the parallel arithmetic operation conducted on the read blocks in the write blocks which are transferred from the memory of the another hierarchy to the memory of the lowest hierarchy after the parallel arithmetic operation; and

a scenario determination unit that determines respective transfer systems of the read blocks and the write blocks on a basis of the respective attribute groups held by the attribute group holding unit, and a configuration parameter representing a configuration of the parallel processor, and controls the transfer of the read blocks and the write blocks according to the determined transfer systems, and the parallel arithmetic operation corresponding to the transfer,

wherein each of the attribute groups is necessary to determine the transfer systems, and includes one or more attributes not depending on the configuration of the parallel processor, and

wherein the attribute groups of the write blocks are set assuming that each of the write blocks has already been located in the memory of the another hierarchy, and is transferred to the memory of the lowest hierarchy.

8. The parallel processor according to claim 7 , wherein the parallel processor comprises an OpenCL (open computing language) device, and each of the attribute groups is set as an argument of a Kernel.

Assignments (2)
CHANGE OF ADDRESS Recorded Nov 29, 2017
From: RENESAS ELECTRONICS CORPORATION
To: RENESAS ELECTRONICS CORPORATION
Reel/Frame 044928/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 22, 2012
From: KYO, SHORIN
To: RENESAS ELECTRONICS CORPORATION
Reel/Frame 028466/0458 →
Priority Claims (1)
JP 2011-159396 · Jul 20, 2011 · national
Continuity (1)
Related Publication 20130024667A1 · Jan 24, 2013