Patents by Inventor Mark J. Halstead

Mark J. Halstead 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: 10809918
    Abstract: Options for handling write operations may be selected based on a determined probability that a read operation for a portion of data will occur while the data portion is still in an I/O cache as a result of a write operation. As used herein, a “read-after-write event (“RAW”) is an occurrence of a read operation for a portion of data while the data portion is still in an I/O cache as a result of a write operation. The probability of a RAW may be determined by applying Bayesian inference, and may include applying exponential smoothing to calculations made on historical I/O information so that more recent I/O events have greater weight in determining RAW probability. Based on the determined RAW probability, write data may either be journaled in a write journal or written to a cache slot and de-staged to a physical storage device as part of write-in-place processing.
    Type: Grant
    Filed: January 31, 2019
    Date of Patent: October 20, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Owen Martin, Mark J. Halstead, William R. Smith-Vaniz
  • Publication number: 20200249838
    Abstract: Options for handling write operations may be selected based on a determined probability that a read operation for a portion of data will occur while the data portion is still in an I/O cache as a result of a write operation. As used herein, a “read-after-write event (”RAW?) is an occurrence of a read operation for a portion of data while the data portion is still in an I/O cache as a result of a write operation. The probability of a RAW may be determined by applying Bayesian inference, and may include applying exponential smoothing to calculations made on historical I/O information so that more recent I/O events have greater weight in determining RAW probability. Based on the determined RAW probability, write data may either be journaled in a write journal or written to a cache slot and de-staged to a physical storage device as part of write-in-place processing.
    Type: Application
    Filed: January 31, 2019
    Publication date: August 6, 2020
    Applicant: EMC IP Holding Company LLC
    Inventors: Owen Martin, Mark J. Halstead, William R. Smith-Vaniz
  • Patent number: 10200304
    Abstract: Managing reservations for at least two different sites competing for a resource includes maintaining a table of groups of sites, where each group competes for the same resource, one of the different sites requesting a reservation for a particular resource, determining if the reservation is available by consulting the table, denying the reservation to the one of the at least two different sites in response to access having been previously reserved for an other one of the different sites, and granting the reservation to the one of the at least two different sites and reserving access for the one of the at least two different sites in response to the resource being available. The managed resources may correspond to data storage and the two different sites may be mirrored storage devices. In response to a failure of communication between the two different sites, pending writes may be failed.
    Type: Grant
    Filed: December 29, 2015
    Date of Patent: February 5, 2019
    Assignee: EMC IP Holding Company LLC
    Inventors: Deepak Vokaliga, Svetlana O. Sokolova, Mark J. Halstead, Benjamin Yoder
  • Patent number: 9753663
    Abstract: Storing recovery data includes providing chunks of data to a remote destination, where each chunk of data represents data written before a first time and after a second time and where the second time for one of the particular chunks corresponds to a first time for a subsequent one of the particular chunks, providing synchronous data to a local destination, and providing an indicator to the local destination in connection with creation of a new chunk of data for storage at the remote destination. The local destination may maintain a plurality of maps, where each of the maps associates synchronous data being provided thereto with a specific chunk of data. In response to receiving an indicator in connection with creation of a new chunk of data, the local destination may point to a new map. There may be two maps or more than two maps.
    Type: Grant
    Filed: December 13, 2016
    Date of Patent: September 5, 2017
    Assignee: EMC IP Holding Company LLC
    Inventors: Douglas E. LeCrone, Gary H. Cox, Brett A. Quinn, David Meiri, Mark J. Halstead, Benjamin W. Yoder
  • Patent number: 9652414
    Abstract: A computing environment, such as an data mirroring or replication storage system, may need to process synchronous I/O requests having different priorities in addition to handling I/O requests on the basis of synchronous or asynchronous groupings. The system described herein provides a data storage system that addresses issues involving efficient balancing of response times for servicing synchronous I/O requests having different priorities. Accordingly, the system described herein provides for maintaining an optimal response time for the host-synchronous I/O requests and the optimal throughput of non-host-synchronous I/O requests using a host-synchronous request time window within which processing of non-host-synchronous I/O requests is throttled. The host-synchronous request time window may be selected to enable the optimal response time for the host-synchronous I/O and also to minimize the impact on the overall throughput of the I/O processor of the storage device.
    Type: Grant
    Filed: April 5, 2016
    Date of Patent: May 16, 2017
    Assignee: EMC IP Holding Company LLC
    Inventors: Gaurav Mukul Bhatnagar, Mark J. Halstead, Prakash Venkatanarayanan, Sandeep Chandrashekhara
  • Patent number: 9652333
    Abstract: Stored data consistency is maintained at source and destination sites upon a failure when migrating a plurality of related virtual machines from the source site to the destination site. Consistency is maintained across a first site and a second site upon a failure during independent migrations of a plurality of virtual machines in a consistency group from the first site to the second site wherein at least a first virtual machine is executing at the first site and wherein at least a second virtual machine is executing at the second site, by performing a consistent snapshot at the first site of one or more storage volumes employed by the virtual machines in the consistency group; and performing a consistent snapshot at the second site of one or more storage volumes employed by the virtual machines in the consistency group.
    Type: Grant
    Filed: September 30, 2014
    Date of Patent: May 16, 2017
    Assignee: EMC IP Holding Company LLC
    Inventors: Erin N. Bournival, David L. Black, Saar Cohen, Assaf Natanzon, Mark J. Halstead
  • Patent number: 9606739
    Abstract: Ordering data writes includes at least some of a group of local storage devices receiving a first plurality of data writes, waiting for all of the local storage devices to be ready to switch cycles and causing a coordinated and synchronized cycle switch after all of the local storage devices are ready to switch cycles by sending a first command to each of the local storage devices where the first plurality of data writes are associated with a particular cycle on each local storage device in the group. Ordering data writes also includes at least some of the group of local storage devices receiving a second plurality of writes after initiating the coordinated and synchronized cycle switch where all of the second plurality of writes are associated with a cycle different from the particular cycle on each local storage device.
    Type: Grant
    Filed: November 11, 2014
    Date of Patent: March 28, 2017
    Assignee: EMC IP Holding Company LLC
    Inventors: Douglas E. LeCrone, Kevin C. Heasley, Vadim Longinov, Mark J. Halstead, David Meiri, Benjamin Yoder, William P. Thibodeau
  • Patent number: 9558083
    Abstract: Storing recovery data includes providing chunks of data to a remote destination, where each chunk of data represents data written before a first time and after a second time and where the second time for one of the particular chunks corresponds to a first time for a subsequent one of the particular chunks, providing synchronous data to a local destination, and providing an indicator to the local destination in connection with creation of a new chunk of data for storage at the remote destination. The local destination may maintain a plurality of maps, where each of the maps associates synchronous data being provided thereto with a specific chunk of data. In response to receiving an indicator in connection with creation of a new chunk of data, the local destination may point to a new map. There may be two maps or more than two maps.
    Type: Grant
    Filed: October 18, 2011
    Date of Patent: January 31, 2017
    Assignee: EMC IP Holding Company LLC
    Inventors: Douglas E. LeCrone, Gary H. Cox, Brett A. Quinn, David Meiri, Mark J. Halstead, Benjamin W. Yoder
  • Patent number: 9330048
    Abstract: A computing environment, such as an data mirroring or replication storage system, may need to process synchronous I/O requests having different priorities in addition to handling I/O requests on the basis of synchronous or asynchronous groupings. The system described herein provides a data storage system that addresses issues involving efficient balancing of response times for servicing synchronous I/O requests having different priorities. Accordingly, the system described herein provides for maintaining an optimal response time for the host-synchronous I/O requests and the optimal throughput of non-host-synchronous I/O requests using a host-synchronous request time window within which processing of non-host-synchronous I/O requests is throttled. The host-synchronous request time window may be selected to enable the optimal response time for the host-synchronous I/O and also to minimize the impact on the overall throughput of the I/O processor of the storage device.
    Type: Grant
    Filed: January 28, 2013
    Date of Patent: May 3, 2016
    Assignee: EMC Corporation
    Inventors: Gaurav Mukul Bhatnagar, Mark J. Halstead, Prakash Venkatanarayanan, Sandeep Chandrashekhara
  • Patent number: 9128628
    Abstract: A method, system, and computer program product for data replication, comprising dynamically changing between snapshot hot push and continuous replication; wherein snapshot hot push denotes a replication mode where a snapshot is pushed from the production site to the replication site while IO occurs to the production site.
    Type: Grant
    Filed: March 13, 2013
    Date of Patent: September 8, 2015
    Assignee: EMC Corporation
    Inventors: Assaf Natanzon, Xiali He, Arieh Don, Mark J Halstead, Saar Cohen
  • Patent number: 9037816
    Abstract: Dynamically creating a communication path between first and second storage devices, includes creating a connection to a source volume on the first storage device and indicating that the source volume is not ready to transmit data on the communication path, after successfully creating the connection to the source volume, creating a connection to a destination volume on the second storage device and initially indicating that portions of one of: the destination volume and the source volume do not contain valid copies of data, where the destination volume accepts data from the source volume, and after successfully creating the connections to the source and destination volumes, indicating that the source volume is ready to transmit data on the communication path. Dynamically creating a communication path between first and second storage devices, may also include creating at least one of: the source volume and the destination volume.
    Type: Grant
    Filed: June 5, 2014
    Date of Patent: May 19, 2015
    Assignee: EMC Corporation
    Inventors: Mark J. Halstead, Dan Arnon, David Meiri
  • Patent number: 8990453
    Abstract: Described are techniques for controlling a flow of I/O requests. R is received denoting a current maximum number of outstanding I/O requests allowed to be issued by a first data storage system to a second data storage system over a path. Assessment processing is performed to obtain a first performance value, a second performance value, and a third performance value, respectively, when the maximum number of outstanding I/O requests allowed to be issued by the first data storage system to the second data storage system over the path is R+delta1, R, and R?delta2 (delta1 and delta 2 are positive integer values). It is determined whether to update R in accordance with criteria including the first performance value, the second performance value and the third performance value.
    Type: Grant
    Filed: December 14, 2012
    Date of Patent: March 24, 2015
    Assignee: EMC Corporation
    Inventors: Bhaskar Bora, Mark J. Halstead, Benoit J. Merlet, Dharmesh Thakkar
  • Patent number: 8977826
    Abstract: A method, system, and computer program product for ordering a plurality of data IO captured at a primary site to be applied at a secondary site, comprising removing the one or more extent level portions from the captured data IO, determining if the one or more extent level portions are time sequenced to overwrite a portion of data of the data IO, based on a determination that the portion data is to be overwritten, removing the overwritten portion of data from the plurality of the data IO and ordering the one or more extent level portions to be applied at the secondary site before the captured data IO.
    Type: Grant
    Filed: December 28, 2011
    Date of Patent: March 10, 2015
    Assignee: EMC Corporation
    Inventors: David Meiri, Dan Arnon, Benjamin W. Yoder, Mark J. Halstead, Assaf Natanzon
  • Patent number: 8914596
    Abstract: A computer-implemented method of ordering data writes includes at least some of a plurality of primary storage devices receiving a first plurality of data writes and causing a cycle switch for the plurality of primary storage devices. The first plurality of data writes are associated with a particular cycle on each primary storage device in the plurality of primary storage devices. At least some of the plurality of primary storage devices receive a second plurality of writes after initiating the cycle switch. All of the second plurality of writes are associated with a cycle different from the particular cycle on each of the plurality of primary storage devices.
    Type: Grant
    Filed: January 30, 2006
    Date of Patent: December 16, 2014
    Assignee: EMC Corporation
    Inventors: Douglas E. Lecrone, Kevin C. Heasley, Vadim Longinov, Mark J. Halstead, David Meiri, Benjamin W. Yoder, William P. Thibodeau
  • Patent number: 8812595
    Abstract: A method for scanning a message-list accessible to a plurality of processors includes retrieving, from a cache associated with a scanning processor from the plurality of processors, information identifying a starting message-slot. This information is then used to begin a scan of the message-list at that starting message-slot. The information indicating the starting message-slot is obtained by identifying, in the message-list, a message-slot containing a message intended for a recipient processor from the plurality of processors and obtaining, from the identified message-slot, information indicative of a location of a succeeding message-slot in the message-list. This information is then cached, for retrieval during a subsequent scan of the message-list.
    Type: Grant
    Filed: March 18, 2005
    Date of Patent: August 19, 2014
    Assignee: EMC Corporation
    Inventors: David Meiri, Dan Arnon, Mark J. Halstead, Peter Kamvysselis
  • Patent number: 8782357
    Abstract: Reversing a communication path between a first volume on a first storage device and a second volume on a second storage device includes suspending communication between the first and second volumes while maintaining operations for other volumes of the storage devices, causing the first volume to change from a source volume to a destination volume without destroying the first volume, causing the second volume to change from a destination volume to a source volume without destroying the second volume, and resuming communication between the first and second volumes. Causing the first volume to change from a source volume to a destination volume may include modifying a table of the first storage device. Causing the second volume to change from a source volume to a destination volume may include modifying a table of the second storage device.
    Type: Grant
    Filed: November 7, 2005
    Date of Patent: July 15, 2014
    Assignee: EMC Corporation
    Inventors: Mark J. Halstead, Dan Arnon, David Meiri
  • Patent number: 8261029
    Abstract: A system for dynamic balancing of writes between multiple storage devices in which Remote Data Facility (RDF) groups may be assigned weights according to a dynamic priority parameter. The dynamic priority parameter provides the ability to control the weight of an asynchronous RDF group compared to that of a synchronous RDF group. Thus, when the same RDF adapter includes a mix of asynchronous RDF groups and synchronous RDF groups, a dynamic balance of the write priorities between the two group types may be obtained.
    Type: Grant
    Filed: March 28, 2007
    Date of Patent: September 4, 2012
    Assignee: EMC Corporation
    Inventors: Marik Marshak, Mark J. Halstead, Michael E. Specht
  • Patent number: 8145865
    Abstract: Managing data transferred from a local storage device to a remote storage device includes maintaining the data in chunks in cache memory, where data writes to the local storage device begun during a particular time interval are associated with a chunk of data that is separate from other chunks of data and where data is transferred from the local storage device to the remote storage device by transferring a particular chunk after all data writes associated with the particular chunk have completed and after a previous chunk has been acknowledged as being received by the remote storage device and, in response to use of the cache memory exceeding a first threshold, storing data from a first chunk of the cache memory to a local disk. Data writes to the local storage device may be provided by a host coupled to the local storage device.
    Type: Grant
    Filed: September 29, 2006
    Date of Patent: March 27, 2012
    Assignee: EMC Corporation
    Inventors: Vadim Longinov, Benjamin W. Yoder, Mark J. Halstead
  • Patent number: 8122201
    Abstract: Communicating work requests from a first storage unit of a storage device to a second storage unit of a storage device include providing a data record that contains information indicative of the work request, directly writing the data record from the first unit to the second unit, and writing the data record to a global memory that is accessible by the first unit and by the second unit. Writing the data record to a global memory may include writing the data record to an array in the global memory, where the array may include a plurality of locations that each have space to store a data record. Communicating work requests may also include generating a random number that is used to index the array to determine a location for storing the data record.
    Type: Grant
    Filed: September 21, 2004
    Date of Patent: February 21, 2012
    Assignee: EMC Corporation
    Inventors: Marik Marshak, Mark J. Halstead
  • Publication number: 20120036333
    Abstract: Storing recovery data includes providing chunks of data to a remote destination, where each chunk of data represents data written before a first time and after a second time and where the second time for one of the particular chunks corresponds to a first time for a subsequent one of the particular chunks, providing synchronous data to a local destination, and providing an indicator to the local destination in connection with creation of a new chunk of data for storage at the remote destination. The local destination may maintain a plurality of maps, where each of the maps associates synchronous data being provided thereto with a specific chunk of data. In response to receiving an indicator in connection with creation of a new chunk of data, the local destination may point to a new map. There may be two maps or more than two maps.
    Type: Application
    Filed: October 18, 2011
    Publication date: February 9, 2012
    Inventors: Douglas E. LECRONE, Gary H. Cox, Brett A. Quinn, David Meiri, Mark J. Halstead, Benjamin W. Yoder