Analyzers
Talk to fellow users of Intel Analyzer tools (Intel VTune™ Profiler, Intel Advisor)
4974 Discussions

Real time code monitoring

Pavitra
Beginner
2,141 Views
How can we monitor cache misses in a code that runs in real time. Example, if that code when executed, uses some input from user and does manipulation on that, in the background can we run vtune amplifier to check for cache misses during the execution?
0 Kudos
6 Replies
ChithraJ_Intel
Moderator
2,121 Views

Hi Pavitra,

 

Thanks for reaching out to us.

We suggest you to try system-wide profiling option available in Intel Vtune Profiler. For that, please follow the below steps:

1. Use the Microarchitecture Exploration analysis (formerly known as General Exploration) available in Vtune to collect the cache misses for your application. While configuring your application, select analysis target for your project as Profile System on WHAT pane and analysis type as Microarchitecture Exploration on HOW pane.[Please refer to 1_Profile_system.JPG]. This will analyze the whole system in which your application is running.

2. Once the report got generated, click on Bottom-up window to view the detailed metrics. You can filter your application from this window as shown in the attached screenshot 2_Select_process.JPG by selecting particular process.

3. Then, you can filter it based on time if you want to get the metrics for a particular time by dragging in timeline pane and clicking on "Filter In by Selection". This will display metrics for the particular time selected.[Refer to 3_filter_by_time.JPG]

 

Regards,

Chithra

 

0 Kudos
ChithraJ_Intel
Moderator
2,104 Views

Hi Pavitra,


Could you please give us an update on this?


Regards,

Chithra


0 Kudos
ChithraJ_Intel
Moderator
2,083 Views

Hi Pavitra,


Please let me know if your query is resolved or not. If not, we also suggest you to use ITT(Instrumentation and Tracing Technology) API provided by Intel Vtune Profiler. This library helps you to select a particular portion of your application and allows you to profile/analyze that section only.

To use the APIs, add API calls in your code to designate logical tasks. This will help you visualize the relationship between tasks in your code, including when they start and end, relative to other CPU and GPU tasks.


At the highest level a task is a logical group of work executing on a specific thread, and may correspond to any grouping of code within your program that you consider important. You can mark up your code by identifying the beginning and end of each logical task with 

__itt_task_begin

 and

 __itt_task_end

calls.


Regards,

Chithra


0 Kudos
Pavitra
Beginner
2,053 Views

Thanks a lot maam for your prompt response.

I am working on this. But what i actually wanted to achieve is, while performing execution of an application, i want to get notified when the cache missses of that particular application exceed a particular value. In other words, i need to fetch the count of cache misses in real time , into another program, so that i could compare the count with a predetermined threshold. How can this be achieved in run time? Please help me with this.

0 Kudos
ChithraJ_Intel
Moderator
2,017 Views

Hi Pavitra,


Intel Vtune Profiler doesn't have an option to get information(like cache misses) in real time. That is, in Vtune, the data is collected processed and visualized only after profiling the application. So, sorry for the inconvenience caused. If possible, could you please elaborate more on your use case such as what kind of application you are trying to analyze.


Regards,

Chithra


0 Kudos
ChithraJ_Intel
Moderator
1,980 Views

Hi Pavitra,


We haven't heard back anything from you. We would discontinue monitoring this tread. Please feel free to raise a new thread for further queries/issues.


Regards,

Chithra


0 Kudos
Reply