IP Library Granted Patent US 12,711,364
Granted Patent B2
US 12,711,364 · App. 17/688,288 · Granted Aug 18, 2026

Neural network operation method and apparatus with stacking-based channel alignment

Inventors: Maksim Ostapenko (Suwon-si, KR); Hanwoong Jung (Seoul, KR)
Assignee: Samsung Electronics Co., Ltd.
G06N3/063G06F13/28G06F2213/28
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 12,711,364
App. No.
17/688,288
Filed
Mar 7, 2022
Granted
Aug 18, 2026
Kind
B2
Examiner
WONG, TITUS
Art Unit
2181
USPC
710/3
Abstract

A neural network operation method and apparatus are disclosed, where the network operation method including receiving data for a neural network operation, determining whether a size of the data is less than or equal to a threshold, generating stacked data by stacking a portion of the data based on the determining, and performing the neural network operation in parallel based on the stacked data.

Claims (30)

1 . A neural network operation method comprising:

receiving data for a neural network operation, the data comprising a first map that is a feature map comprising first valid channels, and comprising a second map that is a feature map comprising second valid channels;

determining whether a size of the data is less than or equal to a threshold;

in response to a determination that the size of the data is less than or equal to the threshold, generating stacked data based on combining at least a portion of the first map with at least a portion of the second map such that a last valid channel of the first map is adjacent to a first valid channel of the second map in the stacked data; and

performing a first convolution operation for the first map and a second convolution operation for the second map in parallel using the stacked data; and

generating, in parallel, a first output of a result of the first convolution operation and a second output of a result of the second convolution operation, wherein a number of outputs generated based on a convolution operation on the stacked data is equal to a number of feature maps used to generate the stacked data.

2 . The neural network operation method of claim 1 , wherein the performing comprises performing a convolution operation between the stacked data and a stacked kernel corresponding to the stacked data.

3 . The neural network operation method of claim 1 , wherein the generating of the stacked data comprises:

generating tiles by segmenting the data to have a predetermined width or a predetermined height; and

generating the stacked data by stacking the tiles.

4 . The neural network operation method of claim 1 , wherein the generating of the stacked data comprises generating the stacked data by inputting the data to a direct memory access (DMA) engine.

5 . The neural network operation method of claim 1 , wherein the generating of the stacked data further comprises:

searching for additional data to perform a second neural network operation that is different from the neural network operation performed based on the data;

determining whether the additional data and the data are stackable; and

performing the neural network operation and the second neural network operation in parallel by stacking the additional data and the data based on a result of the determining whether the additional data and the data are stackable.

6 . A non-transitory computer-readable storage medium storing instructions that, when executed by a processor, cause the processor to perform the method of claim 1 .

7 . A neural network operation apparatus comprising:

one or more processors; and

a memory storing instructions that when executed by the one or more processors cause the neural network operation apparatus to:

determine whether a size of the data for a neural network operation is less than or equal to a threshold, the data comprising a first map that is a feature map comprising first valid channels, and comprising a second map that is a feature map comprising second valid channels,

in response to a determination that the size of the data is less than or equal to the threshold, generate stacked data based on combining at least a portion of the first map with at least a portion of the second map such that a last valid channel of the first map is adjacent to a first valid channel of the second map,

perform a first convolution operation for the first map and a second convolution operation for the second map in parallel using the stacked data, and

generate, in parallel, a first output of a result of the first convolution operation and a second output of a result of the second convolution operation, wherein a number of outputs generated based on a convolution operation on the stacked data is equal to a number of feature maps used to generate the stacked data.

8 . The neural network operation apparatus of claim 7 , wherein the instructions are further configured to cause the neural network operation apparatus to perform a convolution operation between the stacked data and a stacked kernel corresponding to the stacked data.

9 . The neural network operation apparatus of claim 7 , wherein the instructions are further configured to cause the neural network operation apparatus to:

generate tiles by segmenting the data to have a predetermined width or a predetermined height, and

generate the stacked data by stacking the tiles.

10 . The neural network operation apparatus of claim 7 , wherein the instructions are further configured to cause the neural network operation apparatus to generate the stacked data by inputting the data to a direct memory access (DMA) engine.

11 . The neural network operation method of claim 1 , wherein, in the stacked data, the first valid channel is self-contiguous and the second valid channel is self-contiguous.

12 . The neural network operation apparatus of claim 7 , wherein, in the stacked data, the first valid channel is self-contiguous and the second valid channel is self-contiguous.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 7, 2022
From: OSTAPENKO, MAKSIM; JUNG, HANWOONG
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 059186/0579 →
Priority Claims (1)
KR 10-2021-0125095 · Sep 17, 2021 · national
Continuity (1)
Related Publication 20230086316A1 · Mar 23, 2023
References Cited (30)
US 10489680B2 · Aliabadi et al. · 2019 [cited by applicant]
US 10726330B2 · Ferdman et al. · 2020 [cited by applicant]
US 11694319B2 · Kang · 2023 [cited by examiner]
US 11868872B1 · Minkin · 2024 [cited by examiner]
US 20180061058A1 · Xu · 2018 [cited by examiner]
US 20190050992A1 · Xu · 2019 [cited by examiner]
US 20190180167A1 · Huang et al. · 2019 [cited by applicant]
US 20190266485A1 · Singh · 2019 [cited by examiner]
US 20190303715A1 · Jiang · 2019 [cited by examiner]
US 20190340490A1 · Fishel · 2019 [cited by examiner]
US 20200175095A1 · Morariu · 2020 [cited by examiner]
US 20200192631A1 · Nemlekar et al. · 2020 [cited by applicant]
US 20200193277A1 · Kwon · 2020 [cited by examiner]
US 20200242422A1 · Wang · 2020 [cited by examiner]
US 20200250459A1 · Sarshogh · 2020 [cited by examiner]
US 20200327308A1 · Cheng · 2020 [cited by examiner]
US 20210004681A1 · Tate et al. · 2021 [cited by applicant]
US 20210056734A1 · Han · 2021 [cited by examiner]
US 20210097649A1 · Liu · 2021 [cited by examiner]
US 20210201147A1 · Tu · 2021 [cited by examiner]
US 20210248501A1 · Shin · 2021 [cited by applicant]
US 20210365716A1 · Li · 2021 [cited by examiner]
US 20220076056A1 · Aliabadi · 2022 [cited by examiner]
US 20220137869A1 · Kim · 2022 [cited by examiner]
US 20220147791A1 · Yao · 2022 [cited by examiner]
JP 20219622A · 2021 [cited by applicant]
JP 6856112B1 · 2021 [cited by applicant]
KR 1020190062481A · 2019 [cited by applicant]
KR 1020210100335A · 2021 [cited by applicant]
Korean Office Action issued on Sep. 27, 2024, in counterpart Korean Patent Application No. 10-2021-0125095 (3 pages in English, 6 pages in Korean). [cited by applicant]