Patents by Inventor Magne Vigulf Sandven
Magne Vigulf Sandven has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 10027776Abstract: A method for managing a distributed cache of a host channel adapter (HCA) that includes receiving a work request including a QP number, determining that a QP state identified by the QP number is not in the distributed cache, retrieving the QP state from main memory, and identifying a first portion and a second portion of the QP state. The method further includes storing the first portion into a first entry of a first sub-cache block associated with the first module, where the first entry is identified by a QP index number, storing the second portion into a second entry of a second sub-cache block associated with the second module, where the second entry is identified by the QP index number; and returning the QP index number of the QP state to the first module and the second module.Type: GrantFiled: June 7, 2016Date of Patent: July 17, 2018Assignee: Oracle International CorporationInventors: Brian Edward Manula, Magne Vigulf Sandven
-
Publication number: 20160285994Abstract: A method for managing a distributed cache of a host channel adapter (HCA) that includes receiving a work request including a QP number, determining that a QP state identified by the QP number is not in the distributed cache, retrieving the QP state from main memory, and identifying a first portion and a second portion of the QP state. The method further includes storing the first portion into a first entry of a first sub-cache block associated with the first module, where the first entry is identified by a QP index number, storing the second portion into a second entry of a second sub-cache block associated with the second module, where the second entry is identified by the QP index number; and returning the QP index number of the QP state to the first module and the second module.Type: ApplicationFiled: June 7, 2016Publication date: September 29, 2016Inventors: Brian Edward Manula, Magne Vigulf Sandven
-
Patent number: 9384072Abstract: A method for managing a distributed cache of a host channel adapter (HCA) that includes receiving a work request including a QP number, determining that a QP state identified by the QP number is not in the distributed cache, retrieving the QP state from main memory, and identifying a first portion and a second portion of the QP state. The method further includes storing the first portion into a first entry of a first sub-cache block associated with the first module, where the first entry is identified by a QP index number, storing the second portion into a second entry of a second sub-cache block associated with the second module, where the second entry is identified by the QP index number; and returning the QP index number of the QP state to the first module and the second module.Type: GrantFiled: December 20, 2012Date of Patent: July 5, 2016Assignee: Oracle International CorporationInventors: Brian Edward Manula, Magne Vigulf Sandven
-
Patent number: 9191452Abstract: A method for optimizing completion building is disclosed. The method involves receiving a work request by a host channel adapter (HCA), caching a portion of the work request in a completion cache in the HCA, wherein the cached portion of the work request includes information for building a completion for the work request, receiving, by the HCA, a response to the work request, querying the completion cache upon receiving the response to the work request to obtain the cached portion of the work request, and building the completion for the work request using the cached portion of the work request, wherein the completion informs a software application of at least a status of the work request as executed by the HCA.Type: GrantFiled: December 20, 2012Date of Patent: November 17, 2015Assignee: Oracle International CorporationInventors: Brian Edward Manula, Magne Vigulf Sandven, Haakon Ording Bugge
-
Patent number: 9069633Abstract: A method for offloading includes a host channel adapter (HCA) receiving a first work request identifying a queue pair (QP), making a first determination that the QP is a proxy QP, and offloading the first work request to a proxy central processing unit (CPU) based on the first determination and based on the first work request satisfying a filter criterion. The HCA further receives a second work request identifying the QP, processes the second work request without offloading based on the QP being a proxy QP and based on the first work request failing to satisfy the filter criterion. The HCA redirects a first completion for the first work request and a second completion for the second work request to the proxy CPU based on the first determination. The proxy CPU processes the first completion and the second completion in order.Type: GrantFiled: December 20, 2012Date of Patent: June 30, 2015Assignee: Oracle America, Inc.Inventors: Brian Edward Manula, Haakon Ording Bugge, Magne Vigulf Sandven
-
Patent number: 8804752Abstract: A method for temporary storage of data units including receiving a first data unit to store in a hardware linked list queue on a communications adapter, reading a first index value from the first data unit, determining that the first index value does match an existing index value of a first linked list, and storing the first data unit in the hardware linked list queue as a member of the first linked list. The method further includes receiving a second data unit, reading a second index value from the second data unit, determining that the second index value does not match any existing index value, allocating space in the hardware linked list queue for a second linked list, and storing the second data unit in the second linked list.Type: GrantFiled: May 31, 2011Date of Patent: August 12, 2014Assignee: Oracle International CorporationInventors: Brian Edward Manula, Magne Vigulf Sandven, Haakon Ording Bugge
-
Publication number: 20140181241Abstract: A method for optimizing completion building is disclosed. The method involves receiving a work request by a host channel adapter (HCA), caching a portion of the work request in a completion cache in the HCA, wherein the cached portion of the work request includes information for building a completion for the work request, receiving, by the HCA, a response to the work request, querying the completion cache upon receiving the response to the work request to obtain the cached portion of the work request, and building the completion for the work request using the cached portion of the work request, wherein the completion informs a software application of at least a status of the work request as executed by the HCA.Type: ApplicationFiled: December 20, 2012Publication date: June 26, 2014Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Brian Edward Manula, Magne Vigulf Sandven, Haakon Ording Bugge
-
Publication number: 20140181823Abstract: A method for offloading includes a host channel adapter (HCA) receiving a first work request identifying a queue pair (QP), making a first determination that the QP is a proxy QP, and offloading the first work request to a proxy central processing unit (CPU) based on the first determination and based on the first work request satisfying a filter criterion. The HCA further receives a second work request identifying the QP, processes the second work request without offloading based on the QP being a proxy QP and based on the first work request failing to satisfy the filter criterion. The HCA redirects a first completion for the first work request and a second completion for the second work request to the proxy CPU based on the first determination. The proxy CPU processes the first completion and the second completion in order.Type: ApplicationFiled: December 20, 2012Publication date: June 26, 2014Applicant: Oracle International CorporationInventors: Brian Edward Manula, Haakon Ording Bugge, Magne Vigulf Sandven
-
Publication number: 20140181232Abstract: A method for managing a distributed cache of a host channel adapter (HCA) that includes receiving a work request including a QP number, determining that a QP state identified by the QP number is not in the distributed cache, retrieving the QP state from main memory, and identifying a first portion and a second portion of the QP state. The method further includes storing the first portion into a first entry of a first sub-cache block associated with the first module, where the first entry is identified by a QP index number, storing the second portion into a second entry of a second sub-cache block associated with the second module, where the second entry is identified by the QP index number; and returning the QP index number of the QP state to the first module and the second module.Type: ApplicationFiled: December 20, 2012Publication date: June 26, 2014Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Brian Edward Manula, Magne Vigulf Sandven
-
Patent number: 8589610Abstract: A method for processing commands on a host channel adapter includes a host channel adapter receiving data from a host connected to the host channel adapter. The command includes an instruction, identification of packet data, and a length field. The host channel adapter extracts a length of the command from the length field, generates a scoreboard mask based on the length, where the scoreboard mask includes unused bits in the scoreboard preset, and sets, with each portion of the data received, a corresponding bit in a scoreboard. The host channel adapter further determines that the size of the data received for the command matches the length using the scoreboard, issues a kick on the host channel adapter when a size of the data received for the command matches the length, executes, in response to the kick, the instruction on a pipeline, and sends the packet data on a network.Type: GrantFiled: May 31, 2011Date of Patent: November 19, 2013Assignee: Oracle International CorporationInventors: Brian Edward Manula, Magne Vigulf Sandven, Haakon Ording Bugge
-
Patent number: 8484392Abstract: A method for allocating resources of a host channel adapter includes the host channel adapter identifying an underlying function referenced in the first resource allocation request received from a virtual machine manager, determining that the first resource allocation request specifies a number of physical collect buffers (PCBs) allocated to the underlying function, allocating the number of PCBs to the underlying function, determining that the first resource allocation request specifies a number of virtual collect buffers (VCBs) allocated to the underlying function, and allocating the number of VCBs to the underlying function. The host channel adapter further receives command data for a command from the single virtual machine, determines that the underlying function has in use at least the number of PCBs when the command data is received, and drops the command data in the first command based on the underlying function having in use at least the number of PCBs.Type: GrantFiled: May 31, 2011Date of Patent: July 9, 2013Assignee: Oracle International CorporationInventors: Brian Edward Manula, Magne Vigulf Sandven, Haakon Ording Bugge, Ola Torudbakken
-
Publication number: 20120311208Abstract: A method for processing commands on a host channel adapter includes a host channel adapter receiving data from a host connected to the host channel adapter. The command includes an instruction, identification of packet data, and a length field. The host channel adapter extracts a length of the command from the length field, generates a scoreboard mask based on the length, where the scoreboard mask includes unused bits in the scoreboard preset, and sets, with each portion of the data received, a corresponding bit in a scoreboard. The host channel adapter further determines that the size of the data received for the command matches the length using the scoreboard, issues a kick on the host channel adapter when a size of the data received for the command matches the length, executes, in response to the kick, the instruction on a pipeline, and sends the packet data on a network.Type: ApplicationFiled: May 31, 2011Publication date: December 6, 2012Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Brian Edward Manula, Magne Vigulf Sandven, Haakon Ording Bugge
-
Publication number: 20120311597Abstract: A method for allocating resources of a host channel adapter includes the host channel adapter identifying an underlying function referenced in the first resource allocation request received from a virtual machine manager, determining that the first resource allocation request specifies a number of physical collect buffers (PCBs) allocated to the underlying function, allocating the number of PCBs to the underlying function, determining that the first resource allocation request specifies a number of virtual collect buffers (VCBs) allocated to the underlying function, and allocating the number of VCBs to the underlying function. The host channel adapter further receives command data for a command from the single virtual machine, determines that the underlying function has in use at least the number of PCBs when the command data is received, and drops the command data in the first command based on the underlying function having in use at least the number of PCBs.Type: ApplicationFiled: May 31, 2011Publication date: December 6, 2012Inventors: Brian Edward Manula, Magne Vigulf Sandven, Haakon Ording Bugge, Ola Torudbakken
-
Publication number: 20120307838Abstract: A method for temporary storage of data units including receiving a first data unit to store in a hardware linked list queue on a communications adapter, reading a first index value from the first data unit, determining that the first index value does match an existing index value of a first linked list, and storing the first data unit in the hardware linked list queue as a member of the first linked list. The method further includes receiving a second data unit, reading a second index value from the second data unit, determining that the second index value does not match any existing index value, allocating space in the hardware linked list queue for a second linked list, and storing the second data unit in the second linked list.Type: ApplicationFiled: May 31, 2011Publication date: December 6, 2012Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Brian Edward Manula, Magne Vigulf Sandven, Haakon Ording Bugge
-
Patent number: 7424565Abstract: An interconnect apparatus includes a transaction packet buffer and control logic. The control logic can be operable sequentially to write transaction packets for transmission to the transaction packet buffer and to transmit the buffered transaction packets in sequence to a destination. The control logic can further be operable on receipt of a control packet indicative of non-receipt by the destination of a transmitted transaction packet to retransmit the non-received transaction packet and transaction packets transmitted from the transaction packet buffer subsequent to the non-received transaction packet.Type: GrantFiled: November 16, 2005Date of Patent: September 9, 2008Assignee: Sun Microsystems, Inc.Inventors: Magne Vigulf Sandven, Morten Schanke, Brian Edward Manula
-
Patent number: 7424567Abstract: An interconnect apparatus provides for the buffering of information among a plurality of retry buffers in an output port. An additional buffer is dynamically assignable to one of the N retry buffer means where additional capacity is required by that retry buffer.Type: GrantFiled: November 16, 2005Date of Patent: September 9, 2008Assignee: Sun Microsystems, Inc.Inventors: Brian Edward Manula, Magne Vigulf Sandven, Marius Gimle
-
Patent number: 7424566Abstract: An interconnect apparatus provides for the buffering of information in respective transaction buffers according to transaction type. An additional buffer is dynamically assignable to one of the transaction buffers where additional capacity is required by that transaction buffer.Type: GrantFiled: November 16, 2005Date of Patent: September 9, 2008Assignee: Sun Microsystems, Inc.Inventors: Brian Edward Manula, Magne Vigulf Sandven, Ali Bozkaya