CPC G06F 9/5061 (2013.01) [G06F 1/04 (2013.01); G06F 1/3296 (2013.01); G06F 9/3877 (2013.01); G06F 9/5027 (2013.01)] | 19 Claims |
1. A computer-implemented method, comprising:
generating a first signal to sample performance data for a plurality of engines included in a processor, wherein the performance data is captured by a plurality of performance monitors;
receiving, based on the first signal, the performance data from the plurality of performance monitors, wherein the performance data includes a first identifier that identifies which performance monitor included in the plurality of performance monitors that generated the performance data;
extracting a plurality of performance data subsets from the performance data based on a plurality of second identifiers included in the performance data, wherein a first performance data subset of the plurality of performance data subsets includes the first identifier, wherein each of the plurality of performance data subsets corresponds to a different second identifier included in the plurality of second identifiers, and wherein each of the plurality of second identifiers corresponds to a different engine included in the plurality of engines; and
storing each of the plurality of performance data subsets in a different one of a plurality of data stores, wherein, for each of the plurality of performance data subsets, the different one of the plurality of data stores is determined based on the second identifier included in the performance data subset, wherein each data store included in the plurality of data stores is isolated from access by the plurality of engines other than a corresponding engine included in the plurality of engines, and wherein each engine in the plurality of engines accesses the corresponding data store in the plurality of data stores via a different virtual address space.
|