---
name: "TAU_PROFILER_CREATE"
section: "3"
platform: "linux"
package: "tau"
version: "2.17.3.1.dfsg-4.2"
release: "Debian 9 (Stretch)"
platforms: ["linux"]
url: "https://new.carta.tech/TAU_PROFILER_CREATE"
---

# TAU\_PROFILER\_CREATE(3)

." make the size of the head bigger **NAME** **TAU\_PROFILER\_CREATE - Creates a profiler object referenced as a standard pointer**

**." make the size of the head bigger** **SYNOPSIS**

```
C/C++:
```

**TAU\_PROFILER\_CREATE(Timer** *timer***, char\* or string&** *function\_name***, char\* or string&** *type***, taugroup\_t** *group***);**

**." make the size of the head bigger** **DESCRIPTION**

**TAU\_PROFILER\_CREATE** creates a timer the that can be controlled by the Timer pointer object.

The TAU\_PROFILER\_\* API is intended for applications to easily layer their legacy timing measurements APIs on top of TAU, Unlike other TAU API calls (TAU\_PROFILE\_TIMER) that are statically expanded in the source code, these calls allocate TAU entities on the heap. So the pointer to the TAU timer may be used as a handle to access the TAU performance data.

." make the size of the head bigger **EXAMPLE**

**\>C/C++:**

```

void *ptr;
TAU_PROFILER_CREATE(ptr, "foo","", TAU_USER);
TAU_PROFILER_START(ptr);
foo(2);
TAU_PROFILER_STOP(ptr);
```

." make the size of the head bigger **SEE ALSO**

**TAU\_PROFILER\_START** **TAU\_PROFILER\_STOP** **TAU\_PROFILER\_GET\_CALLS** **TAU\_PROFILER\_GET\_CHILD\_CALLS** **TAU\_PROFILER\_GET\_INCLUSIVE\_VALUES** **TAU\_PROFILER\_GET\_ExCLUSIVE\_VALUES** **TAU\_PROFILER\_GET\_COUNTER\_INFO**
