IP Library › Granted Patent US 12,333,138
Granted Patent B2
US 12,333,138 · App. 17/955,310 · Granted Jun 17, 2025

Computing system with distributed compute-enabled storage group and method of operation thereof

Inventors: Yangwook Kang (San Jose, CA); Yang Seok Ki (Palo Alto, CA); Dongchul Park (San Jose, CA)
Assignee: Samsung Electronics Co., Ltd.
G06F3/06G06F3/061G06F3/0614G06F3/065G06F3/067G06F11/00H04L67/1097
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,333,138
App. No.
17/955,310
Granted
Jun 17, 2025
Kind
B2
Abstract

A computing system includes: a storage device, coupled to central processing unit, includes: an in-storage processing engine configured to receive and manage application data from an application executed in a host computer, an in-storage processing coordinator, in the in-storage processing engine, configured to perform in-storage processing with formatted data, based on the application data, includes performing integer math operations, floating point math operations, Boolean operations, reorganization of data bits or symbols, and combinations thereof on the application data, and a data preprocessor, in the in-storage processing coordinator, configured to align the formatted data from the application data to return an in-storage processing output to the application for continued execution.

Claims (38)

1. A computing system comprising:

a storage device, coupled to a central processing unit, configured to generate an aggregated output from in-storage processing outputs from one or more other storage devices and return the aggregated output to an application including:

an in-storage processing engine configured to receive and manage application data from the application executed in a host computer,

an in-storage processing coordinator, in the in-storage processing engine, configured to perform in-storage processing with formatted data, based on the application data, including performing integer math operations, floating point math operations, Boolean operations, reorganization of data bits or symbols, and combinations thereof on the application data, and

a data preprocessor, in the in-storage processing coordinator, configured to align the formatted data from the application data to return an in-storage processing output to the application for continued execution.

2. The computing system as claimed in claim 1 , wherein the storage device is further configured to receive a sub-application request based on splitting of an application request from the application for performing in-storage processing.

3. The computing system as claimed in claim 1 , wherein the storage device is further configured to issue a device request, based on an application request from the application, to at least one of the other storage devices.

4. The computing system as claimed in claim 1 , wherein:

the storage device is further configured to:

issue a device request;

further comprising:

another storage device configured to:

receive the device request,

generate another device request; and

yet another storage device configured to receive the another device request.

5. The computing system as claimed in claim 1 , further comprising a storage group including the storage device, configured to send in-storage processing outputs to be aggregated and sent to the application.

6. The computing system as claimed in claim 1 , wherein the storage device is further configured to aggregate an in-storage processing output as a partial aggregated output to be returned to the application.

7. The computing system as claimed in claim 1 , wherein the storage device is further configured to generate the formatted data from the application data.

8. The computing system as claimed in claim 1 , wherein the storage device is further configured to generate a formatted unit of the formatted data with an application unit of the application data.

9. The computing system as claimed in claim 1 , wherein the storage device is further configured to generate a formatted unit of the formatted data with non-aligned instances of application units of the application data, wherein the non-aligned instances of the application units traverse multiple instances of the formatted unit.

10. A method of operation of a computing system comprising:

receiving and managing application data from an application, executed by a host computer, by an in-storage processing engine;

generating an aggregated output from in-storage processing outputs from one or more other storage devices and return the aggregated output to the application;

performing in-storage processing with formatted data, based on the application data, including performing integer math operations, floating point math operations, Boolean operations, reorganization of data bits or symbols, and combinations thereof on the application data by an in-storage processing coordinator; and

aligning the formatted data from the application data to return an in-storage processing output to the application, by a data preprocessor, for continued execution.

11. The method as claimed in claim 10 , further comprising receiving a sub-application request at the storage device based on splitting of an application request from the application for performing in-storage processing.

12. The method as claimed in claim 10 , further comprising sorting in-storage processing outputs from a storage group including the storage device.

13. The method as claimed in claim 10 , further comprising issuing a device request based on an application request from the application to a storage group including the storage device.

14. The method as claimed in claim 10 , further comprising:

issuing a device request from the storage device;

receiving the device request at another storage device;

generating another device request by the another storage device; and

receiving the another device request by yet another storage device.

15. The method as claimed in claim 10 , further comprising sending in-storage processing outputs by a storage group including the storage device to be aggregated and sent to the application.

16. The method as claimed in claim 10 , further comprising aggregating an in-storage processing output as a partial aggregated output to be returned to the application.

17. The method as claimed in claim 10 , further comprising generating the formatted data based on the application data.

18. The method as claimed in claim 10 , further comprising generating a formatted unit of the formatted data with an application unit of the application data.

19. The method as claimed in claim 10 , further comprising generating a formatted unit of the formatted data with non-aligned instances of application units of the application data, wherein the non-aligned instances of the application units traverse multiple instances of the formatted unit.

Continuity (3)
Continuation 14817815 · Aug 4, 2015
Provisional Application 62098530 · Dec 31, 2014
Related Publication 20230028569A1 · Jan 26, 2023
References Cited (52)
US 6145017A · Ghaffari · 2000 [cited by examiner]
US 6484235B1 · Horst et al. · 2002 [cited by applicant]
US 6711606B1 · Leymann et al. · 2004 [cited by applicant]
US 6804676B1 · Bains, II · 2004 [cited by applicant]
US 7047359B1 · Van Krevelen et al. · 2006 [cited by applicant]
US 7283965B1 · Michener · 2007 [cited by examiner]
US 7636801B1 · Kekre et al. · 2009 [cited by applicant]
US 8116741B2 · Helferich · 2012 [cited by examiner]
US 8205015B2 · Flynn · 2012 [cited by examiner]
US 8335859B2 · Nagpal · 2012 [cited by examiner]
US 8706755B2 · Patel · 2014 [cited by examiner]
US 8793463B2 · Moss · 2014 [cited by examiner]
US 8892677B1 · Grove · 2014 [cited by examiner]
US 9047208B1 · Moore · 2015 [cited by examiner]
US 9270944B2 · Brooks · 2016 [cited by examiner]
US 10757000B2 · Gelvin · 2020 [cited by examiner]
US 10791442B2 · Wesby · 2020 [cited by examiner]
US 10991459B2 · Ellis · 2021 [cited by examiner]
US 11256665B2 · Prahlad · 2022 [cited by examiner]
US 11573597B2 · Reeves · 2023 [cited by examiner]
US 11640359B2 · Flynn · 2023 [cited by examiner]
US 11895188B2 · Vermeulen · 2024 [cited by examiner]
US 20040186826A1 · Choi et al. · 2004 [cited by applicant]
US 20050010709A1 · Davies et al. · 2005 [cited by applicant]
US 20050071546A1 · Delaney et al. · 2005 [cited by applicant]
US 20050125625A1 · Kilian et al. · 2005 [cited by applicant]
US 20070220604A1 · Long · 2007 [cited by applicant]
US 20100185719A1 · Howard · 2010 [cited by applicant]
US 20100318549A1 · Mayr et al. · 2010 [cited by applicant]
US 20110041005A1 · Selinger · 2011 [cited by applicant]
US 20110296440A1 · Aurich et al. · 2011 [cited by applicant]
US 20120096329A1 · Taranta, II · 2012 [cited by examiner]
US 20130019072A1 · Strasser et al. · 2013 [cited by applicant]
US 20130121234A1 · Shrivastava · 2013 [cited by applicant]
US 20140189060A1 · Westphal · 2014 [cited by examiner]
US 20150120991A1 · Lee et al. · 2015 [cited by applicant]
US 20150154200A1 · Lightner et al. · 2015 [cited by applicant]
US 20150288381A1 · Dickie · 2015 [cited by examiner]
US 20160004455A1 · Iwasa · 2016 [cited by examiner]
US 20160337464A1 · Eriksson et al. · 2016 [cited by applicant]
US 20200348906A1 · Barnes, Jr. · 2020 [cited by examiner]
US 20200351341A1 · Illowsky · 2020 [cited by examiner]
US 20210334206A1 · Colgrove · 2021 [cited by examiner]
US 20220232075A1 · Emerson · 2022 [cited by examiner]
CN 106415483A · 2017 [cited by examiner]
JP 2006235960A · 2006 [cited by applicant]
WO 2012020544A1 · 2012 [cited by applicant]
Marks, Howard, “Understanding VMware VAAI Offloads and Unloads,” Mar. 26, 2014, https://www.networkcomputi ng.com/storage/understanding-vmware-vaai-offloads-and-u n loads/1578770159, Copyright © 2017 UBM, All rights res… [cited by applicant]
Jaeyoung Do, Yang-Suk Kee, Jignesh M. Patel, Chanik Park, Kwanghyun Park, David J. Dewitt, Query Processing on Smart SSDs: Opportunities and Challenges, University of Wisconsin—Madison; Samsung Electronic Corp.; Microso… [cited by applicant]
Paul Rubens, “Big Data and In-Storage Processing;” Feb. 18, 2013, http://www.enterprisestorageforum.com/storage-management/big-data-and-in-storage-processing.html (Year: 2013); Property of QuinStreet Enterprise; Copyrig… [cited by applicant]
ReclaiMe Free RAID Recovery, “What is RAID?;” 2009, http://www.freeraidrecovery.com/library/what-is-raid.aspx; Copyright © 2009-2017 www.ReclaiMe.com; 4 pages. [cited by applicant]
Intel Corporation and Seagate Technology Joint WhitePaper; “Serial ATA Native Command Queuing an Exciting New Performance Feature for Serial ATA;” Jul. 2003, https ://www.seagate.com/docs/pdf /whitepape r /D2c tech pape… [cited by applicant]