Patents by Inventor Jonathan Hsieh
Jonathan Hsieh 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: 11243774Abstract: Methods, systems and computer program products for dynamically selecting an OSC hazard avoidance mechanism are provided. Aspects include receiving a load instruction that is associated with an operand store compare (OSC) prediction. The OSC prediction is stored in an entry of an OSC history table (OHT) and includes a multiple dependencies indicator (MDI). Responsive to determining the MDI is in a first state, aspects include applying a first OSC hazard avoidance mechanism in relation to the load instruction. Responsive to determining that the load instruction is dependent on more than one store instruction, aspects include placing the MDI in a second state. The MDI being in the second state provides an indication to apply a second OSC hazard avoidance mechanism in relation to the load instruction.Type: GrantFiled: March 20, 2019Date of Patent: February 8, 2022Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: James Raymond Cuffney, Adam Collura, James Bonanno, Edward Malley, Anthony Saporito, Jang-Soo Lee, Michael Cadigan, Jr., Jonathan Hsieh
-
Patent number: 11150902Abstract: Systems and methods of performing processor pipeline management include receiving an instruction for processing, determining that data in a first memory sub-group of a memory group needed to process the instruction is not available in a cache that ensures fixed latency access, and determining that the instruction should be put in a sleep state. The sleep state indicates that the instruction will not be reissued until the instruction is moved to a wakeup state. The methods also include associating the instruction with a ticket identifier (ID) that corresponds with a second memory sub-group of the memory group, and moving the instruction to the wakeup state based on the second memory sub-group of the memory group being moved into the cache.Type: GrantFiled: February 11, 2019Date of Patent: October 19, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Taylor J. Pritchard, Jonathan Hsieh, Michael Cadigan, Jr.
-
Patent number: 11144321Abstract: Examples of techniques for store hit multiple load side register for operand store compare are described herein. An aspect includes, based on detecting a store hit multiple load condition in the processor, updating a register of the processor to hold information corresponding to a first store instruction that triggered the detected store hit multiple load condition. Another aspect includes, based on issuing a second store instruction in the processor, determining whether the second store instruction corresponds to the information in the register. Another aspect includes, based on determining that the second store instruction corresponds to the information in the register, tagging the second store instruction with an operand store compare mark.Type: GrantFiled: February 20, 2019Date of Patent: October 12, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Yair Fried, Jonathan Hsieh, Eyal Naor, James Bonanno, Gregory William Alexander
-
Patent number: 11080199Abstract: Embodiments of the inventions are directed towards a computer-implemented methods and systems for determining an oldest logical memory address. The method includes creating an M number of miss request registers and an N number of stations in a load/store unit of the processor. In response to load requests from target instructions, a processor detects each L1 cache miss. The processor stores data related to each L1 cache miss in a respective miss request register. The data includes an age of each L1 cache miss and a portion of a logical memory address of the requested load. The processor stores the entire logical memory addresses of the requested loads in respective stations based on an age of the load requests. The processor transmits the oldest logical memory address that is stored at the stations.Type: GrantFiled: March 7, 2019Date of Patent: August 3, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Yossi Shapira, Jonathan Hsieh, Michael Cadigan, Jr., Jane Bartik, Taylor J Pritchard
-
Patent number: 11074184Abstract: Methods, systems and computer program products for monitoring delivered packages are provided. Aspects include receiving, by a co-processor, a data stream and performing processing on the data stream. Aspects also include writing, by the co-processor, a data record into the output buffer. Based on a determination that the data record should replace a most recently stored data record in a cache, aspects include providing, by the co-processor to the cache controller, an instruction for the cache controller to write the data record to a location in the cache obtained from a most recently used address register. Based on a determination that the data record should not replace the most recently stored data record in the cache, aspects include writing, by the cache controller, the data record to an available location in the cache.Type: GrantFiled: April 15, 2019Date of Patent: July 27, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Michael Cadigan, Jr., Erez Barak, Deepankar Bhattacharjee, Yair Fried, Jonathan Hsieh, Martin Recktenwald, Aditya Nitin Puranik
-
Patent number: 10929142Abstract: Provided are embodiments including a computer-implemented method, system and computer program product for determining precise operand-store-compare (OSC) predictions to avoid false dependencies. Some embodiments include detecting an instruction causing an OSC event, wherein the OSC event is at least one of a store-hit-load event or a load-hit-store event, marking an entry in a queue for the instruction based on the detected OSC event, wherein marking the entry comprises setting a bit and saving a tag in the entry in the queue. Some embodiments also include installing an address for the instruction and the tag in the history table responsive to completing the instruction.Type: GrantFiled: March 20, 2019Date of Patent: February 23, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Gregory William Alexander, James Bonanno, Adam Collura, James Raymond Cuffney, Yair Fried, Jonathan Hsieh, Jang-Soo Lee, Edward Malley, Anthony Saporito, Eyal Naor
-
Patent number: 10810543Abstract: A method for populating an inventory catalog includes receiving an image showing an item in the inventory catalog and comprising a plurality of pixels. A machine learned segmentation neural network is retrieved to determine location of pixels in an image that are associated with an image label and the property. The method determines a subset of pixels associated with the item label in the received image and identifies locations of the subset of pixels of the received image, and extracts the subset of pixels from the received image. The method retrieves a machine learned classifier to determine whether an image shows the item label. The method determines, using the machine learned classifier, that the extracted subset of pixels shows the item label. The method updates the inventory catalog for the item to indicate that the item has the property associated with the item label.Type: GrantFiled: July 30, 2018Date of Patent: October 20, 2020Assignee: Maplebear, Inc.Inventors: Jonathan Hsieh, Oliver Gothe, Jeremy Stanley
-
Publication number: 20200327059Abstract: Methods, systems and computer program products for monitoring delivered packages are provided. Aspects include receiving, by a co-processor, a data stream and performing processing on the data stream. Aspects also include writing, by the co-processor, a data record into the output buffer. Based on a determination that the data record should replace a most recently stored data record in a cache, aspects include providing, by the co-processor to the cache controller, an instruction for the cache controller to write the data record to a location in the cache obtained from a most recently used address register. Based on a determination that the data record should not replace the most recently stored data record in the cache, aspects include writing, by the cache controller, the data record to an available location in the cache.Type: ApplicationFiled: April 15, 2019Publication date: October 15, 2020Inventors: MICHAEL CADIGAN, JR., EREZ BARAK, DEEPANKAR BHATTACHARJEE, YAIR FRIED, JONATHAN HSIEH, MARTIN RECKTENWALD, ADITYA NITIN PURANIK
-
Patent number: 10802830Abstract: A computer data processing system includes a plurality of logical registers, each including multiple storage sections. A processor writes data a storage section based on a dispatched first instruction, and sets a valid bit corresponding to the storage section that receives the data. In response to each subsequent instruction, the processor sets an evictor valid bit indicating a subsequent instruction has written new data to a storage section written by the first instruction, and updates the valid bit to indicate the storage section containing the new written data. A register combination unit generates a combined evictor tag to identify a most recent subsequent instruction. The processor determines the most recent subsequent instruction based on the combined evictor tag in response to a flush event, and unsets all the evictor tag valid bits set by the most the most recent subsequent instruction along with all previous subsequent instructions.Type: GrantFiled: March 5, 2019Date of Patent: October 13, 2020Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Jonathan Hsieh, Gregory William Alexander, Tu-An Nguyen
-
Publication number: 20200301711Abstract: Methods, systems and computer program products for dynamically selecting an OSC hazard avoidance mechanism are provided. Aspects include receiving a load instruction that is associated with an operand store compare (OSC) prediction. The OSC prediction is stored in an entry of an OSC history table (OHT) and includes a multiple dependencies indicator (MDI). Responsive to determining the MDI is in a first state, aspects include applying a first OSC hazard avoidance mechanism in relation to the load instruction. Responsive to determining that the load instruction is dependent on more than one store instruction, aspects include placing the MDI in a second state. The MDI being in the second state provides an indication to apply a second OSC hazard avoidance mechanism in relation to the load instruction.Type: ApplicationFiled: March 20, 2019Publication date: September 24, 2020Inventors: James Raymond Cuffney, Adam Collura, JAMES BONANNO, Edward Malley, Anthony Saporito, Jang-Soo Lee, Michael Cadigan, JR., Jonathan Hsieh
-
Publication number: 20200301710Abstract: Provided are embodiments including a computer-implemented method, system and computer program product for determining precise operand-store-compare (OSC) predictions to avoid false dependencies. Some embodiments include detecting an instruction causing an OSC event, wherein the OSC event is at least one of a store-hit-load event or a load-hit-store event, marking an entry in a queue for the instruction based on the detected OSC event, wherein marking the entry comprises setting a bit and saving a tag in the entry in the queue. Some embodiments also include installing an address for the instruction and the tag in the history table responsive to completing the instruction.Type: ApplicationFiled: March 20, 2019Publication date: September 24, 2020Inventors: Gregory William Alexander, James Bonanno, Adam Collura, James Raymond Cuffney, Yair Fried, Jonathan Hsieh, Jang-Soo Lee, Edward Malley, Anthony Saporito, Eyal Naor
-
Publication number: 20200285583Abstract: Embodiments of the inventions are directed towards a computer-implemented methods and systems for determining an oldest logical memory address. The method includes creating an M number of miss request registers and an N number of stations in a load/store unit of the processor. In response to load requests from target instructions, a processor detects each L1 cache miss. The processor stores data related to each L1 cache miss in a respective miss request register. The data includes an age of each L1 cache miss and a portion of a logical memory address of the requested load. The processor stores the entire logical memory addresses of the requested loads in respective stations based on an age of the load requests. The processor transmits the oldest logical memory address that is stored at the stations.Type: ApplicationFiled: March 7, 2019Publication date: September 10, 2020Inventors: Yossi Shapira, Jonathan Hsieh, Michael Cadigan, Jr., Jane Bartik, Taylor J. Pritchard
-
Publication number: 20200285478Abstract: A computer data processing system includes a plurality of logical registers, each including multiple storage sections. A processor writes data a storage section based on a dispatched first instruction, and sets a valid bit corresponding to the storage section that receives the data. In response to each subsequent instruction, the processor sets an evictor valid bit indicating a subsequent instruction has written new data to a storage section written by the first instruction, and updates the valid bit to indicate the storage section containing the new written data. A register combination unit generates a combined evictor tag to identify a most recent subsequent instruction. The processor determines the most recent subsequent instruction based on the combined evictor tag in response to a flush event, and unsets all the evictor tag valid bits set by the most the most recent subsequent instruction along with all previous subsequent instructions.Type: ApplicationFiled: March 5, 2019Publication date: September 10, 2020Inventors: Jonathan Hsieh, Gregory William Alexander, Tu-An Nguyen
-
Publication number: 20200264885Abstract: Examples of techniques for store hit multiple load side register for operand store compare are described herein. An aspect includes, based on detecting a store hit multiple load condition in the processor, updating a register of the processor to hold information corresponding to a first store instruction that triggered the detected store hit multiple load condition. Another aspect includes, based on issuing a second store instruction in the processor, determining whether the second store instruction corresponds to the information in the register. Another aspect includes, based on determining that the second store instruction corresponds to the information in the register, tagging the second store instruction with an operand store compare mark.Type: ApplicationFiled: February 20, 2019Publication date: August 20, 2020Inventors: Yair Fried, Jonathan Hsieh, EYAL NAOR, JAMES BONANNO, Gregory William Alexander
-
Publication number: 20200257632Abstract: Systems and methods of performing processor pipeline management include receiving an instruction for processing, determining that data in a first memory sub-group of a memory group needed to process the instruction is not available in a cache that ensures fixed latency access, and determining that the instruction should be put in a sleep state. The sleep state indicates that the instruction will not be reissued until the instruction is moved to a wakeup state. The methods also include associating the instruction with a ticket identifier (ID) that corresponds with a second memory sub-group of the memory group, and moving the instruction to the wakeup state based on the second memory sub-group of the memory group being moved into the cache.Type: ApplicationFiled: February 11, 2019Publication date: August 13, 2020Inventors: Taylor J. Pritchard, Jonathan Hsieh, Michael Cadigan, JR.
-
Publication number: 20200034782Abstract: A method for populating an inventory catalog includes receiving an image showing an item in the inventory catalog and comprising a plurality of pixels. A machine learned segmentation neural network is retrieved to determine location of pixels in an image that are associated with an image label and the property. The method determines a subset of pixels associated with the item label in the received image and identifies locations of the subset of pixels of the received image, and extracts the subset of pixels from the received image. The method retrieves a machine learned classifier to determine whether an image shows the item label. The method determines, using the machine learned classifier, that the extracted subset of pixels shows the item label. The method updates the inventory catalog for the item to indicate that the item has the property associated with the item label.Type: ApplicationFiled: July 30, 2018Publication date: January 30, 2020Inventors: Jonathan Hsieh, Oliver Gothe, Jeremy Stanley
-
Patent number: 9471656Abstract: A computer system identifies high-value information in data streams. The computer system receives a receiving a plurality of data streams. Each of the data streams includes a plurality of posts. Each of the posts includes a content portion and one or more source characteristics, In real time, for each post in a particular data stream: the system assigns the post a post identifier; generates a content packet and one or more source packets; queries memory to access a source profile using a respective source identifier included in the content packet; correlates the content packet with information from the source profile to produce a correlated content packet; and broadcasts the correlated content packet to a plurality of filter graph definitions.Type: GrantFiled: March 14, 2014Date of Patent: October 18, 2016Assignee: UDA, LLCInventors: Luis Stevens, Vince Schiavone, Jonathan Hsieh
-
Publication number: 20130344925Abstract: A cell phone case that includes an integrated key holder is provided. The cell phone case can include a first portion that covers the sides and back of an upper portion of a cell phone body and a second portion for covering the sides and back of a lower portion of the cell phone body. The first portion and the second portion can be capable of being engaged with each other to form the cell phone case. The first portion and/or the second portion can include on a back panel, a side facing away from a screen of the cell phone, a cutout sized to removably hold a key.Type: ApplicationFiled: June 24, 2013Publication date: December 26, 2013Inventors: David S. Lu, Jonathan Hsieh
-
Patent number: D841575Type: GrantFiled: November 11, 2016Date of Patent: February 26, 2019Assignee: Incipio, LLCInventors: Jonathan Hsieh, Ahmed Abdallah, Peter Tu