Patents by Inventor Shaul Yifrach

Shaul Yifrach 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).

  • Publication number: 20200314011
    Abstract: Flexible schemes for adding rules to a NIC pipeline and associated apparatus. Multiple match-action tables are implemented in host memory of a platform defining actions to be taken for matching packet flows. A packet processing pipeline and an exact match (EM) cache is implemented on a network interface, such as a NIC, installed in the platform. A portion of the match-action entries in the host memory match-action tables are cached in the EM cache. Received packets are processed to generate a key that is used as a lookup for the EM cache. If a match is found, the action is taken. For a miss, the key is forwarded to the host software and the match-action tables are searched. For a match, the action is taken, and the entry is added to the EM cache. If no match is found, a new match-action entry is added to a match-action table. Aging-out mechanisms are used for the match-action tables and the EM cache. A multi-hash scheme is used to that supports a very large number of match-action entries.
    Type: Application
    Filed: June 16, 2020
    Publication date: October 1, 2020
    Inventors: Manasi Deval, Elazar Cohen, Shaul Yifrach, Parthasarathy Sarangam
  • Patent number: 8949530
    Abstract: Systems and methods are disclosed for improving the performance of cache memory in a computer system by dynamically selecting an index for caching main memory while an application is running. A disclosed example of a memory system includes a cache including a data array, a primary tag array, and at least one secondary tag array. A currently selected index is used to index data bits to the data array and tag bits to the primary tag array. The performance of at least one candidate index is evaluated by indexing tag bits to the secondary tag array, without caching any data using the candidate index while the candidate index is under evaluation. If the candidate index has a better hit rate than the currently selected index, the memory system switches to using the candidate index to cache data.
    Type: Grant
    Filed: August 2, 2011
    Date of Patent: February 3, 2015
    Assignee: International Business Machines Corporation
    Inventors: Mvv A. Krishna, Shaul Yifrach
  • Publication number: 20130036271
    Abstract: Systems and methods are disclosed for improving the performance of cache memory in a computer system by dynamically selecting an index for caching main memory while an application is running. A disclosed example of a memory system includes a cache including a data array, a primary tag array, and at least one secondary tag array. A currently selected index is used to index data bits to the data array and tag bits to the primary tag array. The performance of at least one candidate index is evaluated by indexing tag bits to the secondary tag array, without caching any data using the candidate index while the candidate index is under evaluation. If the candidate index has a better hit rate than the currently selected index, the memory system switches to using the candidate index to cache data.
    Type: Application
    Filed: August 2, 2011
    Publication date: February 7, 2013
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: MVV A. Krishna, Shaul Yifrach
  • Publication number: 20120124291
    Abstract: A selective cache includes a set configured to receive data evicted from a number of primary sets of a primary cache. The selective cache also includes a counter associated with the set. The counter is configured to indicate a frequency of access to data within the set. A decision whether to replace data in the set with data from one of the primary sets is based on a value of the counter.
    Type: Application
    Filed: November 16, 2010
    Publication date: May 17, 2012
    Applicant: International Business Machines Corporation
    Inventors: Heather D. Achilles, Timothy Hume Heil, Anil Krishna, Nicholas David Lindberg, Steven Paul VanderWiel, Shaul Yifrach
  • Patent number: 7904865
    Abstract: A method placing items routing wiring pursuant to integrated circuit specifications to create an integrated circuit design. Once the initially placed design is legalized, rather that just starting wiring routing, the method identifies books in the integrated circuit design which contain blocked items. The method allows the routing process to be paused temporarily, and for the items to be moved to a certain extent. This movement process is controlled (limited according to signal power output by the associated books) so that the timing of the integrated circuit design is not affected by any such “mid-routing” movement. If the books do not have any blocked items, the process continues to route wires between the items and the books. If at any point before or during the routing of the wires it is found that the books do have blocked items, the process pauses the routing of the wires and performs any number of different processes to solve the blocked item situation (unblock the blocked items).
    Type: Grant
    Filed: January 23, 2008
    Date of Patent: March 8, 2011
    Assignee: International Business Machines Corporation
    Inventors: Shaul Yifrach, Michael Bar-Joshua, Itamar Tsachi, Boaz Yeger
  • Patent number: 7747803
    Abstract: Device, system, and method of handling delayed transactions. For example, an apparatus to handle delayed transactions in a computing system includes: a slave unit adapted to pseudo-randomly reject a request received from a master unit.
    Type: Grant
    Filed: November 28, 2007
    Date of Patent: June 29, 2010
    Assignee: International Business Machines Corporation
    Inventors: Etai Adar, Michael Bar-Joshua, Atar Peyser, Shaul Yifrach
  • Patent number: 7734854
    Abstract: Some embodiments include, for example, devices, systems, and methods of handling transactions. In some demonstrative embodiments, an apparatus to handle transactions in a computing system may include a master unit to arbitrate between read and write requests to be issued over a request bus according to at least first and second arbitration schemes. A first ratio between read and write requests issued by the master unit according to the first arbitration scheme may be different from a second ratio between read and write requests issued by the master unit according to the second arbitration scheme.
    Type: Grant
    Filed: January 4, 2008
    Date of Patent: June 8, 2010
    Assignee: International Business Machines Corporation
    Inventors: Etai Adar, Michael Bar-Joshua, Ilya Granovsky, Shaul Yifrach
  • Publication number: 20090185487
    Abstract: Embodiments herein provide a transaction level mechanism that ensures that the links are operational right in time for the data flow, so that the data flow will not be impacted by delays associated with link recovery into the operational state. The path has links that have the ability to be in an inactive mode or an active mode. The embodiments herein transmit an “activation transmission” over the path to turn on the links within the path, before sending a data transfer (comprising packetized data) to turn on (wake up) the inactive links within the path, so that the actual data transfer does not experience any such start-up or wake-up delays.
    Type: Application
    Filed: January 22, 2008
    Publication date: July 23, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Etai Adar, Michael Bar-Joshua, Ilya Granovsky, Shaul Yifrach
  • Publication number: 20090187683
    Abstract: A communications apparatus uses at least one logical communications link that comprises a plurality of lanes within a computerized hardware device. A data transfer monitor is connected to the logical communications link and measures the real-time data transfer bandwidth of the logical communications link. In addition, a link management unit or link width control unit (comparator) is connected to the lanes and to the data transfer monitor and continually compares the real-time data transfer bandwidth to a predetermined data transfer bandwidth standard. If the real-time data transfer bandwidth is below the predetermined data transfer bandwidth standard, the link management unit is adapted to perform up-configuring of the logical communications link by activating additional lanes up to a maximum number of lanes making up the logical communications link.
    Type: Application
    Filed: January 22, 2008
    Publication date: July 23, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Etai Adar, Michael Bar-Joshua, Ilya Granovsky, Shaul Yifrach
  • Publication number: 20090187870
    Abstract: A method placing items routing wiring pursuant to integrated circuit specifications to create an integrated circuit design. Once the initially placed design is legalized, rather that just starting wiring routing, the method identifies books in the integrated circuit design which contain blocked items. The method allows the routing process to be paused temporarily, and for the items to be moved to a certain extent. This movement process is controlled (limited according to signal power output by the associated books) so that the timing of the integrated circuit design is not affected by any such “mid-routing” movement. If the books do not have any blocked items, the process continues to route wires between the items and the books. If at any point before or during the routing of the wires it is found that the books do have blocked items, the process pauses the routing of the wires and performs any number of different processes to solve the blocked item situation (unblock the blocked items).
    Type: Application
    Filed: January 23, 2008
    Publication date: July 23, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Shaul Yifrach, Michael Bar-Joshua, Itamar Tsachi, Boaz Yeger
  • Patent number: 7562168
    Abstract: Optimization of a use of memory buffers of a device connected to a physical link including virtual channels (VCs) while sustaining bandwidth for communication between the device and another entity, by determining an initial allocation of memory buffers of each VC. Further, the optimization is accomplished by determining whether a next VC is active or inactive. If the VC is determined to be inactive, a number of memory buffers initially allocated to the inactive channel is determined, and the memory buffers are re-allocated between the active VCs.
    Type: Grant
    Filed: May 29, 2008
    Date of Patent: July 14, 2009
    Assignee: International Business Machines Corporation
    Inventors: Shaul Yifrach, Ilya Gransovky, Etai Adar, Giora Biran
  • Publication number: 20090177822
    Abstract: Some embodiments include, for example, devices, systems, and methods of handling transactions. In some demonstrative embodiments, an apparatus to handle transactions in a computing system may include a master unit to arbitrate between read and write requests to be issued over a request bus according to at least first and second arbitration schemes. A first ratio between read and write requests issued by the master unit according to the first arbitration scheme may be different from a second ratio between read and write requests issued by the master unit according to the second arbitration scheme.
    Type: Application
    Filed: January 4, 2008
    Publication date: July 9, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Etai Adar, Michael Bar-Joshua, Ilya Granovsky, Shaul Yifrach
  • Publication number: 20090138641
    Abstract: Device, system, and method of handling delayed transactions. For example, an apparatus to handle delayed transactions in a computing system includes: a slave unit adapted to pseudo-randomly reject a request received from a master unit.
    Type: Application
    Filed: November 28, 2007
    Publication date: May 28, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Etai Adar, Michael Bar-Joshua, Atar Peyser, Shaul Yifrach
  • Patent number: 7500062
    Abstract: A circuit arrangement and method selectively reorder speculatively issued memory read requests being communicated to a lower memory level in a multi-level memory architecture. In particular, a memory read request that has been speculatively issued to a lower memory level prior to completion of a cache lookup operation initiated in a cache memory in a higher memory level may be reordered ahead of at least one previously received and pending request awaiting communication to the lower memory level. By doing so, the latency associated with the memory read request is reduced when the request results in a cache miss in the higher level memory, and as a result, system performance is improved.
    Type: Grant
    Filed: November 17, 2005
    Date of Patent: March 3, 2009
    Assignee: International Business Machines Corporation
    Inventors: Bruce Leroy Beukema, Michael Bar-Joshua, Alexander Mesh, Shaul Yifrach
  • Patent number: 7496108
    Abstract: A method for dynamic management of Transmission Control Protocol (TCP) reassembly buffers in hardware (e.g., in a TCP/IP offload engine (TOE)). The method comprises: providing a plurality of data blocks and an indirect list; pointing, via entries in the indirect list, to allocated data blocks in the plurality of data blocks that currently store incoming data; if a free data block in the plurality of data blocks is required for the storage of incoming data, allocating the free data block for storing incoming data; and, if an allocated data block in the plurality of data blocks is no longer needed for storing incoming data, deallocating the allocated data block such that the deallocated data block becomes a free data block.
    Type: Grant
    Filed: January 7, 2004
    Date of Patent: February 24, 2009
    Assignee: International Business Machines Corporation
    Inventors: Giora Biran, Mark Epshtein, Vadim Makhervaks, Alexander Mesh, Tal Sostheim, Shaul Yifrach
  • Publication number: 20080247316
    Abstract: Disclosed is a method and circuit for a receiver to receive data from an associated data transmitter. The receiver may include a signaling module adapted to transmit a Ready-To-Receive (“RTR”) signal to the associated transmitter when a number of vacant bits in a data buffer exceeds a delay associated value.
    Type: Application
    Filed: April 3, 2007
    Publication date: October 9, 2008
    Inventors: Michael Bar-Joshua, Bruce Leroy Beukema, Alexander Mesh, Shaul Yifrach
  • Publication number: 20070113019
    Abstract: A circuit arrangement and method selectively reorder speculatively issued memory read requests being communicated to a lower memory level in a multi-level memory architecture. In particular, a memory read request that has been speculatively issued to a lower memory level prior to completion of a cache lookup operation initiated in a cache memory in a higher memory level may be reordered ahead of at least one previously received and pending request awaiting communication to the lower memory level. By doing so, the latency associated with the memory read request is reduced when the request results in a cache miss in the higher level memory, and as a result, system performance is improved.
    Type: Application
    Filed: November 17, 2005
    Publication date: May 17, 2007
    Applicant: International Business Machines Corporation
    Inventors: Bruce Beukema, Michael Bar-Joshua, Alexander Mesh, Shaul Yifrach
  • Publication number: 20060056435
    Abstract: A method of offloading, from a host data processing unit (205), iSCSI TCP/IP processing of data streams coming through at least one TCP/IP connection (3071,3072,3073), and a related iSCSI TCP/IP Offload Engine (TOE). The method including: providing a Protocol Data Unit (PDU) header queue (311) adapted to store headers (HDR11, . . . , HDR32) of iSCSI PDUs received through the at least one TCP/IP connection; monitoring the at least one TCP/IP connection for an incoming iSCSI PDU to be processed; when at least a iSCSI PDU header is received through the at least one TCP/IP connection, extracting the iSCSI PDU header from the received PDU, and placing the extracted iSCSI PDU header into the PDU header queue; looking at the PDU header queue for ascertaining the presence of iSCSI PDUs to be processed, and processing the incoming iSCSI PDU based on information in the extracted iSCSU PDU header retrieved from the PDU header queue.
    Type: Application
    Filed: September 1, 2005
    Publication date: March 16, 2006
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Giora Biran, Vadim Makhervaks, Tal Sostheim, Shaul Yifrach
  • Publication number: 20050147100
    Abstract: A method and system for dynamic management of Transmission Control Protocol (TCP) reassembly buffers in hardware (e.g., in a TCP/IP offload engine (TOE)). The method comprises: providing a plurality of data blocks and an indirect list; pointing, via entries in the indirect list, to allocated data blocks in the plurality of data blocks that currently store incoming data; if a free data block in the plurality of data blocks is required for the storage of incoming data, allocating the free data block for storing incoming data; and, if an allocated data block in the plurality of data blocks is no longer needed for storing incoming data, deallocating the allocated data block such that the deallocated data block becomes a free data block.
    Type: Application
    Filed: January 7, 2004
    Publication date: July 7, 2005
    Applicant: International Business Machines Corporation
    Inventors: Giora Biran, Mark Epshtein, Vadim Makhervaks, Alexander Mesh, Tal Sostheim, Shaul Yifrach