Re: metric expressions including metrics?
On Mon, May 18, 2020 at 12:21 PM Jiri Olsa wrote: > > On Mon, May 18, 2020 at 02:12:42PM -0500, Paul A. Clarke wrote: > > I'm curious how hard it would be to define metrics using other metrics, > > in the metrics definition files. > > > > Currently, to my understanding, every metric definition must be an > > expresssion based solely on arithmetic combinations of hardware events. > > > > Some metrics are hierarchical in nature such that a higher-level metric > > can be defined as an arithmetic expression of two other metrics, e.g. > > > > cache_miss_cycles_per_instruction = > > data_cache_miss_cycles_per_instruction + > > instruction_cache_miss_cycles_per_instruction > > > > This would need to be defined something like: > > dcache_miss_cpi = "dcache_miss_cycles / instructions" > > icache_miss_cpi = "icache_miss_cycles / instructions" > > cache_miss_cpi = "(dcache_miss_cycles + icache_miss_cycles) / instructions" > > > > Could the latter definition be simplified to: > > cache_miss_cpi = "dcache_miss_cpi + icache_miss_cpi" > > > > With multi-level caches and NUMA hierarchies, some of these higher-level > > metrics can involve a lot of hardware events. > > > > Given the recent activity in this area, I'm curious if this has been > > considered and already on a wish/to-do list, or found onerous. > > hi, > actually we were discussing this with Ian and Stephane and I plan on > checking on that.. should be doable, I'll keep you in the loop > Yes, this is needed to minimize the number of events needed to compute metrics groups. Then across all metrics groups, event duplicates must be eliminated whenever possible, except when explicit event grouping is required. > > jirk > > a > > > > > Regards, > > Paul Clarke > > >
Re: metric expressions including metrics?
On Mon, May 18, 2020 at 02:12:42PM -0500, Paul A. Clarke wrote: > I'm curious how hard it would be to define metrics using other metrics, > in the metrics definition files. > > Currently, to my understanding, every metric definition must be an > expresssion based solely on arithmetic combinations of hardware events. > > Some metrics are hierarchical in nature such that a higher-level metric > can be defined as an arithmetic expression of two other metrics, e.g. > > cache_miss_cycles_per_instruction = > data_cache_miss_cycles_per_instruction + > instruction_cache_miss_cycles_per_instruction > > This would need to be defined something like: > dcache_miss_cpi = "dcache_miss_cycles / instructions" > icache_miss_cpi = "icache_miss_cycles / instructions" > cache_miss_cpi = "(dcache_miss_cycles + icache_miss_cycles) / instructions" > > Could the latter definition be simplified to: > cache_miss_cpi = "dcache_miss_cpi + icache_miss_cpi" > > With multi-level caches and NUMA hierarchies, some of these higher-level > metrics can involve a lot of hardware events. > > Given the recent activity in this area, I'm curious if this has been > considered and already on a wish/to-do list, or found onerous. hi, actually we were discussing this with Ian and Stephane and I plan on checking on that.. should be doable, I'll keep you in the loop jirka > > Regards, > Paul Clarke >
metric expressions including metrics?
I'm curious how hard it would be to define metrics using other metrics, in the metrics definition files. Currently, to my understanding, every metric definition must be an expresssion based solely on arithmetic combinations of hardware events. Some metrics are hierarchical in nature such that a higher-level metric can be defined as an arithmetic expression of two other metrics, e.g. cache_miss_cycles_per_instruction = data_cache_miss_cycles_per_instruction + instruction_cache_miss_cycles_per_instruction This would need to be defined something like: dcache_miss_cpi = "dcache_miss_cycles / instructions" icache_miss_cpi = "icache_miss_cycles / instructions" cache_miss_cpi = "(dcache_miss_cycles + icache_miss_cycles) / instructions" Could the latter definition be simplified to: cache_miss_cpi = "dcache_miss_cpi + icache_miss_cpi" With multi-level caches and NUMA hierarchies, some of these higher-level metrics can involve a lot of hardware events. Given the recent activity in this area, I'm curious if this has been considered and already on a wish/to-do list, or found onerous. Regards, Paul Clarke