# US 2024/0202004 A1 · Parallel processing device and operating method thereof

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2024/0202004 A1
- Document ID: US20240202004A1
- Status: Published application
- Kind: A1
- Application number: 18/361,561
- Filed: 2023-07-28
- Published: 2024-06-20
- Earliest claimed: 2022-12-14
- Assignees: Electronics and Telecommunications Research Institute
- Applicants: Electronics and Telecommunications Research Institute
- Inventors: Joo Hyun LEE
- Web page: https://patentgrep.com/patent/US20240202004A1

## CPC

- G06F 9/3885: {using a plurality of independent parallel functional units}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Provided is a parallel processing device with one or more group processors, in which each of the one or more group processors includes a plurality of instance processors configured to process a kernel execution instance for a predetermined parallel program model-based kernel, each of the plurality of instance processors includes a register storing context reference information including an identifier of a group processor to which the instance processor belongs and an identifier of the instance processor, and each of the plurality of instance processors executes the kernel by reading execution context data, which is stored in a memory for execution of the kernel, using the context reference instance.

## Claims

### Claim 1

A parallel processing device comprising one or more group processors, wherein:
each of the one or more group processors comprises a plurality of instance processors configured to process a kernel execution instance for a predetermined parallel program model-based kernel;
each of the plurality of instance processors comprises a register storing context reference information including an identifier of a group processor to which the instance processor belongs and an identifier of the instance processor; and
each of the plurality of instance processors executes the kernel by reading execution context data, which is stored in a memory for execution of the kernel, using the context reference instance.

### Claim 2 (depends on 1)

The parallel processing device of claim 1, wherein a plurality of sets of kernel execution instances are defined as a kernel execution group, and
the execution context data comprises first data for compatibility between the instance processor and the parallel program model and second data for transmission of parameters necessary to execute the kernel.

### Claim 3 (depends on 2)

The parallel processing device of claim 2, wherein the execution context data comprises group context data and instance context data that are obtained by structuralizing the first data and the second data for the kernel execution group and the kernel execution instance.

### Claim 4 (depends on 3)

The parallel processing device of claim 3, wherein, one piece of group context data is generated for a certain group processor, a plurality of pieces of instance context data are generated as many as the number of instance processors included in the group processor, and
the one piece of group context data and the plurality of pieces of instance context data form an execution context data subset.

### Claim 5 (depends on 4)

The parallel processing device of claim 4, wherein a plurality of execution context data subsets are generated as many as the number of group processors.

### Claim 6 (depends on 4)

The parallel processing device of claim 4, wherein, based on the group processor, the group context data is data shared by all the instance processors included in the group processor, and the instance context data is data independently used by the instance processors.

### Claim 7 (depends on 4)

The parallel processing device of claim 4, wherein, in the register, an address area for allocating an address value of the memory is defined, and
a first address value of a command for executing the kernel stored in the memory and a second address value of the execution context data stored in the memory are stored in an address area of the register.

### Claim 8 (depends on 7)

The parallel processing device of claim 7, wherein, based on a certain instance processor, the instance processor reads a command for executing the kernel using the first address value to trigger the execution of the kernel, identifies a location of the execution context data stored in the memory using the second address value, reads group context data and instance context data corresponding to the instance processor using the context reference information, and executes the kernel.

### Claim 9 (depends on 1)

The parallel processing device of claim 1, wherein the parallel program model comprises an open computing language (OpenCL) framework, and the instance processor comprises a reduced instruction set computer-five (RISC-V) core.

### Claim 10

An operating method of a parallel processing device including one or more group processors, each of which includes a plurality of instance processors for processing a kernel execution instance for a predetermined parallel program model-based kernel in which each of the plurality of instance processors includes a register storing context reference information including an identifier of a group processor to which the instance processor belongs and an identifier of the instance processor, the operating method comprising:
triggering, by each of the instance processors, execution of the kernel by reading a kernel execution instance stored in a memory;
reading, by each of the instance processors, execution context data, which is stored in the memory for execution of the kernel, using the context reference information; and
executing, by each of the instance processors, the kernel using the read execution context data.
