Patents by Inventor John William Haskins, JR.

John William Haskins, JR. 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: 11520590
    Abstract: Exemplary aspects disclosed herein include detecting a repetitive pattern in an instruction pipeline of a processor to reduce repeated fetching. The processor includes a pattern record circuit configured to receive information in a data stream (e.g., instructions or consumed data) in the instruction pipeline. The pattern record circuit includes a first in, first out (FIFO) table circuit that contains an input record column and plurality of additional adjacent record columns. As new data occurs in the data stream, the data record circuit is configured to sequentially record next incoming data from the data stream into a next input entry of an input record column and then shift previously recorded data into adjacent entries of adjacent record columns. The distance between the input record column and the additional record column that has matching data is the distance in the data stream between a reoccurrence of data in the data stream.
    Type: Grant
    Filed: September 2, 2020
    Date of Patent: December 6, 2022
    Assignee: Microsoft Technology Licensing, LLC
    Inventor: John William Haskins, Jr.
  • Publication number: 20220066782
    Abstract: Exemplary aspects disclosed herein include detecting a repetitive pattern in an instruction pipeline of a processor to reduce repeated fetching. The processor includes a pattern record circuit configured to receive information in a data stream (e.g., instructions or consumed data) in the instruction pipeline. The pattern record circuit includes a first in, first out (FIFO) table circuit that contains an input record column and plurality of additional adjacent record columns. As new data occurs in the data stream, the data record circuit is configured to sequentially record next incoming data from the data stream into a next input entry of an input record column and then shift previously recorded data into adjacent entries of adjacent record columns. The distance between the input record column and the additional record column that has matching data is the distance in the data stream between a reoccurrence of data in the data stream.
    Type: Application
    Filed: September 2, 2020
    Publication date: March 3, 2022
    Inventor: John William HASKINS, Jr.
  • Publication number: 20190251996
    Abstract: A method includes receiving a write request to write a current data block to a Shingled Magnetic Recording (SMR) storage device. In response, the current data block is written to a current physical block in an open zone of the SMR storage device. A corresponding copy of the current data block is written to a nonvolatile memory. A determination is made of whether a wandering write error occurred during the writing of the data to the open zone. In response to the wandering write error occurring, for each of the number of written physical blocks in the open zone that have the corresponding copy in the nonvolatile memory, the data in the physical block is validated using the corresponding copy. In response to validation, the data in the corresponding copy is written as corrected data for the physical block to a new zone in the SMR storage device.
    Type: Application
    Filed: April 25, 2019
    Publication date: August 15, 2019
    Inventors: John William Haskins, JR., David Anthony Slik, Keith Arnold Smith, Maxim Gerald Smith
  • Patent number: 10379742
    Abstract: A storage system writes an object across zones of a set of zones (“zone set”). Each zone of a zone set is contributed from an independently accessible storage medium. To create a zone set, the storage system arbitrarily selects disks to contribute a zone for membership in the zone set. This results in a fairly even distribution of zone sets throughout the storage system, which increases fault tolerance of the storage system. Although disk selection for zone set membership is arbitrary, the arbitrary selection can be from a pool of disks that satisfy one or more criteria (e.g., health or activity based criteria). In addition, weights can be assigned to disks to influence the arbitrary selection. Although manipulating the arbitrary selection with weights or by reducing the pool of disks reduces the arbitrariness, this evenly distributes zone sets while accounting for client demand and/or disk health.
    Type: Grant
    Filed: December 28, 2015
    Date of Patent: August 13, 2019
    Assignee: NetApp, Inc.
    Inventors: Maxim Gerard Smith, John William Haskins, Jr., David Anthony Slik, Keith Arnold Smith
  • Patent number: 9779764
    Abstract: Technology is disclosed for deferring storage operations (e.g., writes or reads) during hostile events. When a data storage device experiences a hostile event, e.g., a vibration, shock, etc. contact by a head of the data storage device with a disk surface can cause errors or indeed damage. The technology can cause a data storage device to suspend storage operations until the hostile event is no longer detected.
    Type: Grant
    Filed: July 27, 2016
    Date of Patent: October 3, 2017
    Assignee: NetApp, Inc.
    Inventors: David Anthony Slik, Maxim Gerard Smith, John William Haskins, Jr.
  • Publication number: 20170185312
    Abstract: A storage system writes an object across zones of a set of zones (“zone set”). Each zone of a zone set is contributed from an independently accessible storage medium. To create a zone set, the storage system arbitrarily selects disks to contribute a zone for membership in the zone set. This results in a fairly even distribution of zone sets throughout the storage system, which increases fault tolerance of the storage system. Although disk selection for zone set membership is arbitrary, the arbitrary selection can be from a pool of disks that satisfy one or more criteria (e.g., health or activity based criteria). In addition, weights can be assigned to disks to influence the arbitrary selection. Although manipulating the arbitrary selection with weights or by reducing the pool of disks reduces the arbitrariness, this evenly distributes zone sets while accounting for client demand and/or disk health.
    Type: Application
    Filed: December 28, 2015
    Publication date: June 29, 2017
    Inventors: Maxim Gerard Smith, John William Haskins, JR., David Anthony Slik, Keith Arnold Smith
  • Publication number: 20170178680
    Abstract: A method includes receiving a write request to write a current data block to a Shingled Magnetic Recording (SMR) storage device. In response, the current data block is written to a current physical block in an open zone of the SMR storage device. A corresponding copy of the current data block is written to a nonvolatile memory. A determination is made of whether a wandering write error occurred during the writing of the data to the open zone. In response to the wandering write error occurring, for each of the number of written physical blocks in the open zone that have the corresponding copy in the nonvolatile memory, the data in the physical block is validated using the corresponding copy. In response to validation, the data in the corresponding copy is written as corrected data for the physical block to a new zone in the SMR storage device.
    Type: Application
    Filed: December 22, 2015
    Publication date: June 22, 2017
    Inventors: John William Haskins, JR., David Anthony Slik, Keith Arnold Smith, Maxim Gerald Smith
  • Publication number: 20170124104
    Abstract: A durable file system has been designed for storage devices that do not support write in place and/or that are susceptible to errors or failures. The durable file system also facilitates organization and access of large objects (e.g., gigabytes to terabytes in size). Since the write of a large object often involves multiple write operations, the writing is also referred to as “ingesting.” When ingesting an object, the durable file system writes the object with indexing information for the object to persistent storage across multiple zones that each map to an independently accessible storage medium (e.g., disks on different spindles). After persisting the indexing information with the object, the durable file system updates a file system index in working memory (e.g., non-volatile system memory) with the indexing information for the object.
    Type: Application
    Filed: October 31, 2015
    Publication date: May 4, 2017
    Inventors: Maxim Gerard Smith, John William Haskins, JR., David Anthony Slik, Keith Arnold Smith
  • Publication number: 20170123928
    Abstract: A durable file system has been designed for storage devices that do not support write in place and/or that are susceptible to errors or failures. The durable file system also facilitates organization and access of large objects (e.g., gigabytes to terabytes in size). The durable file system can efficiently reclaim storage space at zone set granularity since each constituent zone can be reclaimed concurrently when the zone set is chosen for space reclamation. Furthermore, space reclamation for the durable file system does not interfere with object availability because the object data is available throughout reclamation. The durable file system copies data of a live object to a different zone set and updates the file system index before reclaiming the target zone set (e.g., before resetting write pointers to the constituent zones).
    Type: Application
    Filed: October 30, 2015
    Publication date: May 4, 2017
    Inventors: Maxim Gerard Smith, John William Haskins, JR., David Anthony Slik, Keith Arnold Smith
  • Publication number: 20170123714
    Abstract: A durable file system has been designed for storage devices that do not support write in place and/or that are susceptible to errors or failures. The durable file system also facilitates organization and access of large objects (e.g., gigabytes to terabytes in size). Regardless of whether target storage devices are configured with sequential write constraints, the durable file system writes object fragments across a set of sequences or ranges of storage units, such as logical blocks. The durable file system sequentially writes an object fragment into each storage unit sequence along with indexing information for the object fragments. In addition to writing the indexing information for the object fragments into the set of storage unit sequences, the durable file system updates the file system index with the object indexing information.
    Type: Application
    Filed: July 29, 2016
    Publication date: May 4, 2017
    Inventors: Maxim Gerard Smith, John William Haskins, Jr., David Anthony Slik, Keith Arnold Smith
  • Publication number: 20160336028
    Abstract: Technology is disclosed for deferring storage operations (e.g., writes or reads) during hostile events. When a data storage device experiences a hostile event, e.g., a vibration, shock, etc. contact by a head of the data storage device with a disk surface can cause errors or indeed damage. The technology can cause a data storage device to suspend storage operations until the hostile event is no longer detected.
    Type: Application
    Filed: July 27, 2016
    Publication date: November 17, 2016
    Inventors: David Anthony Slik, Maxim Gerard Smith, John William Haskins, JR.
  • Patent number: 9431061
    Abstract: Technology is disclosed for deferring storage operations (e.g., writes or reads) during hostile events. When a data storage device experiences a hostile event, e.g., a vibration, shock, etc. contact by a head of the data storage device with a disk surface can cause errors or indeed damage. The technology can cause a data storage device to suspend storage operations until the hostile event is no longer detected.
    Type: Grant
    Filed: April 24, 2015
    Date of Patent: August 30, 2016
    Assignee: NetApp, Inc.
    Inventors: David Anthony Slik, Maxim Gerard Smith, John William Haskins, Jr.
  • Patent number: 9395984
    Abstract: Swapping branch direction history(ies) in response to a branch prediction table swap instruction(s), and related systems and methods are disclosed. In one embodiment, a branch history management circuit is configured to process a branch prediction table swap instruction. In response to the branch prediction table swap instruction, the branch history management circuit is configured to swap a prior branch direction history set assigned to a current software code region from cache memory, into a branch prediction table (BPT) for use in branch prediction. The current branch direction history set is swapped out of the BPT and stored in cache memory to avoid being overwritten. In this manner, branch direction history sets assigned to particular software code regions are used for branch prediction when processing the particular software code regions. Therefore, branch prediction accuracy and instruction processing throughput of an instruction processing system are increased.
    Type: Grant
    Filed: September 12, 2012
    Date of Patent: July 19, 2016
    Assignee: QUALCOMM Incorporated
    Inventor: John William Haskins, Jr.
  • Publication number: 20140075166
    Abstract: Swapping branch direction history(ies) in response to a branch prediction table swap instruction(s), and related systems and methods are disclosed. In one embodiment, a branch history management circuit is configured to process a branch prediction table swap instruction. In response to the branch prediction table swap instruction, the branch history management circuit is configured to swap a prior branch direction history set assigned to a current software code region from cache memory, into a branch prediction table (BPT) for use in branch prediction. The current branch direction history set is swapped out of the BPT and stored in cache memory to avoid being overwritten. In this manner, branch direction history sets assigned to particular software code regions are used for branch prediction when processing the particular software code regions. Therefore, branch prediction accuracy and instruction processing throughput of an instruction processing system are increased.
    Type: Application
    Filed: September 12, 2012
    Publication date: March 13, 2014
    Applicant: QUALCOMM INCORPORATED
    Inventor: John William Haskins, JR.