Maximum resolution of memory bandwidth data

Maximum resolution of memory bandwidth data

I created several memory bandwidth analyses on a Xeon E5-2640 (Sandy Bridge) system running at @.2.5GHz.  It appears that the resolution of the gathered data is always every 10 ms.  I can zoom in to a higher level, but the data appears is aggregated at this higher level... resulting in stair-stepped graphs (i've attached an example screenshot).

Looking at the Sample After values for the capture, the slowest appears to be 2000000.  Which I believe should result in 1250 samples per second (2.5GHz / 2000000)... but that should result in a resolution of .8 ms.

Is the resolution of the memory bandwidth analysis capped at 10 ms or is there some way to configure it to be lower.

Thanks.

附件尺寸
下载 memorybandwidthresolution.jpg55.52 KB
9 帖子 / 0 全新
最新文章
如需更全面地了解编译器优化,请参阅优化注意事项
Peter Wang (Intel)的头像

1. You can select specific time range then right-click to select "Zoom-in and Filter-in by selection". You may do several times to change the resolution.

2. You may change Sample after Value of LLC_MISS of (the core and OFFCORE_RESPONSE_) to get more accurate data (more samples).

Thanks Peter.

I've tried #1 and I can zoom in arbitrarily.  However, the data itself never has finer resolution than 10 ms.  The image I attached illustrates this.

I tried creating a custom analysis type and I set the Sample After value for LLC_MISS to 5000 (the default was 10000) but I still don't seem to see greater resolution than 10 ms in the graphs.  I've uploaded memorybandwidthresolution2.jpg showing the results.

Perhaps this is a limitation of the "Bandwidth viewpoint" view rather than the underlying data?

附件: 

附件尺寸
下载 memorybandwidthresolution2.jpg88.18 KB
Peter Wang (Intel)的头像

I used SAVs:

MEM_LOAD_UOPS_MISC_RETIRED.LLC_MISS_PS = 5000

OFFCORE_RESPONSE.ANY_REQUEST.LLC_MISS_LOCAL.DRAM_0 = 5000

OFFCORE_RESPONSE.ANY_REQUEST.LLC_MISS_LOCAL.DRAM_1 = 5000

 You may do "zoom-in" not enough, see my screenshot.

附件: 

附件尺寸
下载 bandwidth-resolution.png52.46 KB

Thanks Peter.  I will try with your settings and see if that helps.

However, I can zoom in arbitrarily... that's not the issue.  I'm just not seeing a change in value more frequently than once every 10 ms.  That leads me to believe the values are being put in 10 ms buckets.  The image that you attached doesn't seem to show values changing faster than once every 10 ms.

Peter Wang (Intel)的头像

Quote:

Tristan J. wrote:

Thanks Peter.  I will try with your settings and see if that helps.

However, I can zoom in arbitrarily... that's not the issue.  I'm just not seeing a change in value more frequently than once every 10 ms.  That leads me to believe the values are being put in 10 ms buckets.  The image that you attached doesn't seem to show values changing faster than once every 10 ms.

The reason could be bandwidth data was not changed frequently during 10ms, thinking that is average VALUE during specific time period. 

iliyapolak的头像

@Peter

What is the default time interval for bandwidth meaurement?

Thanks in advance.

Peter Wang (Intel)的头像

The default is 10ms for time interval in report, you can zoom-in - but bandwidth depends on how frequent of memory access.

Let me show some examples,

1. During 0.51s - 0.52s, LLC local/remote miss sample count is 100 (with timestamp), so we know memory access count per seconds from 0.510, 0.511, 0.512, ... so you can see bandwidth for each small period because each sample has time-stamp.

2. You may also need to know period 0.5100 - 0.5101, 0.5101 - 0.5102 - also it is not difficult to

3. If there was limited LLC Miss count during small period - it may use Average data from big time period (I don't know how it was implemented, but I think it should be)

iliyapolak的头像

Thanks for explanation.

登陆并发表评论。