IP Library Granted Patent US 9,250,826
Granted Patent B2
US 9,250,826 · App. 13/801,841 · Granted Feb 2, 2016

Enhanced performance monitoring method and apparatus

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,250,826
App. No.
13/801,841
Granted
Feb 2, 2016
Kind
B2
Abstract

A high-performance-computer system includes a statistics accumulation apparatus configured to efficiently accumulate system performance data from a variety of system components, and periodically write such data to processor local memory for efficient subsequent software processing of the thus acquired data, thereby reducing the system hardware and software overhead needed for collection of such data as compared to prior art systems.

Claims (42)

1. A computer processing system having a processer and a local memory logically coupled to the processor, the computer processing system comprising:

a plurality of performance monitoring components distributed throughout the computer processing system;

a statistics accumulation apparatus comprising:

a plurality of prescalers, each of the plurality of prescalers logically coupled a corresponding one of the performance monitoring components; and

a random access buffer memory having a plurality of memory locations, each of the plurality of memory locations corresponding to a corresponding one of the plurality of prescalers, the random access buffer memory separate from the local memory; and

control logic coupled to the plurality of prescalers and to the random access buffer memory, the control logic configured to controllably transfer data from each of the plurality of prescalers to corresponding one of plurality of buffer memory locations,

wherein the random access buffer memory comprises:

a summing buffer comprising a plurality of summing buffer memory locations, each of the summing buffer memory locations corresponding to a corresponding one of the plurality of prescalers, the summing buffer configured to accumulate data from the plurality of prescalers; and

a staging buffer comprising a plurality of staging buffer memory locations, each of the staging buffer memory locations corresponding to a corresponding one of the plurality of prescalers, the staging buffer configured to accumulate data from the plurality of prescalers and data from the summing buffer, and to provide that data to the processor, and

wherein the prescalers buffer data between the plurality of performance monitoring components and the random access buffer memory.

2. The computer processing system of claim 1 , wherein the control logic comprises a state machine.

3. The computer processing system of claim 1 , wherein the processor further comprises a memory controller configured to read data from the buffer memory into the local processor memory.

4. The computer processing system of claim 1 , wherein the random access buffer memory comprises a static random access memory.

5. The computer processing system of claim 1 , wherein the plurality of prescalers and the random access buffer memory are disposed on a hub chip within a high performance computer system.

6. The computer processing system of claim 1 , wherein each of the plurality of prescalers is physically closer to the random access buffer memory than to its corresponding one of the plurality performance monitoring components.

7. The computer processing system of claim 1 , wherein each of the plurality of performance monitoring components is logically coupled to a corresponding one of the plurality of prescalers by a corresponding one of a plurality of dedicated data channels.

8. The computer processing system of claim 1 , wherein the summing buffer has a summing buffer input and a summing buffer output, and wherein the staging buffer has a staging buffer input, the system further comprising:

an input multiplexer having a plurality of inputs and an output, each of the plurality of inputs corresponding to a corresponding one of the plurality of performance monitoring components via a corresponding one of the prescalers; and

an adder having a first adder input, a second adder input, and an adder output, the first adder input logically coupled to the multiplexer output, the second adder input logically coupled to the summing buffer output, and the adder output logically coupled to the staging buffer input and to the summing buffer input,

wherein the adder is configured to sum data from one of the prescalers with corresponding data from the summing buffer, and to send the data to the summing buffer and to the staging buffer under control from the control logic.

9. The computer processing system of claim 8 , further comprising a counter configured to synchronously supply address data to the summing buffer, the staging buffer, and the input multiplexer.

10. A method for operating a computing system, comprising:

generating performance data from a plurality of performance monitoring components;

buffering the performance data in a corresponding plurality of prescalers;

during a first phase of operation within an acquisition cycle, transferring the performance data from the plurality of prescalers to a corresponding plurality of memory locations within a random access buffer memory that comprises a summing buffer and a staging buffer, by;

summing the performance data from the plurality of prescalers with data from a corresponding plurality of memory locations within the summing buffer to produce a plurality of aggregated data; and

writing the plurality of aggregated data back to the corresponding plurality of memory locations;

during a second phase of operation within the acquisition cycle that follows the first phase, transferring the performance data from the plurality of prescalers to a corresponding plurality of memory locations within the staging buffer; and

transferring the performance data from the plurality of memory locations within the staging buffer to the processor local memory, wherein the processor local memory is separate from the random access memory.

11. The method for operating a computing system according to claim 10 , wherein summing the performance data and writing the plurality of aggregated data back to the corresponding plurality of memory locations occurs within a single clock period.

12. A computer processing system having a central processing unit comprising a processor and a plurality of performance monitoring components distributed throughout the computer processing system, the system further comprising data storage means comprising:

means for receiving stimulus data from the plurality of performance monitoring components;

memory means for accumulating stimulus data from the plurality of performance monitoring components via the means for receiving stimulus data, the memory means comprising a summing buffer means having a plurality of summing memory locations, each of the memory locations corresponding to one of the plurality of performance monitoring components, and a staging buffer means having a plurality of staging memory locations, each of the staging memory locations corresponding to a corresponding one of the plurality of means for receiving stimulus data, the staging buffer means configured to accumulate data from the plurality of means for receiving stimulus data and data from the summing buffer means, and to provide that data to the processor; and

control means coupled to the means for receiving stimulus data and to the memory means, the control means configured to controllably transfer data from the means for receiving stimulus to the memory means;

wherein the means for receiving stimulus buffers data between the plurality of performance monitoring components and the memory means.

13. The computer processing system of claim 12 , wherein the control means comprises a state machine.

14. The computer processing system of claim 12 , wherein the means for receiving stimulus data and the memory means are disposed on a hub chip within a high performance computer system.

15. The computer processing system of claim 12 , wherein the summing buffer means has a summing buffer means input and a summing buffer means output, and wherein the staging buffer means has a staging buffer means input, the system further comprising:

an input multiplexer means having a plurality of inputs and a multiplexer output, each of the plurality of inputs corresponding to a corresponding one of the plurality of performance monitoring components; and

an adder means having a first adder input, a second adder input, and an adder output, the first adder input logically coupled to the multiplexer output, the second adder input logically coupled to the summing buffer means, and the adder output logically coupled to the staging buffer input and to the summing buffer input,

wherein the adder means is configured to sum data from one of the means for receiving stimulus data with corresponding data from the summing buffer means, and to send the data to the summing buffer means and to the staging buffer means under control from the control means.

16. The computer processing system of claim 15 , further comprising an address generation means configured to synchronously supply address data to the summing buffer means, the staging buffer means, and the input multiplexer means.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 4, 2017
From: SILICON GRAPHICS INTERNATIONAL CORP.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 044128/0149 →
RELEASE OF SECURITY INTEREST Recorded Nov 2, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC., AS AGENT
To: SILICON GRAPHICS INTERNATIONAL CORP.
Reel/Frame 040545/0362 →
SECURITY INTEREST Recorded May 10, 2016
From: SILICON GRAPHICS INTERNATIONAL CORP.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 038532/0574 →
SECURITY INTEREST Recorded Mar 13, 2015
From: SILICON GRAPHICS INTERNATIONAL CORP.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 035200/0722 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 22, 2013
From: FROMM, ERIC CARL
To: SILICON GRAPHICS INTERNATIONAL CORP.
Reel/Frame 030068/0501 →