We have received feedback that a Jupyter notebook with a "minimum working example" would be really good for new users to understand the process of generating patterns from gs_patterns for use with tools like Spatter. To facilitate this process, we'd like to create a notebook that covers the following topics:
Use either Lulesh or Bronson as an example for this notebook
-
Introduction
Go over all the steps in the process (listed below).
-
Finding Regions of Interest with vTune
Using Intel's vTune hotspots tool, how can a user determine which regions of their code are the most relevant?
-
Using PIN to extract traces
- Using the hotspots from 2), detail how we can annotate the code with ROI pragmas and generate PIN traces.
- Show how long this process takes for a sample application
- Feeding traces to gs_patterns to get Spatter-compatible patterns
- Using traces from 3) generate Spatter-compatible JSON files.
- Briefly describe how gs_patterns bucketizes and "selects" patterns
- Show how long this takes (s) and how large (MB) the output can be
- Further analysis of gs_patterns output
- Detail how we can potentially identify exact calls and line numbers that generate significant patterns within our application.
- Show an example graph
We have received feedback that a Jupyter notebook with a "minimum working example" would be really good for new users to understand the process of generating patterns from gs_patterns for use with tools like Spatter. To facilitate this process, we'd like to create a notebook that covers the following topics:
Use either Lulesh or Bronson as an example for this notebook
Introduction
Go over all the steps in the process (listed below).
Finding Regions of Interest with vTune
Using Intel's vTune hotspots tool, how can a user determine which regions of their code are the most relevant?
Using PIN to extract traces