1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
/// Run the application without collecting data.
///
/// VTune Profiler reduces the overhead of collection, by collecting only
/// critical information, such as thread and process creation.
///
/// # Effects
///
/// Pausing the data collection has the following effects:
///
/// - Data collection is paused for the whole program, not only within the current thread.
/// - Some runtime analysis overhead reduction.
///
/// The following APIs are *not* affected by pausing the data collection:
///
/// - Domain API
/// - String Handle API
/// - Thread Naming API
///
/// The following APIs are affected by pausing the data collection. Data is not
/// collected for these APIs while in paused state:
///
/// - Task API
/// - Frame API
/// - Event API
/// - User-Defined Synchronization API
///
/// See the [Collection Control API] for more details.
///
/// # Example
///
/// ```
/// ittapi::pause();
/// // Do initialization work here
/// ittapi::resume();
/// // Do profiling work here
/// ittapi::pause();
/// // Do finalization work here
/// ```
///
/// [Collection Control API]: https://www.intel.com/content/www/us/en/docs/vtune-profiler/user-guide/current/collection-control-api.html
/// Resume data collection.
///
/// VTune Profiler resumes collecting all data.
///
/// See the [Collection Control API] for details.
///
/// # Example
///
/// See [pause#example].
///
/// [Collection Control API]: https://www.intel.com/content/www/us/en/docs/vtune-profiler/user-guide/current/collection-control-api.html
/// Detach data collection.
///
/// VTune Profiler detaches all collectors from all processes. Your application
/// continues to work but no data is collected for the running collection.
///
/// See the [Collection Control API] for details.
///
/// # Example
///
/// Detach behaves similarly to [pause#example].
///
/// [Collection Control API]: https://www.intel.com/content/www/us/en/docs/vtune-profiler/user-guide/current/collection-control-api.html