Term
|
Definition
| powerful CPU analysis tool |
|
|
Term
| In stating that V-Tune is a CPU analysis tool, it is important to recognize that it doesn't tell you about what? |
|
Definition
|
|
Term
| V-Tune gives us multiple views into our application. What are two views? |
|
Definition
|
|
Term
| V-Tune gives us multiple views into our application. How many are intrusive and non-intrusive? What are they? |
|
Definition
intrusive: call graph
non-intrusive: counter monitor sampling |
|
|
Term
| What are the three collection types in V-Tune? |
|
Definition
Counter Monitor
Sampling
Call Graph
|
|
|
Term
|
Definition
| The counter monitor is a tool that gives us information about the system level and the micro level. It displays a chart of information about a resource over time. |
|
|
Term
| What is an example of what the counter monitor can tell us? |
|
Definition
| CPU utilization, tell us about how we are using memory, or how threading is behaving. |
|
|
Term
| If you CPU utilization is not 100%, what does that mean? |
|
Definition
| means we are not using our CPU to it’s fullest potential |
|
|
Term
| When should we run the counter monitor? |
|
Definition
| first to give us a overall system view of how our application is executing. |
|
|
Term
| How is Sampling a useful tool? |
|
Definition
| viewing system, application, and micro level optimizations |
|
|
Term
| What information does sampling give us, by showing what? |
|
Definition
| system information by showing all the processing currently running. We are able to determine what percentage of time we spent in which classes or functions of our code. Lastly, we can view the samples taken line-by-line for a very specific view on what code is behaving slowly. |
|
|
Term
| To be able to make a call graph we have to compile our application.. why? |
|
Definition
| to generate relocation information in order to allow V-Tune to gather parent/child relationships. In doing so, we can traverse the application in the same way that it was executed. |
|
|
Term
| What will the call graph tell us? |
|
Definition
|
|
Term
| What is the critical path? |
|
Definition
| the longest path from the root of the application thread to the slowest function |
|
|
Term
| What can we do that will almost always a way to guarantee a performance increase on our CPU? |
|
Definition
| Enhancing the performance of the critical path |
|
|
Term
| The call graph will not give us any information about? Making it not good for what? |
|
Definition
what line of code is performing slowly Not the best tool for micro optimizations. |
|
|
Term
| After running the counter monitor, running the _________ is usually the next best tool to run. |
|
Definition
|
|
Term
| What do Sampling profilers do? |
|
Definition
periodically interrupting the system to record performance information, such as: processor’s instruction pointer thread ID event counters |
|
|
Term
| By collecting the right amount of samples, you can get an accurate representation of? |
|
Definition
| what the software was doing during the sampling session. |
|
|
Term
| Sampling works best when? |
|
Definition
| when collecting just enough samples to get an accurate representation, but not so many as to affect the system’s performance. |
|
|
Term
| Collecting roughly ____ samples per second keeps what? |
|
Definition
1,000 keeps the overhead low and the accuracy high |
|
|
Term
| Instrumenting profilers use either _____ or _____ to insert profiling code into the application. |
|
Definition
direct binary instrumentation
the compiler |
|
|
Term
| This instrumentation is similar to what? |
|
Definition
to adding your own timing calls in your application, except that additional performance data is collected, such as the call tree, number of calls, and function elapsed time. |
|
|
Term
| The V-Tune Call Graph uses instrumentation to...? |
|
Definition
|
|
Term
| Note that you cannot determine _______ with an instrumented build. |
|
Definition
| the total time of a function |
|
|