File tree Expand file tree Collapse file tree 1 file changed +9
-11
lines changed
lib/gc/ExecutionEngine/GPURuntime/ocl Expand file tree Collapse file tree 1 file changed +9
-11
lines changed Original file line number Diff line number Diff line change @@ -27,12 +27,6 @@ void DisableProfiling();
27
27
28
28
class GPUKernelTracer {
29
29
public:
30
- static std::unique_ptr<GPUKernelTracer> getInstance () {
31
- std::unique_ptr<GPUKernelTracer> instance =
32
- std::make_unique<GPUKernelTracer>();
33
- return instance;
34
- }
35
-
36
30
GPUKernelTracer () {
37
31
gcLogD (" Enable Profiling." );
38
32
EnableProfiling ();
@@ -45,12 +39,16 @@ class GPUKernelTracer {
45
39
};
46
40
47
41
/*
48
- Create a tracer with a static life cycle to trace all device kernel execution
49
- during the program. The unique pointer is used to manage class creation and
50
- recycling. When the pointer is destroyed, the tracer's destructor will be called
51
- and print the profile result.
42
+ Create an RAII tracer with a static life cycle to trace all device kernel
43
+ execution during the program. When the tracer's constructor is called, the
44
+ EnableProfiling will also be called, registering some metric collection
45
+ call-back function into the opencl function call. When the tracer is destroyed,
46
+ the DisableProfiling is also called which will statistic the collected metric
47
+ during the tracer lifetime and print the result. The concrete implementation of
48
+ EnableProfiling and DisableProfiling could refer to
49
+ https://github.com/intel/pti-gpu/blob/master/tools/onetrace/tool.cc.
52
50
*/
53
- static std::unique_ptr< GPUKernelTracer> tracer = GPUKernelTracer::getInstance() ;
51
+ static GPUKernelTracer tracer;
54
52
55
53
#endif
56
54
You can’t perform that action at this time.
0 commit comments