Patents by Inventor Michael S. Woodacre
Michael S. Woodacre 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: 20240069742Abstract: One aspect of the application can provide a system and method for replacing a failing node with a spare node in a non-uniform memory access (NUMA) system. During operation, in response to determining that a node-migration condition is met, the system can initialize a node controller of the spare node such that accesses to a memory local to the spare node are to be processed by the node controller, quiesce the failing node and the spare node to allow state information of processors on the failing node to be migrated to processors on the spare node, and subsequent to unquiescing the failing node and the spare node, migrate data from the failing node to the spare node while maintaining cache coherence in the NUMA system and while the NUMA system remains in operation, thereby facilitating continuous execution of processes previously executed on the failing node.Type: ApplicationFiled: August 29, 2022Publication date: February 29, 2024Inventors: Thomas Edward McGee, Brian J. Johnson, Frank R. Dropps, Derek S. Schumacher, Stuart C. Haden, Michael S. Woodacre
-
Publication number: 20230281127Abstract: Example implementations relate to cache coherency protocols as applied to a memory block range. Exclusive ownership of a range of blocks of memory in a default shared state may be tracked by a directory. The directory may be associated with a first processor of a set of processors. When a request is received from a second processor of the set of processors to read one or more blocks of memory absent from the directory, one or more blocks may be transmitted in the default shared state to the second processor. The blocks absent from the directory may not be tracked in the directory.Type: ApplicationFiled: May 11, 2023Publication date: September 7, 2023Inventors: Michael Malewicki, Thomas McGee, Michael S. Woodacre
-
Patent number: 11714755Abstract: One embodiment can provide a node controller in a multiprocessor system. The node controller can include a processor interface to interface with a processor, a memory interface to interface with a fabric-attached memory, a node-controller interface to interface with a remote node controller, and a cache-coherence logic to operate in a first mode or a second mode. The cache-coherence logic manages cache coherence for a local memory of the processor coupled to the processor interface when operating in the first mode, and the cache-coherence logic manages cache coherence for the fabric-attached memory coupled to the memory interface when operating in the second mode.Type: GrantFiled: July 31, 2020Date of Patent: August 1, 2023Assignee: Hewlett Packard Enterprise Development LPInventors: Derek Schumacher, Randy Passint, Thomas McGee, Michael Malewicki, Michael S. Woodacre
-
Patent number: 11687459Abstract: Example implementations relate to cache coherency protocols as applied to a memory block range. Exclusive ownership of a range of blocks of memory in a default shared state may be tracked by a directory. The directory may be associated with a first processor of a set of processors. When a request is received from a second processor of the set of processors to read one or more blocks of memory absent from the directory, one or more blocks may be transmitted in the default shared state to the second processor. The blocks absent from the directory may not be tracked in the directory.Type: GrantFiled: April 14, 2021Date of Patent: June 27, 2023Assignee: Hewlett Packard Enterprise Development LPInventors: Michael Malewicki, Thomas McGee, Michael S. Woodacre
-
Patent number: 11586541Abstract: One embodiment can provide a node controller in a multiprocessor system. The node controller can include a processor interface to interface with a processor, a memory interface to interface with a fabric-attached memory, a node-controller interface to interface with a remote node controller, and a cache-coherence logic to operate in a first mode or a second mode. The cache-coherence logic manages cache coherence for a local memory of the processor coupled to the processor interface when operating in the first mode, and the cache-coherence logic manages cache coherence for the fabric-attached memory coupled to the memory interface when operating in the second mode.Type: GrantFiled: July 31, 2020Date of Patent: February 21, 2023Assignee: Hewlett Packard Enterprise Development LPInventors: Derek Schumacher, Randy Passint, Thomas McGee, Michael Malewicki, Michael S. Woodacre
-
Patent number: 11556471Abstract: In exemplary aspects of cache coherency management, a first request is received and includes an address of a first memory block in a shared memory. The shared memory includes memory blocks of memory devices associated with respective processors. Each of the memory blocks are associated with one of a plurality of memory categories indicating a protocol for managing cache coherency for the respective memory block. A memory category associated with the first memory block is determined and a response to the first request is based on the memory category of the first memory block. The first memory block and a second memory block are included in one of the same memory devices, and the memory category of the first memory block is different than the memory category of the second memory block.Type: GrantFiled: April 30, 2019Date of Patent: January 17, 2023Assignee: Hewlett Packard Enterprise Development LPInventors: Frank R. Dropps, Michael S. Woodacre, Thomas McGee, Michael Malewicki
-
Publication number: 20220334971Abstract: Example implementations relate to cache coherency protocols as applied to a memory block range. Exclusive ownership of a range of blocks of memory in a default shared state may be tracked by a directory. The directory may be associated with a first processor of a set of processors. When a request is received from a second processor of the set of processors to read one or more blocks of memory absent from the directory, one or more blocks may be transmitted in the default shared state to the second processor. The blocks absent from the directory may not be tracked in the directory.Type: ApplicationFiled: April 14, 2021Publication date: October 20, 2022Inventors: Michael MALEWICKI, Thomas MCGEE, Michael S. WOODACRE
-
Publication number: 20220035742Abstract: One embodiment can provide a node controller in a multiprocessor system. The node controller can include a processor interface to interface with a processor, a memory interface to interface with a fabric-attached memory, a node-controller interface to interface with a remote node controller, and a cache-coherence logic to operate in a first mode or a second mode. The cache-coherence logic manages cache coherence for a local memory of the processor coupled to the processor interface when operating in the first mode, and the cache-coherence logic manages cache coherence for the fabric-attached memory coupled to the memory interface when operating in the second mode.Type: ApplicationFiled: July 31, 2020Publication date: February 3, 2022Inventors: Derek Schumacher, Randy Passint, Thomas McGee, Michael Malewicki, Michael S. Woodacre
-
Patent number: 11128531Abstract: Systems and methods for dynamically and programmatically controlling hardware and software to optimize bandwidth and latency across partitions in a computing system are discussed herein. In various embodiments, performance within a partitioned computing system may be monitored and used to automatically reconfigure the computing system to optimize aggregate bandwidth and latency. Reconfiguring the computing system may comprise reallocating hardware resources among partitions, programming firewalls to enable higher bandwidth for specific inter-partition traffic, switching programming models associated with individual partitions, starting additional instances of one or more applications running on the partitions, and/or one or more other operations to optimize the overall aggregate bandwidth and latency of the system.Type: GrantFiled: April 30, 2018Date of Patent: September 21, 2021Assignee: Hewlett Packard Enterprise Development LPInventors: Dejan S Milojicic, Sharad Singhal, Andrew R. Wheeler, Michael S. Woodacre
-
Patent number: 10970213Abstract: An apparatus, system, and method of enforcing cache coherency in a multiprocessor shared memory system are disclosed. A request is received from a node controller, to process a cache coherent operation on a memory block in a shared memory. Based on the information included in the request, a determination is made as to whether the request was transmitted from a processor that is remote relative to the memory that includes the memory block referenced in the request. If the request is from a remote processor, a hardware-based cache coherency of the system is disabled, and request is processed according to software-based cache coherency protocols and mechanisms. A coherent read request may be translated to a non-coherent request, such as an immediate read request, which does not trigger tracking or storing state and ownership information of the requested memory block, or trigger communications with processors other than those involved with request.Type: GrantFiled: April 30, 2019Date of Patent: April 6, 2021Assignee: Hewlett Packard Enterprise Development LPInventors: Thomas McGee, Michael S. Woodacre, Michael Malewicki
-
Publication number: 20200349076Abstract: In exemplary aspects of cache coherency management, a first request is received and includes an address of a first memory block in a shared memory. The shared memory includes memory blocks of memory devices associated with respective processors. Each of the memory blocks are associated with one of a plurality of memory categories indicating a protocol for managing cache coherency for the respective memory block. A memory category associated with the first memory block is determined and a response to the first request is based on the memory category of the first memory block. The first memory block and a second memory block are included in one of the same memory devices, and the memory category of the first memory block is different than the memory category of the second memory block.Type: ApplicationFiled: April 30, 2019Publication date: November 5, 2020Inventors: Frank R. Dropps, Michael S. Woodacre, Thomas McGee, Michael Malewicki
-
Publication number: 20200349075Abstract: In exemplary aspects of enforcing cache coherency, a request is received from a node controller, to process a cache coherent operation on a memory block in a shared memory. Based on the information included in the request, a determination is made as to whether the request was transmitted from a processor that is remote relative to the memory that includes the memory block referenced in the request. If the request is from a remote processor, the hardware-based cache coherency of the system is disabled. Instead, the request is processed according to software-based cache coherency mechanisms. A response to the request is transmitted to the requestor.Type: ApplicationFiled: April 30, 2019Publication date: November 5, 2020Inventors: Thomas McGee, Michael S. Woodacre, Michael Malewicki
-
Patent number: 10540286Abstract: Systems and methods for dynamically modifying coherence domains are discussed herein. In various embodiments, a hardware controller may be provided that is configured to automatically recognize application behavior and dynamically reconfigure coherence domains in hardware and software to tradeoff performance for reliability and scalability. Modifying the coherence domains may comprise repartitioning the system based on cache coherence independently of one or more software layers of the system. Memory-driven algorithms may be invoked to determine one or more dynamic coherence domain operations to implement. In some embodiments, declarative policy statements may be received from a user via one or more interfaces associated with the controller. The controller may be configured to dynamically adjust cache coherence policy based on the declarative policy statements received from the user.Type: GrantFiled: April 30, 2018Date of Patent: January 21, 2020Assignee: Hewlett Packard Enterprise Development LPInventors: Dejan S Milojicic, Keith Packard, Michael S. Woodacre, Andrew R Wheeler
-
Publication number: 20190334771Abstract: Systems and methods for dynamically and programmatically controlling hardware and software to optimize bandwidth and latency across partitions in a computing system are discussed herein. In various embodiments, performance within a partitioned computing system may be monitored and used to automatically reconfigure the computing system to optimize aggregate bandwidth and latency. Reconfiguring the computing system may comprise reallocating hardware resources among partitions, programming firewalls to enable higher bandwidth for specific inter-partition traffic, switching programming models associated with individual partitions, starting additional instances of one or more applications running on the partitions, and/or one or more other operations to optimize the overall aggregate bandwidth and latency of the system.Type: ApplicationFiled: April 30, 2018Publication date: October 31, 2019Inventors: Dejan S Milojicic, Sharad Singhal, Andrew R. Wheeler, Michael S. Woodacre
-
Publication number: 20190332538Abstract: Systems and methods for dynamically modifying coherence domains are discussed herein. In various embodiments, a hardware controller may be provided that is configured to automatically recognize application behavior and dynamically reconfigure coherence domains in hardware and software to tradeoff performance for reliability and scalability. Modifying the coherence domains may comprise repartitioning the system based on cache coherence independently of one or more software layers of the system. Memory-driven algorithms may be invoked to determine one or more dynamic coherence domain operations to implement. In some embodiments, declarative policy statements may be received from a user via one or more interfaces associated with the controller. The controller may be configured to dynamically adjust cache coherence policy based on the declarative policy statements received from the user.Type: ApplicationFiled: April 30, 2018Publication date: October 31, 2019Inventors: Dejan S. Milojicic, Keith Packard, Michael S. Woodacre, Andrew R. Wheeler
-
Patent number: 7500068Abstract: A method and system for managing memory in a multiprocessor system includes defining the plurality of processor coherence domains within a system coherence domain of the multiprocessor system. The processor coherence domains each include a plurality of processors and a processor memory. Shared access to data in the processor memory of each processor coherence domain is provided only to elements of the multiprocessor system within the processor coherence domain. Non-shared access to data in the processor memory of each processor coherence domain is provided to elements of the multiprocessor system within and outside of the processor coherence domain.Type: GrantFiled: June 26, 2006Date of Patent: March 3, 2009Assignee: Silicon Graphics, Inc.Inventors: Daniel E. Lenoski, Jeffrey S. Kuskin, William A. Huffman, Michael S. Woodacre
-
Providing shared and non-shared access to memory in a system with plural processor coherence domains
Patent number: 7069306Abstract: A method and system for managing memory in a multiprocessor system includes defining the plurality of processor coherence domains within a system coherence domain of the multiprocessor system. The processor coherence domains each include a plurality of processors and a processor memory. Shared access to data in the processor memory of each processor coherence domain is provided only to elements of the multiprocessor system within the processor coherence domain. Non-shared access to data in the processor memory of each processor coherence domain is provided to elements of the multiprocessor system within and outside of the processor coherence domain.Type: GrantFiled: July 20, 2001Date of Patent: June 27, 2006Assignee: Silicon Graphics, Inc.Inventors: Daniel E. Lenoski, Jeffrey S. Kuskin, William A. Huffman, Michael S Woodacre -
Patent number: 6981101Abstract: A multiprocessor system and method includes a processing sub-system having a plurality of processors and a processor memory system. A scalable network is operable to couple the processing sub-system to an input/output (I/O) sub-system. The I/O sub-system includes a plurality of I/O interfaces. Each I/O interface has a local cache and is operable to couple a peripheral device to the multiprocessor system and to store copies of data from the processor memory system in the local cache for use by the peripheral device. A coherence domain for the multiprocessor system includes the processors and processor memory system of the processing sub-system and the local caches of the I/O sub-system.Type: GrantFiled: July 20, 2001Date of Patent: December 27, 2005Assignee: Silicon Graphics, Inc.Inventors: Steven C. Miller, Daniel E. Lenoski, Kevin Knecht, George Hopkins, Michael S. Woodacre