DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Response to Amendment and Arguments
Applicant’s amendment filed on August 13, 2026 has been entered and made of record. Claims 1-5, 7-16, and 18-22 are pending and are being examined in this application.
Applicant’s arguments with respect to the 103 rejections have been considered, but are moot in view of the new ground(s) of rejection provided below.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1-3, 8-14, and 19-22 are rejected under 35 U.S.C. 103 as being unpatentable over Kamble et al. (US Pub. 20160217104) in view of Yang (US Pub. 20190005606) and further in view of Susarla et al. (US Pub. 20140136456).
Referring to claim 1, Kamble discloses A method comprising:
enabling, within a…infrastructure comprising a storage system and a plurality of processing devices [fig. 7; pars. 59 and 70; an NVM (non-volatile memory) cluster comprises a plurality of nodes, each node having a host-based (i.e., local) NVM; any node in the NVM cluster is able to access the local NVMs of other nodes in the NVM cluster], a direct data path between the storage system and memory of one or more of the plurality of processing devices for a…workload to be executed on the plurality of processing devices [fig. 7; pars. 26, 67-70, and 82-87; the NVM cluster provides storage for an application (i.e., workload); nodes in the NVM cluster are able to directly send remote access requests / data to other nodes in the NVM cluster via RDMA];
configuring remote direct memory access (RDMA) to transfer data between the storage system and the memory of the one or more processing devices while bypassing host memory [fig. 7; pars. 60-70; a first node in the NVM cluster boots and initiates the NVM cluster, then shares cluster details with other nodes in the NVM cluster; a second node joins the NVM cluster by mapping its local NVM via RDMA to the other nodes in the NVM cluster]; and
executing data transfers for the…workload over the direct data path [fig. 7; pars. 70 and 83-87; data is sent from a shared NVM on the first node to a shared NVM on the second node via RDMA].
Kamble does not appear to explicitly disclose that the infrastructure is a machine learning infrastructure; and that the workload is a machine learning workload; and providing multi-protocol access to a same dataset accessed by the machine learning workload through one or more file protocols and through an object protocol.
However, Yang discloses that the infrastructure is a machine learning infrastructure; and that the workload is a machine learning workload [pars. 19, 21, and 40; a user application transfers data between GPU memory and a storage device, without having the data processed by a CPU and without having the data copied to a CPU memory; the user application may be a machine learning program having artificial intelligence capabilities].
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the NVM cluster taught by Kamble so that the application that the NVM cluster provides storage for is a machine learning program as taught by Yang, with a reasonable expectation of success. The motivation for doing so would have been to provide artificial intelligence capabilities [Yang, pars. 21 and 40].
Kamble and Yang do not appear to explicitly disclose providing multi-protocol access to a same dataset accessed by the machine learning workload through one or more file protocols and through an object protocol.
However, Susarla discloses providing multi-protocol access to a same dataset accessed by the machine learning workload through one or more file protocols and through an object protocol [pars. 4, 5, and 9; a storage system architecture comprises a plurality of storage systems configured to service many servers; storage objects in a storage cluster are configured to store content of data containers, such as files and logical units (e.g., blocks), served by the cluster in response to multi-protocol data access requests issued by the servers; the storage cluster services numerous workloads of different types].
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the NVM cluster taught by Kamble and Yang so that the NVM cluster can service multi-protocol data access requests as taught by Susarla, with a reasonable expectation of success. The motivation for doing so would have been to allow many servers to access data containers stored in a storage system via both file-based and block-based protocols [Susarla, par. 4].
Referring to claim 2, Kamble discloses The method of claim 1, wherein the plurality of processing devices comprises a plurality of graphical processing units (GPUs) [par. 97; the plurality of nodes may be GPUs].
Referring to claim 3, Yang discloses The method of claim 1, further comprising: enabling a vendor-specific input/output (I/O) feature for the storage system to support the direct data path [pars. 22 and 36-45; a GPU driver enables the user application to use function calls to access functions of a GPU such as direct input/output operations by allocating GPU virtual memory (i.e., a user-space) to the user application].
Referring to claim 8, Kamble discloses The method of claim 1, further comprising: configuring processing device-accessible endpoints for the direct data path to utilize RDMA on designated network interfaces [figs. 5 and 7; note network storage appliance with NIC].
Referring to claim 9, Kamble discloses The method of claim 1, further comprising: deploying the machine learning infrastructure in a configuration interoperable with a graphical processing unit (GPU) cluster architecture [par. 97; the plurality of nodes in the NVM cluster may be GPUs].
Referring to claim 10, Yang discloses The method of claim 1, further comprising: operating the direct data path to reduce central processing unit (CPU) utilization associated with data movement for the machine learning workload relative to a host-memory copy path [par. 19; note the user application transfers data between GPU memory and the storage device, without having the data processed by the CPU and without having the data copied to the CPU memory].
Referring to claim 11, Kamble discloses The method of claim 1, further comprising: performing the data transfers for the machine learning workload over RDMA fabrics selected from InfiniBand and RDMA over Converged Ethernet (RoCE) [pars. 43 and 44; communication protocols include RoCE and Infiniband].
Referring to claim 12, see at least the rejection for claim 1. Kamble further discloses A system comprising: a plurality of processing devices; and a system controller, operatively coupled to the plurality of processing devices, configured to perform the claimed steps [figs. 5 and 7; note the plurality of nodes and network storage appliance with NIC].
Referring to claim 13, see the rejection for claim 2.
Referring to claim 14, see the rejection for claim 3.
Referring to claim 19, see the rejection for claim 8.
Referring to claim 20, see at least the rejection for claim 1. Kamble further discloses A non-transitory computer readable storage medium storing instructions which, when executed, cause a system controller to perform the claimed steps [figs. 5 and 7; note the plurality of nodes and network storage appliance with NIC].
Referring to claim 21, see the rejection for claim 2.
Referring to claim 22, see the rejection for claim 3.
Claims 4, 5, 7, 15, 16, and 18 are rejected under 35 U.S.C. 103 as being unpatentable over Kamble, Yang, and Susarla in view of Considine et al. (US Pub. 20040117438).
Referring to claim 4, Kamble, Yang, and Susarla do not appear to explicitly disclose The method of claim 1, further comprising: selecting, for a given dataset, between the direct data path and a network file or object protocol to access the dataset.
However, Considine discloses The method of claim 1, further comprising: selecting, for a given dataset, between the direct data path and a network file or object protocol to access the dataset [abstract; pars. 23, 77, 85, 87, 291, 933, 945, 947, 960, 970, 971, and 1061; in response a storage connection request, a switch system selects a set of processors for processing the storage connection request in accordance with a protocol utilized by the set of processors; the storage connection request is routed via a fast-path (e.g., via RDMA) or a slow-path (e.g., via system CPU); an internal services layer provides protocol mediation, supports NAS, and switching and routing; LAN-attached servers are provided with access to block-oriented storage; NAS functions include support for NFS provided over UDP or TCP and CIFS / SMB; a single storage system can be used for both file and block storage access].
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the NVM cluster taught by the combination of Kamble, Yang, and Susarla to include the protocol mediation, switching, and routing taught by Considine, with a reasonable expectation of success. The motivation for doing so would have been to simplify and improve storage in digital networks [Considine, pars. 15 and 16].
Referring to claim 5, Considine discloses The method of claim 4, further comprising: selecting among portable operating system interface (POSIX) file, network file system (NFS), server message block (SMB), and simple storage service (S3) object protocols to access the dataset when the direct data path is not selected [abstract; pars. 23, 77, 85, 87, 291, 933, 945, 947, 960, 970, 971, and 1061; when the fast-path conditions are not met or the fast-path returns an error, the slow-path is used; note access to block-oriented storage and support for NFS provided over UDP or TCP and CIFS / SMB].
Referring to claim 7, Kamble discloses The method of claim 1, further comprising: detecting a failure condition for the RDMA transfer on the direct data path and retrying the access using a compatibility mode that routes the access via a non-RDMA path [abstract; pars. 23, 77, 85, 87, 291, 933, 945, 947, 960, 970, 971, and 1061; when the fast-path conditions are not met or the fast-path returns an error, the slow-path is used].
Referring to claim 15, see the rejection for claim 4.
Referring to claim 16, see the rejection for claim 5.
Referring to claim 18, see the rejection for claim 7.
Conclusion
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Contact Information
Any inquiry concerning this communication or earlier communications from the examiner should be directed to GRACE PARK whose telephone number is (571)270-7727. The examiner can normally be reached M-F 8AM-5PM.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, TAMARA KYLE can be reached at (571)272-4241. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/Grace Park/Primary Examiner, Art Unit 2144