Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "PTP/designs/perf"
Line 1: | Line 1: | ||
− | == Case Study == | + | == Case Study (Workload Characterization)== |
# Select a parallel project | # Select a parallel project | ||
## Specify application metadata (for performance data management) | ## Specify application metadata (for performance data management) | ||
Line 19: | Line 19: | ||
## Create HTML report | ## Create HTML report | ||
− | == Case Study #2 == | + | == Case Study #2 (Memory leak detection) == |
# Select a parallel project | # Select a parallel project | ||
## Specify application metadata (for performance data management) | ## Specify application metadata (for performance data management) | ||
Line 52: | Line 52: | ||
## Run the batch script | ## Run the batch script | ||
# Look at your data, run PerfExplorer | # Look at your data, run PerfExplorer | ||
+ | |||
+ | |||
+ | == Case Study #4 (Routine and outer loop profiling) == | ||
+ | # Invoke the analysis wizard | ||
+ | # Select execution time analysis/routine level | ||
+ | # Optionally select hardware counters for monitoring | ||
+ | # Run | ||
+ | # Analyze | ||
+ | ## View data in analysis tool | ||
+ | # Choose routines for outer loop profiling | ||
+ | #* Optionally select specific loops for profiling | ||
+ | # Select hardware counters for monitoring | ||
+ | # Run | ||
+ | # Analyze | ||
+ | ## View new data in analysis tool | ||
+ | ## View relevant source code regions | ||
+ | |||
+ | == Case Study #5 (Communication analysis) == | ||
+ | # Invoke the analysis wizard | ||
+ | # Select 'execution/communication time analysis' | ||
+ | # Run | ||
+ | ## Generate routine level callpath profile | ||
+ | ## Automated tool analyzes profile output and generates selective instrumentation file | ||
+ | ## Automated re-run using tracing (in format suitable for automated trace analysis) | ||
+ | # Analyze | ||
+ | ## Automatically perform trace analysis to identify communication bottlenecks | ||
+ | ## View bottleneck analysis result | ||
+ | ## Optionally view trace in graphical trace viewer (after conversion if necessary) | ||
Revision as of 15:14, 12 September 2006
Contents
Case Study (Workload Characterization)
- Select a parallel project
- Specify application metadata (for performance data management)
- Open analysis creation wizard
- Select workload characterization from the list of analysis tasks
- Select performance measurement/monitoring tool
- Select hardware counter set
- Select workload characterization from the list of analysis tasks
- Build
- Create make target (for standard make)
- Application may or may not need to be recompiled/rebuilt
- Run
- Create a launch configuration
- Specify performance tool options (if desired)
- Specifiy other parallel execution parameters
- Select run sets (number of processors)
- Generates batch script
- Create a launch configuration
- Analyze
- View data in analysis tool
- Create HTML report
Case Study #2 (Memory leak detection)
- Select a parallel project
- Specify application metadata (for performance data management)
- Open analysis wizard
- Select the 'detect memory leaks' checkbox
- Select any other measurement options
- Build
- Create make target (for standard make)
- Application may or may not need to be recompiled/rebuilt
- Run
- Create a launch configuration
- Specify performance tool options (if desired)
- Specifiy other parallel execution parameters
- Select run sets (number of processors)
- Generates batch script
- Create a launch configuration
- Analyze
- View data in analysis tool
- Return to source code
- Fix memory leaks
- Rebuild and launch to confirm fixes
Case Study #3 (batch + integrated run/build/launch)
- Select the "analysis" button (like the debug/run buttons)
- This opens the integrated analysis wizard
- Select profiling set from the analysis tab
- Select the Make target and binary executable
- Create more analysis experiments
- Select the "batch" button from the anaylsis menu
- Select parameterizations (numbers of processors, binaries)
- generates batch script
- Run the batch script
- Select parameterizations (numbers of processors, binaries)
- Look at your data, run PerfExplorer
Case Study #4 (Routine and outer loop profiling)
- Invoke the analysis wizard
- Select execution time analysis/routine level
- Optionally select hardware counters for monitoring
- Run
- Analyze
- View data in analysis tool
- Choose routines for outer loop profiling
- Optionally select specific loops for profiling
- Select hardware counters for monitoring
- Run
- Analyze
- View new data in analysis tool
- View relevant source code regions
Case Study #5 (Communication analysis)
- Invoke the analysis wizard
- Select 'execution/communication time analysis'
- Run
- Generate routine level callpath profile
- Automated tool analyzes profile output and generates selective instrumentation file
- Automated re-run using tracing (in format suitable for automated trace analysis)
- Analyze
- Automatically perform trace analysis to identify communication bottlenecks
- View bottleneck analysis result
- Optionally view trace in graphical trace viewer (after conversion if necessary)
Two step usage
- Right-click project to open analysis configuration (Wizard)
- This creates a ...
- Right-click on binary to set up analysis setting (may require rebuilding project)
TODO
- TAU on update site
- System PTP Preferences (TAU location)
- User Preferences
- Project Preferences
- TAU Marker in source editor
- Analysis Perspective
- MPI tool-chain (for managed and standard make projects)
- Extension PT Project
UI designs
- Performance Analysis Perspective
- Wizards to set up instrumentation/measurement options during both builds and run phases.
- Templates to set up common multiple build experiments (ie. scaling, optimization levels etc...)
- Let the user choose the TAU makefile file when adding a TAU configuration to a eclipse project.
- Add tau run-time options to the run configuration
Standard Makefile Automation
- Add a 'include eclipse.env' line to include variables to build for different profiling/tracing options. Have users
- use the variables set in eclipse.env when writing their makefiles.