Patents by Inventor Craig R. Walters
Craig R. Walters 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: 12288075Abstract: A cache hit-miss prediction is determined for a memory access instruction using a predictor. The predictor includes a tracker for the memory access instruction. The tracker is used to provide a prediction confidence level of the cache hit-miss prediction for the memory access instruction. Using the tracker, the prediction confidence level of the cache hit-miss prediction is ascertained. Based on the prediction confidence level indicating the cache hit-miss prediction is to be used, the cache hit-miss prediction is provided to be used in instruction execution scheduling.Type: GrantFiled: February 23, 2024Date of Patent: April 29, 2025Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Dominic DiTomaso, David Trilla Rodriguez, Alper Buyuktosunoglu, Craig R Walters, Ram Sai Manoj Bamdhamravuri
-
Publication number: 20250077430Abstract: Techniques and apparatus for performing real-time tracking and reporting of snoop activity within a data processing system are described. An example technique includes performing a local snoop operation for multiple processors within a cluster. A snoop tracing message with information associated with the local snoop operation is generated upon determining that the local snoop operation is successful. The snoop tracing message is transmitted to a storage device. Another example technique includes determining a location in memory of a computing system where a fetch request resolves. Information indicating the location in memory of the computing system where the fetch request resolves is encoded within a fetch response. The fetch response is transmitted to a processor. One or more counters within the processor that are used to track snoop activity are incremented based on the encoded information.Type: ApplicationFiled: August 28, 2023Publication date: March 6, 2025Inventors: Scot RIDER, Timothy BRONSON, Clinton E. BUBB, Craig R. WALTERS
-
Publication number: 20240202117Abstract: A computer-implemented method, according to one embodiment, includes determining that a first predetermined pattern is to be written to a first cache line of a cache. In response to the determination, a first bit is set in a first directory instead of writing the first predetermined pattern in the first cache line. The first bit is associated with the first cache line in the first directory. A computer program product, according to another embodiment, includes a computer readable storage medium having program instructions embodied therewith. The program instructions are readable and/or executable by a computer to cause the computer to perform the foregoing method. A system, according to another embodiment, includes a processor, and logic integrated with the processor, executable by the processor, or integrated with and executable by the processor. The logic is configured to perform the foregoing method.Type: ApplicationFiled: December 16, 2022Publication date: June 20, 2024Inventors: Bulent Abali, Alper Buyuktosunoglu, Ashutosh Mishra, David Trilla Rodriguez, Craig R. Walters
-
Publication number: 20240061803Abstract: Serialized broadcast command messaging in a distributed symmetric multiprocessing (SMP) system, including: sending a serial broadcast command from a home chip to a plurality of other chips comprising serial primary chip, wherein each chip of the plurality of other chips comprises a broadcast controller mapped to a home chip broadcast controller; assigning, by the serial primary chip, a tag to the serial broadcast command; sending, from the serial primary chip, to the home chip and a remainder of the plurality of other chips, the tag; and broadcasting, by the home chip and each chip of the plurality of other chips, the serial broadcast command in an order based on the tag of the serial broadcast command.Type: ApplicationFiled: August 16, 2022Publication date: February 22, 2024Inventors: HAILEY NICHOLSON, ROBERT J. SONNELITTER, III, EKATERINA M. AMBROLADZE, DEANNA POSTLES DUNN BERGER, VESSELINA PAPAZOVA, GARY E. STRAIT, CRAIG R. WALTERS
-
Publication number: 20240053897Abstract: Various embodiments are provided herein for clearing memory of system in a computing environment. A zero-filled cache line with a single z-bit per entry in the cache directory may be defined. The “z” is a positive integer. A plurality of instruction set architecture (“ISA”) instructions are provided with a single z-bit in a cache line as defined in a cache directory to clear an entire cache line.Type: ApplicationFiled: August 9, 2022Publication date: February 15, 2024Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Bulent ABALI, Alper BUYUKTOSUNOGLU, Craig R WALTERS, Elpida TZORTZATOS, Bartholomew BLANER
-
Patent number: 11620231Abstract: Aspects of the invention include defining one or more processor units having a plurality of caches, each processor unit comprising a processor having at least one cache, and wherein each of the one or more processor units are coupled together by an interconnect fabric, for each of the plurality of caches, arranging a plurality of cache lines into one or more congruence classes, each congruence class comprises a chronology vector, arranging each cache in the plurality of caches into a cluster of caches based on a plurality of scope domains, determining a first cache line to evict based on the chronology vector, and determining a target cache for installing the first cache line based on a scope of the first cache line and a saturation metric associated with the target cache, wherein the scope of the first cache line is determined based on lateral persistence tag bits.Type: GrantFiled: August 20, 2021Date of Patent: April 4, 2023Assignee: International Business Machines CorporationInventors: Ram Sai Manoj Bamdhamravuri, Craig R. Walters, Christian Jacobi, Timothy Bronson, Gregory William Alexander, Hieu T. Huynh, Robert J. Sonnelitter, III, Jason D. Kohl, Deanna P. D. Berger, Richard Joseph Branciforte
-
Publication number: 20230054424Abstract: Aspects of the invention include defining one or more processor units having a plurality of caches, each processor unit comprising a processor having at least one cache, and wherein each of the one or more processor units are coupled together by an interconnect fabric, for each of the plurality of caches, arranging a plurality of cache lines into one or more congruence classes, each congruence class comprises a chronology vector, arranging each cache in the plurality of caches into a cluster of caches based on a plurality of scope domains, determining a first cache line to evict based on the chronology vector, and determining a target cache for installing the first cache line based on a scope of the first cache line and a saturation metric associated with the target cache, wherein the scope of the first cache line is determined based on lateral persistence tag bits.Type: ApplicationFiled: August 20, 2021Publication date: February 23, 2023Inventors: Ram Sai Manoj BAMDHAMRAVURI, Craig R. WALTERS, Christian JACOBI, Timothy BRONSON, Gregory William ALEXANDER, Hieu T. HUYNH, Robert J. SONNELITTER, III, Jason D. KOHL, Deanna P. D. BERGER, Richard Joseph BRANCIFORTE
-
Patent number: 11487672Abstract: Aspects of the invention include computer-implemented methods, systems, and computer program products that access a multi-copy scope directory state of a cache memory that indicates a scope of sharing of a cache line in a cache memory system and determine a scope of sharing of the cache line in the cache memory system based on the multi-copy scope directory state, where the multi-copy scope directory state enumerates a plurality of scopes within the cache memory system. The scope of sharing is used to reduce a number of queries to one or more cache memories having a larger scope than a shared scope identified in the scope of sharing. The multi-copy scope directory state of the cache memory is updated based on detecting a change in shared scope of the cache line within the cache memory system.Type: GrantFiled: August 20, 2021Date of Patent: November 1, 2022Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Chunggeon Rhee, Craig R. Walters, Ram Sai Manoj Bamdhamravuri, Timothy Bronson, Gregory William Alexander
-
Patent number: 11461151Abstract: Embodiments of the present invention are directed to a computer-implemented method for controller address contention assumption. A non-limiting example computer-implemented method includes a shared controller receiving a fetch request for data from a first requesting agent, the receiving via at least one intermediary controller. The shared controller performs an address compare using a memory address of the data.Type: GrantFiled: April 22, 2021Date of Patent: October 4, 2022Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Robert J. Sonnelitter, III, Michael Fee, Craig R. Walters, Arthur O'Neill, Matthias Klein
-
Patent number: 11099966Abstract: Aspects of the invention include efficient generation of instrumentation data for direct memory access operations. A non-limiting example apparatus includes an instrumentation component, residing in a cache in communication with a plurality of processing units, an accelerator, and a plurality of input output interfaces. The cache includes a direct memory access monitor that receives events from the accelerator its respective I/O interface and stores DMA state and latency for each event. The cache also includes a bucket including a DMA counter and a latency counter in communication with the DMA monitor, wherein the bucket stores in the DMA counter a count of DMAs coming from a source and stores in the latency counter the latency measured for each DMA coming from the source.Type: GrantFiled: January 9, 2020Date of Patent: August 24, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Matthias Klein, Deanna P. D. Berger, Craig R. Walters
-
Publication number: 20210240548Abstract: Embodiments of the present invention are directed to a computer-implemented method for controller address contention assumption. A non-limiting example computer-implemented method includes a shared controller receiving a fetch request for data from a first requesting agent, the receiving via at least one intermediary controller. The shared controller performs an address compare using a memory address of the data.Type: ApplicationFiled: April 22, 2021Publication date: August 5, 2021Inventors: Robert J. Sonnelitter, III, Michael Fee, Craig R. Walters, Arthur O'Neill, Matthias Klein
-
Publication number: 20210216430Abstract: Aspects of the invention include efficient generation of instrumentation data for direct memory access operations. A non-limiting example apparatus includes an instrumentation component, residing in a cache in communication with a plurality of processing units, an accelerator, and a plurality of input output interfaces. The cache includes a direct memory access monitor that receives events from the accelerator its respective I/O interface and stores DMA state and latency for each event. The cache also includes a bucket including a DMA counter and a latency counter in communication with the DMA monitor, wherein the bucket stores in the DMA counter a count of DMAs coming from a source and stores in the latency counter the latency measured for each DMA coming from the source.Type: ApplicationFiled: January 9, 2020Publication date: July 15, 2021Inventors: Matthias Klein, Deanna P. D. Berger, Craig R. Walters
-
Patent number: 11010210Abstract: Embodiments of the present invention are directed to a computer-implemented method for controller address contention assumption. A non-limiting example computer-implemented method includes a shared controller receiving a fetch request for data from a first requesting agent, the receiving via at least one intermediary controller. The shared controller performs an address compare using a memory address of the data. In response to the memory address matching a memory address stored in the shared controller, the shared controller acknowledges the at least one intermediary controller's fetch request, wherein upon acknowledgement, the at least one intermediary controller resets. In response to release of the data by a second requesting agent, the shared controller transmits the data to the first requesting agent.Type: GrantFiled: July 31, 2019Date of Patent: May 18, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Robert J. Sonnelitter, III, Michael Fee, Craig R. Walters, Arthur O'Neill, Matthias Klein
-
Publication number: 20210034438Abstract: Embodiments of the present invention are directed to a computer-implemented method for controller address contention assumption. A non-limiting example computer-implemented method includes a shared controller receiving a fetch request for data from a first requesting agent, the receiving via at least one intermediary controller. The shared controller performs an address compare using a memory address of the data. In response to the memory address matching a memory address stored in the shared controller, the shared controller acknowledges the at least one intermediary controller's fetch request, wherein upon acknowledgement, the at least one intermediary controller resets. In response to release of the data by a second requesting agent, the shared controller transmits the data to the first requesting agent.Type: ApplicationFiled: July 31, 2019Publication date: February 4, 2021Inventors: Robert J. Sonnelitter, III, Michael Fee, Craig R. Walters, Arthur O'Neill, Matthias Klein
-
Patent number: 10884946Abstract: Aspects include a computer-implemented method that includes receiving an instruction at a processor to perform an operation on a memory block having an address and accessing a state indicator by the processor without altering a value of the state indicator. The state indicator is stored in a memory location independent of the memory block, and accessing includes sending a request to an operator to return the value of the state indicator to the processor. The method also includes determining based on the value of the state indicator whether the memory block is in a pre-defined state.Type: GrantFiled: September 15, 2015Date of Patent: January 5, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Pak-kin Mak, Timothy J. Slegel, Craig R. Walters, Charles F. Webb
-
Patent number: 10884890Abstract: Methods, systems and computer program products for measuring hardware performance are provided. Aspects include receiving an indication of a start to a hardware operation. A number of clock cycles are counted from the start of a hardware operation to the completion of the hardware operation. A first region comprising a first set of bit location is defined. A second and third region is defined each including a set of bit locations. Based on the first set of bit locations being equal to zero, a granularity flag is set to zero in the sample buffer and the second and third set of bit locations are written to the sample buffer. And based on the first set of bit locations being greater than zero, the granularity flag in the sample buffer is set to one and the first and second set of bit locations are written to the sample buffer.Type: GrantFiled: August 6, 2019Date of Patent: January 5, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Ram Sai Manoj Bamdhamravuri, Deanna Postles Dunn Berger, Mark R. Hodges, Kenneth D. Klapproth, Guy G. Tracy, Craig R. Walters
-
Patent number: 10884945Abstract: Aspects include a computer-implemented method includes receiving an instruction at a processor to perform an operation on a memory block having an address and accessing a state indicator by the processor without altering a value of the state indicator. The state indicator is stored in a memory location independent of the memory block, and accessing includes sending a request to an operator to return the value of the state indicator to the processor. The method also includes determining based on the value of the state indicator whether the memory block is in a pre-defined state.Type: GrantFiled: June 30, 2015Date of Patent: January 5, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Pak-kin Mak, Timothy J. Slegel, Craig R. Walters, Charles F. Webb
-
Patent number: 10795824Abstract: Speculative data return in parallel with an exclusive invalidate request. A requesting processor requests data from a shared cache. The data is owned by another processor. Based on the request, an invalidate request is sent to the other processor requesting the other processor to release ownership of the data. Concurrent to the invalidate request being sent to the other processor, the data is speculatively provided to the requesting processor.Type: GrantFiled: November 21, 2018Date of Patent: October 6, 2020Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Deanna P. Berger, Christian Jacobi, Robert J. Sonnelitter, III, Craig R. Walters
-
Patent number: 10769068Abstract: A shared cache line is concurrently modified by multiple processors of a computing environment. The concurrent modification is performed based, at least, on receiving one or more architected instructions (Fetch due to Non-Coherent Store instructions) that permit multiple processors to concurrently update the shared cache line absent obtaining a lock or having exclusive ownership of the data.Type: GrantFiled: November 10, 2017Date of Patent: September 8, 2020Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Nicholas C. Matsakis, Craig R. Walters, Jane H. Bartik, Chung-Lung K. Shum, Elpida Tzortzatos
-
Patent number: 10684968Abstract: A processor implemented method for spreading data traffic across memory controllers with respect to conditions is provided. The processor implemented method includes determining whether the memory controllers are balanced. The processor implemented method includes executing a conditional spreading with respect to the conditions when the memory controllers are determined as unbalanced. The processor implemented method includes executing an equal spreading when the memory controllers are determined as balanced.Type: GrantFiled: June 15, 2017Date of Patent: June 16, 2020Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: David D. Cadigan, Thomas J. Dewkett, Glenn D. Gilda, Patrick J. Meaney, Craig R. Walters