Sophie

Sophie

distrib > Mageia > 4 > x86_64 > by-pkgid > b0aa6cd23b567cd0e312b072b2e3b0bf > files > 1184

nvidia-cuda-toolkit-devel-5.5.22-2.mga4.nonfree.x86_64.rpm

<!DOCTYPE html
  PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-us" xml:lang="en-us">
   <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8"></meta>
      <meta http-equiv="X-UA-Compatible" content="IE=edge"></meta>
      <meta name="copyright" content="(C) Copyright 2005"></meta>
      <meta name="DC.rights.owner" content="(C) Copyright 2005"></meta>
      <meta name="DC.Type" content="cppModule"></meta>
      <meta name="DC.Title" content="CUPTI Activity API"></meta>
      <meta name="abstract" content=""></meta>
      <meta name="description" content=""></meta>
      <meta name="DC.Format" content="XHTML"></meta>
      <meta name="DC.Identifier" content="group__CUPTI__ACTIVITY__API"></meta>
      <link rel="stylesheet" type="text/css" href="../common/formatting/commonltr.css"></link>
      <link rel="stylesheet" type="text/css" href="../common/formatting/site.css"></link>
      <title>CUPTI :: CUDA Toolkit Documentation</title>
      <!--[if lt IE 9]>
      <script src="../common/formatting/html5shiv-printshiv.min.js"></script>
      <![endif]-->
      <script type="text/javascript" charset="utf-8" src="../common/formatting/jquery.min.js"></script>
      <script type="text/javascript" charset="utf-8" src="../common/formatting/jquery.ba-hashchange.min.js"></script>
      <link rel="canonical" href="http://docs.nvidia.com/cuda/cupti/index.html"></link>
      <link rel="stylesheet" type="text/css" href="../common/formatting/qwcode.highlight.css"></link>
   </head>
   <body>
      
      <article id="contents">
         <div id="breadcrumbs"><a href="group__CUPTI__RESULT__API.html" shape="rect">&lt; Previous</a> | <a href="group__CUPTI__CALLBACK__API.html" shape="rect">Next &gt;</a></div>
         <div id="release-info">CUPTI
            (<a href="../../pdf/CUPTI_Library.pdf">PDF</a>)
            -
            CUDA Toolkit v5.5
            (<a href="https://developer.nvidia.com/cuda-toolkit-archive">older</a>)
            -
            Last updated 
            July 19, 2013
            -
            <a href="mailto:cudatools@nvidia.com?subject=CUDA Tools Documentation Feedback: cupti">Send Feedback</a></div>
         <div class="topic reference apiRef apiPackage cppModule" id="group__CUPTI__ACTIVITY__API"><a name="group__CUPTI__ACTIVITY__API" shape="rect">
               <!-- --></a><h2 class="topictitle2 cppModule">2.3.&nbsp;CUPTI Activity API</h2>
            <div class="section">
               <p>Functions, types, and enums that implement the CUPTI Activity API. </p>
            </div>
            <h3 class="fake_sectiontitle member_header">Classes</h3>
            <dl class="members">
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__Activity.html#structCUpti__Activity" title="The base activity record." shape="rect">CUpti_Activity</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The base activity record. </span><a href="structCUpti__Activity.html#structCUpti__Activity" class="link" title="The base activity record." shape="rect"></a></dd>
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__ActivityAPI.html#structCUpti__ActivityAPI" title="The activity record for a driver or runtime API invocation." shape="rect">CUpti_ActivityAPI</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The activity record for a driver or runtime API invocation. </span><a href="structCUpti__ActivityAPI.html#structCUpti__ActivityAPI" class="link" title="The activity record for a driver or runtime API invocation." shape="rect"></a></dd>
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__ActivityBranch.html#structCUpti__ActivityBranch" title="The activity record for source level result branch." shape="rect">CUpti_ActivityBranch</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The activity record for source level result branch. </span><a href="structCUpti__ActivityBranch.html#structCUpti__ActivityBranch" class="link" title="The activity record for source level result branch." shape="rect"></a></dd>
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__ActivityCdpKernel.html#structCUpti__ActivityCdpKernel" title="The activity record for CDP (CUDA Dynamic Parallelism) kernel." shape="rect">CUpti_ActivityCdpKernel</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The activity record for CDP (CUDA Dynamic Parallelism) kernel. </span><a href="structCUpti__ActivityCdpKernel.html#structCUpti__ActivityCdpKernel" class="link" title="The activity record for CDP (CUDA Dynamic Parallelism) kernel." shape="rect"></a></dd>
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__ActivityContext.html#structCUpti__ActivityContext" title="The activity record for a context." shape="rect">CUpti_ActivityContext</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The activity record for a context. </span><a href="structCUpti__ActivityContext.html#structCUpti__ActivityContext" class="link" title="The activity record for a context." shape="rect"></a></dd>
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__ActivityDevice.html#structCUpti__ActivityDevice" title="The activity record for a device." shape="rect">CUpti_ActivityDevice</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The activity record for a device. </span><a href="structCUpti__ActivityDevice.html#structCUpti__ActivityDevice" class="link" title="The activity record for a device." shape="rect"></a></dd>
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__ActivityEnvironment.html#structCUpti__ActivityEnvironment" title="The activity record for CUPTI environmental data." shape="rect">CUpti_ActivityEnvironment</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The activity record for CUPTI environmental data. </span><a href="structCUpti__ActivityEnvironment.html#structCUpti__ActivityEnvironment" class="link" title="The activity record for CUPTI environmental data." shape="rect"></a></dd>
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__ActivityEvent.html#structCUpti__ActivityEvent" title="The activity record for a CUPTI event." shape="rect">CUpti_ActivityEvent</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The activity record for a CUPTI event. </span><a href="structCUpti__ActivityEvent.html#structCUpti__ActivityEvent" class="link" title="The activity record for a CUPTI event." shape="rect"></a></dd>
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__ActivityEventInstance.html#structCUpti__ActivityEventInstance" title="The activity record for a CUPTI event with instance information." shape="rect">CUpti_ActivityEventInstance</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The activity record for a CUPTI event with instance information. </span><a href="structCUpti__ActivityEventInstance.html#structCUpti__ActivityEventInstance" class="link" title="The activity record for a CUPTI event with instance information." shape="rect"></a></dd>
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__ActivityGlobalAccess.html#structCUpti__ActivityGlobalAccess" title="The activity record for source-level global access." shape="rect">CUpti_ActivityGlobalAccess</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The activity record for source-level global access. </span><a href="structCUpti__ActivityGlobalAccess.html#structCUpti__ActivityGlobalAccess" class="link" title="The activity record for source-level global access." shape="rect"></a></dd>
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__ActivityKernel.html#structCUpti__ActivityKernel" title="The activity record for kernel. (deprecated)." shape="rect">CUpti_ActivityKernel</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The activity record for kernel. (deprecated). </span><a href="structCUpti__ActivityKernel.html#structCUpti__ActivityKernel" class="link" title="The activity record for kernel. (deprecated)." shape="rect"></a></dd>
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__ActivityKernel2.html#structCUpti__ActivityKernel2" title="The activity record for a kernel (CUDA 5.5 onwards)." shape="rect">CUpti_ActivityKernel2</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The activity record for a kernel (CUDA 5.5 onwards). </span><a href="structCUpti__ActivityKernel2.html#structCUpti__ActivityKernel2" class="link" title="The activity record for a kernel (CUDA 5.5 onwards)." shape="rect"></a></dd>
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__ActivityMarker.html#structCUpti__ActivityMarker" title="The activity record providing a marker which is an instantaneous point in time." shape="rect">CUpti_ActivityMarker</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The activity record providing a marker which is an instantaneous point in time. </span><a href="structCUpti__ActivityMarker.html#structCUpti__ActivityMarker" class="link" title="The activity record providing a marker which is an instantaneous point in time." shape="rect"></a></dd>
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__ActivityMarkerData.html#structCUpti__ActivityMarkerData" title="The activity record providing detailed information for a marker." shape="rect">CUpti_ActivityMarkerData</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The activity record providing detailed information for a marker. </span><a href="structCUpti__ActivityMarkerData.html#structCUpti__ActivityMarkerData" class="link" title="The activity record providing detailed information for a marker." shape="rect"></a></dd>
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__ActivityMemcpy.html#structCUpti__ActivityMemcpy" title="The activity record for memory copies." shape="rect">CUpti_ActivityMemcpy</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The activity record for memory copies. </span><a href="structCUpti__ActivityMemcpy.html#structCUpti__ActivityMemcpy" class="link" title="The activity record for memory copies." shape="rect"></a></dd>
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__ActivityMemcpy2.html#structCUpti__ActivityMemcpy2" title="The activity record for peer-to-peer memory copies." shape="rect">CUpti_ActivityMemcpy2</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The activity record for peer-to-peer memory copies. </span><a href="structCUpti__ActivityMemcpy2.html#structCUpti__ActivityMemcpy2" class="link" title="The activity record for peer-to-peer memory copies." shape="rect"></a></dd>
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__ActivityMemset.html#structCUpti__ActivityMemset" title="The activity record for memset." shape="rect">CUpti_ActivityMemset</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The activity record for memset. </span><a href="structCUpti__ActivityMemset.html#structCUpti__ActivityMemset" class="link" title="The activity record for memset." shape="rect"></a></dd>
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__ActivityMetric.html#structCUpti__ActivityMetric" title="The activity record for a CUPTI metric." shape="rect">CUpti_ActivityMetric</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The activity record for a CUPTI metric. </span><a href="structCUpti__ActivityMetric.html#structCUpti__ActivityMetric" class="link" title="The activity record for a CUPTI metric." shape="rect"></a></dd>
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__ActivityMetricInstance.html#structCUpti__ActivityMetricInstance" title="The activity record for a CUPTI metric with instance information. This activity record represents a CUPTI metric value for a specific metric domain instance (CUPTI_ACTIVITY_KIND_METRIC_INSTANCE). This activity record kind is not produced by the activity API but is included for completeness and ease-of-use. Profile frameworks built on top of CUPTI that collect metric data may choose to use this type to store the collected metric data. This activity record should be used when metric domain instance information needs to be associated with the metric." shape="rect">CUpti_ActivityMetricInstance</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The activity record for a CUPTI metric with instance information. This activity record represents a CUPTI metric value for
                     a specific metric domain instance (CUPTI_ACTIVITY_KIND_METRIC_INSTANCE). This activity record kind is not produced by the
                     activity API but is included for completeness and ease-of-use. Profile frameworks built on top of CUPTI that collect metric
                     data may choose to use this type to store the collected metric data. This activity record should be used when metric domain
                     instance information needs to be associated with the metric. </span><a href="structCUpti__ActivityMetricInstance.html#structCUpti__ActivityMetricInstance" class="link" title="The activity record for a CUPTI metric with instance information. This activity record represents a CUPTI metric value for a specific metric domain instance (CUPTI_ACTIVITY_KIND_METRIC_INSTANCE). This activity record kind is not produced by the activity API but is included for completeness and ease-of-use. Profile frameworks built on top of CUPTI that collect metric data may choose to use this type to store the collected metric data. This activity record should be used when metric domain instance information needs to be associated with the metric." shape="rect"></a></dd>
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__ActivityName.html#structCUpti__ActivityName" title="The activity record providing a name." shape="rect">CUpti_ActivityName</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The activity record providing a name. </span><a href="structCUpti__ActivityName.html#structCUpti__ActivityName" class="link" title="The activity record providing a name." shape="rect"></a></dd>
               <dt><span class="member_type">union&nbsp;</span><span class="member_name">
                     <div><a class="link" href="unionCUpti__ActivityObjectKindId.html#unionCUpti__ActivityObjectKindId" title="Identifiers for object kinds as specified by CUpti_ActivityObjectKind." shape="rect">CUpti_ActivityObjectKindId</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Identifiers for object kinds as specified by CUpti_ActivityObjectKind. </span><a href="unionCUpti__ActivityObjectKindId.html#unionCUpti__ActivityObjectKindId" class="link" title="Identifiers for object kinds as specified by CUpti_ActivityObjectKind." shape="rect"></a></dd>
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__ActivityOverhead.html#structCUpti__ActivityOverhead" title="The activity record for CUPTI and driver overheads." shape="rect">CUpti_ActivityOverhead</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The activity record for CUPTI and driver overheads. </span><a href="structCUpti__ActivityOverhead.html#structCUpti__ActivityOverhead" class="link" title="The activity record for CUPTI and driver overheads." shape="rect"></a></dd>
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__ActivityPreemption.html#structCUpti__ActivityPreemption" title="The activity record for a preemption of a CDP kernel." shape="rect">CUpti_ActivityPreemption</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The activity record for a preemption of a CDP kernel. </span><a href="structCUpti__ActivityPreemption.html#structCUpti__ActivityPreemption" class="link" title="The activity record for a preemption of a CDP kernel." shape="rect"></a></dd>
               <dt><span class="member_type">struct&nbsp;</span><span class="member_name">
                     <div><a class="link" href="structCUpti__ActivitySourceLocator.html#structCUpti__ActivitySourceLocator" title="The activity record for source locator." shape="rect">CUpti_ActivitySourceLocator</a></div></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The activity record for source locator. </span><a href="structCUpti__ActivitySourceLocator.html#structCUpti__ActivitySourceLocator" class="link" title="The activity record for source locator." shape="rect"></a></dd>
            </dl>
            <h3 class="fake_sectiontitle member_header">Defines</h3>
            <dl class="members">
               <dt><span class="member_type">#define&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g97e26d46f328081037f013942dbb82c5" shape="rect">CUPTI_CORRELATION_ID_UNKNOWN</a> 0</span></dt>
               <dd class="shortdesc"><span></span><span class="desc"></span></dd>
               <dt><span class="member_type">#define&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g55b5747de740c3daaa3aa63650eb654e" shape="rect">CUPTI_GRID_ID_UNKNOWN</a> 0LL</span></dt>
               <dd class="shortdesc"><span></span><span class="desc"></span></dd>
               <dt><span class="member_type">#define&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g79142ac09b1bf1b37cf6db06be375533" shape="rect">CUPTI_SOURCE_LOCATOR_ID_UNKNOWN</a> 0</span></dt>
               <dd class="shortdesc"><span></span><span class="desc"></span></dd>
               <dt><span class="member_type">#define&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g03ed33cb1e0d4bf43c446ee3375d0c18" shape="rect">CUPTI_TIMESTAMP_UNKNOWN</a> 0LL</span></dt>
               <dd class="shortdesc"><span></span><span class="desc"></span></dd>
            </dl>
            <h3 class="fake_sectiontitle member_header">Typedefs</h3>
            <dl class="members">
               <dt><span class="member_type">typedef 
                     void
                     &nbsp;</span><span class="member_name">( *<a href="#group__CUPTI__ACTIVITY__API_1g081fec67efc2c2504362e8e34fce7e6e" shape="rect">CUpti_BuffersCallbackCompleteFunc</a> )(  CUcontext<span>&nbsp;</span><span class="keyword keyword apiItemName">context</span>, <span>&nbsp;</span><span class="keyword keyword apiItemName">uint32_t streamId</span>,  uint8_t*
                     <span>&nbsp;</span><span class="keyword keyword apiItemName">buffer</span>, <span>&nbsp;</span><span class="keyword keyword apiItemName">size_t size</span>, <span>&nbsp;</span><span class="keyword keyword apiItemName">size_t validSize</span> ) </span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Function type for callback used by CUPTI to return a buffer of activity records. </span></dd>
               <dt><span class="member_type">typedef 
                     void
                     &nbsp;</span><span class="member_name">( *<a href="#group__CUPTI__ACTIVITY__API_1g3337d3cbfe624b05d4af435fd17e5b28" shape="rect">CUpti_BuffersCallbackRequestFunc</a> )(  uint8_t*
                     <span>&nbsp;</span><span class="keyword keyword apiItemName">*buffer</span>,  size_t*
                     <span>&nbsp;</span><span class="keyword keyword apiItemName">size</span>,  size_t*
                     <span>&nbsp;</span><span class="keyword keyword apiItemName">maxNumRecords</span> ) </span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Function type for callback used by CUPTI to request an empty buffer for storing activity records. </span></dd>
            </dl>
            <h3 class="fake_sectiontitle member_header">Enumerations</h3>
            <dl class="members">
               <dt><span class="member_type">enum&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g1c31fe3f8ea0e46c6c20dd454a6caab6" shape="rect">CUpti_ActivityAttribute</a></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Activity attributes. </span></dd>
               <dt><span class="member_type">enum&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1gf46dcec421da358ab4e9edad76774179" shape="rect">CUpti_ActivityComputeApiKind</a></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The kind of a compute API. </span></dd>
               <dt><span class="member_type">enum&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1gea1ccba1baca62ba5d6919e5685bfedf" shape="rect">CUpti_ActivityEnvironmentKind</a></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The kind of environment data. Used to indicate what type of data is being reported by an environment activity record. </span></dd>
               <dt><span class="member_type">enum&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1gaef8ced52897c4377b0aee6196c37639" shape="rect">CUpti_ActivityFlag</a></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Flags associated with activity records. </span></dd>
               <dt><span class="member_type">enum&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1gefed720d5a60c3e8b286cd386c4913e3" shape="rect">CUpti_ActivityKind</a></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The kinds of activity records. </span></dd>
               <dt><span class="member_type">enum&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g10056d66c2ee966fc5cde439eb0a3661" shape="rect">CUpti_ActivityMemcpyKind</a></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The kind of a memory copy, indicating the source and destination targets of the copy. </span></dd>
               <dt><span class="member_type">enum&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g9969b86f0e54989b27080dc6083263bc" shape="rect">CUpti_ActivityMemoryKind</a></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The kinds of memory accessed by a memory copy. </span></dd>
               <dt><span class="member_type">enum&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g9b6136c1123883722ded735eb52cf270" shape="rect">CUpti_ActivityObjectKind</a></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The kinds of activity objects. </span></dd>
               <dt><span class="member_type">enum&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1gcc8863d79c939f6bb57324db4503b265" shape="rect">CUpti_ActivityOverheadKind</a></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The kinds of activity overhead. </span></dd>
               <dt><span class="member_type">enum&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g7609527c3c6c122a8bb5b1e5d1ae1c4a" shape="rect">CUpti_ActivityPreemptionKind</a></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">The kind of a preemption activity. </span></dd>
               <dt><span class="member_type">enum&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g3dcc6c3e9409a1183932febfdde58173" shape="rect">CUpti_EnvironmentClocksThrottleReason</a></span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Reasons for clock throttling. </span></dd>
            </dl>
            <h3 class="fake_sectiontitle member_header">Functions</h3>
            <dl class="members">
               <dt><span class="member_type"><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a>&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g5704ebc73f8ecc4b7428becec841be6b" shape="rect">cuptiActivityDequeueBuffer</a> (  CUcontext<span>&nbsp;</span><span class="keyword keyword apiItemName">context</span>, uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">streamId</span>, uint8_t**<span>&nbsp;</span><span class="keyword keyword apiItemName">buffer</span>, size_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">validBufferSizeBytes</span> ) </span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Dequeue a buffer containing activity records. </span></dd>
               <dt><span class="member_type"><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a>&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1gbc086f5a89450f4e3b75c6f6832f569c" shape="rect">cuptiActivityDisable</a> (  <a href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1gefed720d5a60c3e8b286cd386c4913e3" title="The kinds of activity records. " shape="rect">CUpti_ActivityKind</a><span>&nbsp;</span><span class="keyword keyword apiItemName">kind</span> ) </span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Disable collection of a specific kind of activity record. </span></dd>
               <dt><span class="member_type"><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a>&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g90d628b01bcc8044b86060e8a1ff7457" shape="rect">cuptiActivityDisableContext</a> (  CUcontext<span>&nbsp;</span><span class="keyword keyword apiItemName">context</span>, <a href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1gefed720d5a60c3e8b286cd386c4913e3" title="The kinds of activity records. " shape="rect">CUpti_ActivityKind</a><span>&nbsp;</span><span class="keyword keyword apiItemName">kind</span> ) </span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Disable collection of a specific kind of activity record for a context. </span></dd>
               <dt><span class="member_type"><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a>&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g348cf81393b39ab2f89604aaaa8defc2" shape="rect">cuptiActivityEnable</a> (  <a href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1gefed720d5a60c3e8b286cd386c4913e3" title="The kinds of activity records. " shape="rect">CUpti_ActivityKind</a><span>&nbsp;</span><span class="keyword keyword apiItemName">kind</span> ) </span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Enable collection of a specific kind of activity record. </span></dd>
               <dt><span class="member_type"><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a>&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g2e2ee46c089fa139481e434f1b0f4cfc" shape="rect">cuptiActivityEnableContext</a> (  CUcontext<span>&nbsp;</span><span class="keyword keyword apiItemName">context</span>, <a href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1gefed720d5a60c3e8b286cd386c4913e3" title="The kinds of activity records. " shape="rect">CUpti_ActivityKind</a><span>&nbsp;</span><span class="keyword keyword apiItemName">kind</span> ) </span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Enable collection of a specific kind of activity record for a context. </span></dd>
               <dt><span class="member_type"><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a>&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g5ee90e924f943bc64fd1599a1bd799a6" shape="rect">cuptiActivityEnqueueBuffer</a> (  CUcontext<span>&nbsp;</span><span class="keyword keyword apiItemName">context</span>, uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">streamId</span>, uint8_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">buffer</span>, size_t<span>&nbsp;</span><span class="keyword keyword apiItemName">bufferSizeBytes</span> ) </span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Queue a buffer for activity record collection. </span></dd>
               <dt><span class="member_type"><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a>&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g805065d34981e9284b9943e753b20122" shape="rect">cuptiActivityFlush</a> (  CUcontext<span>&nbsp;</span><span class="keyword keyword apiItemName">context</span>, uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">streamId</span>, uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">flag</span> ) </span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Wait for all activity records are delivered via the completion callback. </span></dd>
               <dt><span class="member_type"><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a>&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1gbae7160b2db7e97247a0d23812e373eb" shape="rect">cuptiActivityFlushAll</a> (  uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">flag</span> ) </span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Wait for all activity records are delivered via the completion callback. </span></dd>
               <dt><span class="member_type"><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a>&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g92859af3b4bc569577d386dea71404b2" shape="rect">cuptiActivityGetAttribute</a> (  <a href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1g1c31fe3f8ea0e46c6c20dd454a6caab6" title="Activity attributes. " shape="rect">CUpti_ActivityAttribute</a><span>&nbsp;</span><span class="keyword keyword apiItemName">attr</span>, size_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">valueSize</span>, void*<span>&nbsp;</span><span class="keyword keyword apiItemName">value</span> ) </span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Read an activity API attribute. </span></dd>
               <dt><span class="member_type"><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a>&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1gb397f490a0df4a1633ea7b6e2420294f" shape="rect">cuptiActivityGetNextRecord</a> (  uint8_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">buffer</span>, size_t<span>&nbsp;</span><span class="keyword keyword apiItemName">validBufferSizeBytes</span>, <a href="structCUpti__Activity.html#structCUpti__Activity" title="The base activity record. " shape="rect">CUpti_Activity</a>**<span>&nbsp;</span><span class="keyword keyword apiItemName">record</span> ) </span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Iterate over the activity records in a buffer. </span></dd>
               <dt><span class="member_type"><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a>&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g496d13eb1f4f4fcce37ce3f3434c5e4a" shape="rect">cuptiActivityGetNumDroppedRecords</a> (  CUcontext<span>&nbsp;</span><span class="keyword keyword apiItemName">context</span>, uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">streamId</span>, size_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">dropped</span> ) </span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Get the number of activity records that were dropped of insufficient buffer space. </span></dd>
               <dt><span class="member_type"><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a>&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g2209436ffc541e8b3bedd40d59600529" shape="rect">cuptiActivityQueryBuffer</a> (  CUcontext<span>&nbsp;</span><span class="keyword keyword apiItemName">context</span>, uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">streamId</span>, size_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">validBufferSizeBytes</span> ) </span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Query the status of the buffer at the head of a queue. </span></dd>
               <dt><span class="member_type"><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a>&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g237e2401b0ce69dcb265b1f9079f0b65" shape="rect">cuptiActivityRegisterCallbacks</a> (  <a href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1g3337d3cbfe624b05d4af435fd17e5b28" title="Function type for callback used by CUPTI to request an empty buffer for storing activity records. " shape="rect">CUpti_BuffersCallbackRequestFunc</a><span>&nbsp;</span><span class="keyword keyword apiItemName">funcBufferRequested</span>, <a href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1g081fec67efc2c2504362e8e34fce7e6e" title="Function type for callback used by CUPTI to return a buffer of activity records. " shape="rect">CUpti_BuffersCallbackCompleteFunc</a><span>&nbsp;</span><span class="keyword keyword apiItemName">funcBufferCompleted</span> ) </span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Registers callback functions with CUPTI for activity buffer handling. </span></dd>
               <dt><span class="member_type"><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a>&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1ga4ce1e3f22626c5c2a8b450a996fe580" shape="rect">cuptiActivitySetAttribute</a> (  <a href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1g1c31fe3f8ea0e46c6c20dd454a6caab6" title="Activity attributes. " shape="rect">CUpti_ActivityAttribute</a><span>&nbsp;</span><span class="keyword keyword apiItemName">attr</span>, size_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">valueSize</span>, void*<span>&nbsp;</span><span class="keyword keyword apiItemName">value</span> ) </span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Write an activity API attribute. </span></dd>
               <dt><span class="member_type"><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a>&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g0cc36b42dbf08fffc772e9c932749c77" shape="rect">cuptiGetDeviceId</a> (  CUcontext<span>&nbsp;</span><span class="keyword keyword apiItemName">context</span>, uint32_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">deviceId</span> ) </span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Get the ID of a device. </span></dd>
               <dt><span class="member_type"><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a>&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g04ece23d24e29e8d98daadba09f1839c" shape="rect">cuptiGetStreamId</a> (  CUcontext<span>&nbsp;</span><span class="keyword keyword apiItemName">context</span>, CUstream<span>&nbsp;</span><span class="keyword keyword apiItemName">stream</span>, uint32_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">streamId</span> ) </span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Get the ID of a stream. </span></dd>
               <dt><span class="member_type"><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a>&nbsp;</span><span class="member_name"><a href="#group__CUPTI__ACTIVITY__API_1g7d8294c686b5293237a6daae8eae3dde" shape="rect">cuptiGetTimestamp</a> (  uint64_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">timestamp</span> ) </span></dt>
               <dd class="shortdesc"><span></span><span class="desc">Get the CUPTI timestamp. </span></dd>
            </dl>
            <div class="description">
               <h3 class="sectiontitle">Defines</h3>
               <dl class="description">
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g97e26d46f328081037f013942dbb82c5" id="group__CUPTI__ACTIVITY__API_1g97e26d46f328081037f013942dbb82c5" shape="rect">
                        <!-- --></a><span>#define CUPTI_CORRELATION_ID_UNKNOWN 0</span></dt>
                  <dd class="description">
                     <div class="section">
                        <p>An invalid/unknown correlation ID. A correlation ID of this value indicates that there is no correlation for the activity
                           record. 
                        </p>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g55b5747de740c3daaa3aa63650eb654e" id="group__CUPTI__ACTIVITY__API_1g55b5747de740c3daaa3aa63650eb654e" shape="rect">
                        <!-- --></a><span>#define CUPTI_GRID_ID_UNKNOWN 0LL</span></dt>
                  <dd class="description">
                     <div class="section">
                        <p>An invalid/unknown grid ID. </p>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g79142ac09b1bf1b37cf6db06be375533" id="group__CUPTI__ACTIVITY__API_1g79142ac09b1bf1b37cf6db06be375533" shape="rect">
                        <!-- --></a><span>#define CUPTI_SOURCE_LOCATOR_ID_UNKNOWN 0</span></dt>
                  <dd class="description">
                     <div class="section">
                        <p>The source-locator ID that indicates an unknown source location. There is not an actual <a class="xref" href="structCUpti__ActivitySourceLocator.html#structCUpti__ActivitySourceLocator" title="The activity record for source locator." shape="rect">CUpti_ActivitySourceLocator</a> object corresponding to this value. 
                        </p>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g03ed33cb1e0d4bf43c446ee3375d0c18" id="group__CUPTI__ACTIVITY__API_1g03ed33cb1e0d4bf43c446ee3375d0c18" shape="rect">
                        <!-- --></a><span>#define CUPTI_TIMESTAMP_UNKNOWN 0LL</span></dt>
                  <dd class="description">
                     <div class="section">
                        <p>An invalid/unknown timestamp for a start, end, queued, submitted, or completed time. </p>
                     </div>
                  </dd>
               </dl>
            </div>
            <div class="description">
               <h3 class="sectiontitle">Typedefs</h3>
               <dl class="description">
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g081fec67efc2c2504362e8e34fce7e6e" id="group__CUPTI__ACTIVITY__API_1g081fec67efc2c2504362e8e34fce7e6e" shape="rect">
                        <!-- --></a><span>
                        void
                        ( *CUpti_BuffersCallbackCompleteFunc )(  CUcontext<span>&nbsp;</span><span class="keyword keyword apiItemName">context</span>, <span>&nbsp;</span><span class="keyword keyword apiItemName">uint32_t streamId</span>,  uint8_t*
                        <span>&nbsp;</span><span class="keyword keyword apiItemName">buffer</span>, <span>&nbsp;</span><span class="keyword keyword apiItemName">size_t size</span>, <span>&nbsp;</span><span class="keyword keyword apiItemName">size_t validSize</span> ) </span></dt>
                  <dd class="description">
                     <div class="section">
                        <p>Function type for callback used by CUPTI to return a buffer of activity records.  This callback function returns to the CUPTI
                           client a buffer containing activity records. The buffer contains <tt class="ph tt code">validSize</tt> bytes of activity records which should be read using cuptiActivityGetNextRecord. The number of dropped records can be read
                           using cuptiActivityGetNumDroppedRecords. After this call CUPTI relinquished ownership of the buffer and will not use it anymore.
                           The client may return the buffer to CUPTI using the CUpti_BuffersCallbackRequestFunc callback.
                        </p>
                        <p class="p"></p>
                     </div>
                  </dd>
                  <div class="section">
                     <h6 class="parameter_header">
                        Parameters
                        
                     </h6>
                     <dl class="table-display-params">
                        <dt><tt class="code"><span class="keyword keyword apiItemName">context</span></tt></dt>
                        <dd>The context this buffer is associated with. If NULL, the buffer is associated with the global activities. </dd>
                        <dt><tt class="code"><span class="keyword keyword apiItemName">uint32_t streamId</span></tt></dt>
                        <dd></dd>
                        <dt><tt class="code"><span class="keyword keyword apiItemName">buffer</span></tt></dt>
                        <dd>The activity record buffer. </dd>
                        <dt><tt class="code"><span class="keyword keyword apiItemName">size_t size</span></tt></dt>
                        <dd></dd>
                        <dt><tt class="code"><span class="keyword keyword apiItemName">size_t validSize</span></tt></dt>
                        <dd></dd>
                     </dl>
                  </div>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g3337d3cbfe624b05d4af435fd17e5b28" id="group__CUPTI__ACTIVITY__API_1g3337d3cbfe624b05d4af435fd17e5b28" shape="rect">
                        <!-- --></a><span>
                        void
                        ( *CUpti_BuffersCallbackRequestFunc )(  uint8_t*
                        <span>&nbsp;</span><span class="keyword keyword apiItemName">*buffer</span>,  size_t*
                        <span>&nbsp;</span><span class="keyword keyword apiItemName">size</span>,  size_t*
                        <span>&nbsp;</span><span class="keyword keyword apiItemName">maxNumRecords</span> ) </span></dt>
                  <dd class="description">
                     <div class="section">
                        <p>Function type for callback used by CUPTI to request an empty buffer for storing activity records.  This callback function
                           signals the CUPTI client that an activity buffer is needed by CUPTI. The activity buffer is used by CUPTI to store activity
                           records. The callback function can decline the request by setting <tt class="ph tt code">*buffer</tt> to NULL. In this case CUPTI may drop activity records.
                        </p>
                        <p class="p"></p>
                     </div>
                  </dd>
                  <div class="section">
                     <h6 class="parameter_header">
                        Parameters
                        
                     </h6>
                     <dl class="table-display-params">
                        <dt><tt class="code"><span class="keyword keyword apiItemName">*buffer</span></tt></dt>
                        <dd></dd>
                        <dt><tt class="code"><span class="keyword keyword apiItemName">size</span></tt></dt>
                        <dd>Returns the size of the returned buffer. </dd>
                        <dt><tt class="code"><span class="keyword keyword apiItemName">maxNumRecords</span></tt></dt>
                        <dd>Returns the maximum number of records that should be placed in the buffer. If 0 then the buffer is filled with as many records
                           as possible. If &gt; 0 the buffer is filled with at most that many records before it is returned. 
                        </dd>
                     </dl>
                  </div>
               </dl>
            </div>
            <div class="description">
               <h3 class="sectiontitle">Enumerations</h3>
               <dl class="description">
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g1c31fe3f8ea0e46c6c20dd454a6caab6" id="group__CUPTI__ACTIVITY__API_1g1c31fe3f8ea0e46c6c20dd454a6caab6" shape="rect">
                        <!-- --></a><span>enum CUpti_ActivityAttribute</span></dt>
                  <dd class="description">
                     <div class="section">
                        <p>These attributes are used to control the behavior of the activity API. </p>
                     </div>
                     <div class="enum-members">
                        <h6 class="enumerator_header">
                           Values
                           
                        </h6>
                        <dl class="enumerator">
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_ATTR_DEVICE_BUFFER_SIZE = <span class="ph ph apiData">0</span></span></dt>
                           <dd>The device memory reserved for storing profiling data for non-CDP operations for each stream. The value is a size_t.Larger
                              buffers require less flush operations but consume more device memory. Small buffers might increase the risk of missing timestamps
                              for concurrent kernel records in the asynchronous buffer handling mode if too many kernels are launched/replayed between context
                              synchronizations. This value only applies to new allocations.Set this value before initializing CUDA or before creating a
                              stream to ensure it is considered for the following allocations.Note: The actual amount of device memory per stream reserved
                              by CUPTI might be larger. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_ATTR_DEVICE_BUFFER_SIZE_CDP = <span class="ph ph apiData">1</span></span></dt>
                           <dd>The device memory reserved for storing profiling data for CDP operations for each stream. The value is a size_t.Larger buffers
                              require less flush operations but consume more device memory. This value only applies to new allocations.Set this value before
                              initializing CUDA or before creating a stream to ensure it is considered for the following allocations.Note: The actual amount
                              of device memory per stream reserved by CUPTI might be larger. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_ATTR_DEVICE_BUFFER_POOL_LIMIT = <span class="ph ph apiData">2</span></span></dt>
                           <dd>The maximum number of device memory buffers stored for reuse by CUPTI. The value is a size_t.Buffers can be reused by streams
                              of the same context. Increasing this value reduces the profiling overhead when the application creates and destroys many streams.
                              Setting this value will not modify the number of memory buffers currently stored.Set this value before initializing CUDA to
                              ensure the limit is not exceeded. 
                           </dd>
                        </dl>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1gf46dcec421da358ab4e9edad76774179" id="group__CUPTI__ACTIVITY__API_1gf46dcec421da358ab4e9edad76774179" shape="rect">
                        <!-- --></a><span>enum CUpti_ActivityComputeApiKind</span></dt>
                  <dd class="description">
                     <div class="section">
                        <p></p>
                     </div>
                     <div class="enum-members">
                        <h6 class="enumerator_header">
                           Values
                           
                        </h6>
                        <dl class="enumerator">
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_COMPUTE_API_UNKNOWN = <span class="ph ph apiData">0</span></span></dt>
                           <dd>The compute API is not known. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_COMPUTE_API_CUDA = <span class="ph ph apiData">1</span></span></dt>
                           <dd>The compute APIs are for CUDA. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_COMPUTE_API_FORCE_INT = <span class="ph ph apiData">0x7fffffff</span></span></dt>
                           <dd></dd>
                        </dl>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1gea1ccba1baca62ba5d6919e5685bfedf" id="group__CUPTI__ACTIVITY__API_1gea1ccba1baca62ba5d6919e5685bfedf" shape="rect">
                        <!-- --></a><span>enum CUpti_ActivityEnvironmentKind</span></dt>
                  <dd class="description">
                     <div class="section">
                        <p></p>
                     </div>
                     <div class="enum-members">
                        <h6 class="enumerator_header">
                           Values
                           
                        </h6>
                        <dl class="enumerator">
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_ENVIRONMENT_UNKNOWN = <span class="ph ph apiData">0</span></span></dt>
                           <dd>Unknown data. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_ENVIRONMENT_SPEED = <span class="ph ph apiData">1</span></span></dt>
                           <dd>The environment data is related to speed. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_ENVIRONMENT_TEMPERATURE = <span class="ph ph apiData">2</span></span></dt>
                           <dd>The environment data is related to temperature. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_ENVIRONMENT_POWER = <span class="ph ph apiData">3</span></span></dt>
                           <dd>The environment data is related to power. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_ENVIRONMENT_COOLING = <span class="ph ph apiData">4</span></span></dt>
                           <dd>The environment data is related to cooling. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_ENVIRONMENT_COUNT</span></dt>
                           <dd></dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_ENVIRONMENT_KIND_FORCE_INT = <span class="ph ph apiData">0x7fffffff</span></span></dt>
                           <dd></dd>
                        </dl>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1gaef8ced52897c4377b0aee6196c37639" id="group__CUPTI__ACTIVITY__API_1gaef8ced52897c4377b0aee6196c37639" shape="rect">
                        <!-- --></a><span>enum CUpti_ActivityFlag</span></dt>
                  <dd class="description">
                     <div class="section">
                        <p>Activity record flags. Flags can be combined by bitwise OR to associated multiple flags with an activity record. Each flag
                           is specific to a certain activity kind, as noted below. 
                        </p>
                     </div>
                     <div class="enum-members">
                        <h6 class="enumerator_header">
                           Values
                           
                        </h6>
                        <dl class="enumerator">
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_FLAG_NONE = <span class="ph ph apiData">0</span></span></dt>
                           <dd>Indicates the activity record has no flags. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_FLAG_DEVICE_CONCURRENT_KERNELS = <span class="ph ph apiData">1&lt;&lt;0</span></span></dt>
                           <dd>Indicates the activity represents a device that supports concurrent kernel execution. Valid for CUPTI_ACTIVITY_KIND_DEVICE.
                              
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_FLAG_MEMCPY_ASYNC = <span class="ph ph apiData">1&lt;&lt;0</span></span></dt>
                           <dd>Indicates the activity represents an asynchronous memcpy operation. Valid for CUPTI_ACTIVITY_KIND_MEMCPY. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_FLAG_MARKER_INSTANTANEOUS = <span class="ph ph apiData">1&lt;&lt;0</span></span></dt>
                           <dd>Indicates the activity represents an instantaneous marker. Valid for CUPTI_ACTIVITY_KIND_MARKER. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_FLAG_MARKER_START = <span class="ph ph apiData">1&lt;&lt;1</span></span></dt>
                           <dd>Indicates the activity represents a region start marker. Valid for CUPTI_ACTIVITY_KIND_MARKER. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_FLAG_MARKER_END = <span class="ph ph apiData">1&lt;&lt;2</span></span></dt>
                           <dd>Indicates the activity represents a region end marker. Valid for CUPTI_ACTIVITY_KIND_MARKER. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_FLAG_MARKER_COLOR_NONE = <span class="ph ph apiData">1&lt;&lt;0</span></span></dt>
                           <dd>Indicates the activity represents a marker that does not specify a color. Valid for CUPTI_ACTIVITY_KIND_MARKER_DATA. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_FLAG_MARKER_COLOR_ARGB = <span class="ph ph apiData">1&lt;&lt;1</span></span></dt>
                           <dd>Indicates the activity represents a marker that specifies a color in alpha-red-green-blue format. Valid for CUPTI_ACTIVITY_KIND_MARKER_DATA.
                              
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_FLAG_GLOBAL_ACCESS_KIND_SIZE_MASK = <span class="ph ph apiData">0xFF&lt;&lt;0</span></span></dt>
                           <dd>The number of bytes requested by each thread Valid for <a class="xref" href="structCUpti__ActivityGlobalAccess.html#structCUpti__ActivityGlobalAccess" title="The activity record for source-level global access." shape="rect">CUpti_ActivityGlobalAccess</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_FLAG_GLOBAL_ACCESS_KIND_LOAD = <span class="ph ph apiData">1&lt;&lt;8</span></span></dt>
                           <dd>If bit in this flag is set, the access was load, else it is a store access. Valid for <a class="xref" href="structCUpti__ActivityGlobalAccess.html#structCUpti__ActivityGlobalAccess" title="The activity record for source-level global access." shape="rect">CUpti_ActivityGlobalAccess</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_FLAG_GLOBAL_ACCESS_KIND_CACHED = <span class="ph ph apiData">1&lt;&lt;9</span></span></dt>
                           <dd>If this bit in flag is set, the load access was cached else it is uncached. Valid for <a class="xref" href="structCUpti__ActivityGlobalAccess.html#structCUpti__ActivityGlobalAccess" title="The activity record for source-level global access." shape="rect">CUpti_ActivityGlobalAccess</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_FLAG_METRIC_OVERFLOWED = <span class="ph ph apiData">1&lt;&lt;0</span></span></dt>
                           <dd>If this bit in flag is set, the metric value overflowed. Valid for <a class="xref" href="structCUpti__ActivityMetric.html#structCUpti__ActivityMetric" title="The activity record for a CUPTI metric." shape="rect">CUpti_ActivityMetric</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_FLAG_METRIC_VALUE_INVALID = <span class="ph ph apiData">1&lt;&lt;1</span></span></dt>
                           <dd>If this bit in flag is set, the metric value couldn't be calculated. This occurs when a value(s) required to calculate the
                              metric is missing. Valid for <a class="xref" href="structCUpti__ActivityMetric.html#structCUpti__ActivityMetric" title="The activity record for a CUPTI metric." shape="rect">CUpti_ActivityMetric</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_FLAG_FORCE_INT = <span class="ph ph apiData">0x7fffffff</span></span></dt>
                           <dd></dd>
                        </dl>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1gefed720d5a60c3e8b286cd386c4913e3" id="group__CUPTI__ACTIVITY__API_1gefed720d5a60c3e8b286cd386c4913e3" shape="rect">
                        <!-- --></a><span>enum CUpti_ActivityKind</span></dt>
                  <dd class="description">
                     <div class="section">
                        <p>Each activity record kind represents information about a GPU or an activity occurring on a CPU or GPU. Each kind is associated
                           with a activity record structure that holds the information associated with the kind. 
                        </p>
                        <p class="p apiDesc_subtitle"><strong class="ph b">See also:</strong></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__Activity.html#structCUpti__Activity" title="The base activity record." shape="rect">CUpti_Activity</a></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__ActivityAPI.html#structCUpti__ActivityAPI" title="The activity record for a driver or runtime API invocation." shape="rect">CUpti_ActivityAPI</a></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__ActivityContext.html#structCUpti__ActivityContext" title="The activity record for a context." shape="rect">CUpti_ActivityContext</a></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__ActivityDevice.html#structCUpti__ActivityDevice" title="The activity record for a device." shape="rect">CUpti_ActivityDevice</a></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__ActivityEvent.html#structCUpti__ActivityEvent" title="The activity record for a CUPTI event." shape="rect">CUpti_ActivityEvent</a></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__ActivityEventInstance.html#structCUpti__ActivityEventInstance" title="The activity record for a CUPTI event with instance information." shape="rect">CUpti_ActivityEventInstance</a></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__ActivityKernel.html#structCUpti__ActivityKernel" title="The activity record for kernel. (deprecated)." shape="rect">CUpti_ActivityKernel</a></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__ActivityKernel2.html#structCUpti__ActivityKernel2" title="The activity record for a kernel (CUDA 5.5 onwards)." shape="rect">CUpti_ActivityKernel2</a></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__ActivityCdpKernel.html#structCUpti__ActivityCdpKernel" title="The activity record for CDP (CUDA Dynamic Parallelism) kernel." shape="rect">CUpti_ActivityCdpKernel</a></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__ActivityPreemption.html#structCUpti__ActivityPreemption" title="The activity record for a preemption of a CDP kernel." shape="rect">CUpti_ActivityPreemption</a></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__ActivityMemcpy.html#structCUpti__ActivityMemcpy" title="The activity record for memory copies." shape="rect">CUpti_ActivityMemcpy</a></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__ActivityMemcpy2.html#structCUpti__ActivityMemcpy2" title="The activity record for peer-to-peer memory copies." shape="rect">CUpti_ActivityMemcpy2</a></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__ActivityMemset.html#structCUpti__ActivityMemset" title="The activity record for memset." shape="rect">CUpti_ActivityMemset</a></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__ActivityMetric.html#structCUpti__ActivityMetric" title="The activity record for a CUPTI metric." shape="rect">CUpti_ActivityMetric</a></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__ActivityMetricInstance.html#structCUpti__ActivityMetricInstance" title="The activity record for a CUPTI metric with instance information. This activity record represents a CUPTI metric value for a specific metric domain instance (CUPTI_ACTIVITY_KIND_METRIC_INSTANCE). This activity record kind is not produced by the activity API but is included for completeness and ease-of-use. Profile frameworks built on top of CUPTI that collect metric data may choose to use this type to store the collected metric data. This activity record should be used when metric domain instance information needs to be associated with the metric." shape="rect">CUpti_ActivityMetricInstance</a></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__ActivityName.html#structCUpti__ActivityName" title="The activity record providing a name." shape="rect">CUpti_ActivityName</a></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__ActivityMarker.html#structCUpti__ActivityMarker" title="The activity record providing a marker which is an instantaneous point in time." shape="rect">CUpti_ActivityMarker</a></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__ActivityMarkerData.html#structCUpti__ActivityMarkerData" title="The activity record providing detailed information for a marker." shape="rect">CUpti_ActivityMarkerData</a></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__ActivitySourceLocator.html#structCUpti__ActivitySourceLocator" title="The activity record for source locator." shape="rect">CUpti_ActivitySourceLocator</a></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__ActivityGlobalAccess.html#structCUpti__ActivityGlobalAccess" title="The activity record for source-level global access." shape="rect">CUpti_ActivityGlobalAccess</a></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__ActivityBranch.html#structCUpti__ActivityBranch" title="The activity record for source level result branch." shape="rect">CUpti_ActivityBranch</a></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__ActivityOverhead.html#structCUpti__ActivityOverhead" title="The activity record for CUPTI and driver overheads." shape="rect">CUpti_ActivityOverhead</a></p>
                        <p class="p see_subsection"><a class="xref" href="structCUpti__ActivityEnvironment.html#structCUpti__ActivityEnvironment" title="The activity record for CUPTI environmental data." shape="rect">CUpti_ActivityEnvironment</a></p>
                        <p class="p"></p>
                     </div>
                     <div class="enum-members">
                        <h6 class="enumerator_header">
                           Values
                           
                        </h6>
                        <dl class="enumerator">
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_INVALID = <span class="ph ph apiData">0</span></span></dt>
                           <dd>The activity record is invalid. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_MEMCPY = <span class="ph ph apiData">1</span></span></dt>
                           <dd>A host&lt;-&gt;host, host&lt;-&gt;device, or device&lt;-&gt;device memory copy. The corresponding activity record structure is <a class="xref" href="structCUpti__ActivityMemcpy.html#structCUpti__ActivityMemcpy" title="The activity record for memory copies." shape="rect">CUpti_ActivityMemcpy</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_MEMSET = <span class="ph ph apiData">2</span></span></dt>
                           <dd>A memory set executing on the GPU. The corresponding activity record structure is <a class="xref" href="structCUpti__ActivityMemset.html#structCUpti__ActivityMemset" title="The activity record for memset." shape="rect">CUpti_ActivityMemset</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_KERNEL = <span class="ph ph apiData">3</span></span></dt>
                           <dd>A kernel executing on the GPU. The corresponding activity record structure is <a class="xref" href="structCUpti__ActivityKernel2.html#structCUpti__ActivityKernel2" title="The activity record for a kernel (CUDA 5.5 onwards)." shape="rect">CUpti_ActivityKernel2</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_DRIVER = <span class="ph ph apiData">4</span></span></dt>
                           <dd>A CUDA driver API function execution. The corresponding activity record structure is <a class="xref" href="structCUpti__ActivityAPI.html#structCUpti__ActivityAPI" title="The activity record for a driver or runtime API invocation." shape="rect">CUpti_ActivityAPI</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_RUNTIME = <span class="ph ph apiData">5</span></span></dt>
                           <dd>A CUDA runtime API function execution. The corresponding activity record structure is <a class="xref" href="structCUpti__ActivityAPI.html#structCUpti__ActivityAPI" title="The activity record for a driver or runtime API invocation." shape="rect">CUpti_ActivityAPI</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_EVENT = <span class="ph ph apiData">6</span></span></dt>
                           <dd>An event value. The corresponding activity record structure is <a class="xref" href="structCUpti__ActivityEvent.html#structCUpti__ActivityEvent" title="The activity record for a CUPTI event." shape="rect">CUpti_ActivityEvent</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_METRIC = <span class="ph ph apiData">7</span></span></dt>
                           <dd>A metric value. The corresponding activity record structure is <a class="xref" href="structCUpti__ActivityMetric.html#structCUpti__ActivityMetric" title="The activity record for a CUPTI metric." shape="rect">CUpti_ActivityMetric</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_DEVICE = <span class="ph ph apiData">8</span></span></dt>
                           <dd>Information about a device. The corresponding activity record structure is <a class="xref" href="structCUpti__ActivityDevice.html#structCUpti__ActivityDevice" title="The activity record for a device." shape="rect">CUpti_ActivityDevice</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_CONTEXT = <span class="ph ph apiData">9</span></span></dt>
                           <dd>Information about a context. The corresponding activity record structure is <a class="xref" href="structCUpti__ActivityContext.html#structCUpti__ActivityContext" title="The activity record for a context." shape="rect">CUpti_ActivityContext</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_CONCURRENT_KERNEL = <span class="ph ph apiData">10</span></span></dt>
                           <dd>A (potentially concurrent) kernel executing on the GPU. The corresponding activity record structure is <a class="xref" href="structCUpti__ActivityKernel2.html#structCUpti__ActivityKernel2" title="The activity record for a kernel (CUDA 5.5 onwards)." shape="rect">CUpti_ActivityKernel2</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_NAME = <span class="ph ph apiData">11</span></span></dt>
                           <dd>Thread, device, context, etc. name. The corresponding activity record structure is <a class="xref" href="structCUpti__ActivityName.html#structCUpti__ActivityName" title="The activity record providing a name." shape="rect">CUpti_ActivityName</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_MARKER = <span class="ph ph apiData">12</span></span></dt>
                           <dd>Instantaneous, start, or end marker. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_MARKER_DATA = <span class="ph ph apiData">13</span></span></dt>
                           <dd>Extended, optional, data about a marker. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_SOURCE_LOCATOR = <span class="ph ph apiData">14</span></span></dt>
                           <dd>Source information about source level result. The corresponding activity record structure is <a class="xref" href="structCUpti__ActivitySourceLocator.html#structCUpti__ActivitySourceLocator" title="The activity record for source locator." shape="rect">CUpti_ActivitySourceLocator</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_GLOBAL_ACCESS = <span class="ph ph apiData">15</span></span></dt>
                           <dd>Results for source-level global acccess. The corresponding activity record structure is <a class="xref" href="structCUpti__ActivityGlobalAccess.html#structCUpti__ActivityGlobalAccess" title="The activity record for source-level global access." shape="rect">CUpti_ActivityGlobalAccess</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_BRANCH = <span class="ph ph apiData">16</span></span></dt>
                           <dd>Results for source-level branch. The corresponding activity record structure is <a class="xref" href="structCUpti__ActivityBranch.html#structCUpti__ActivityBranch" title="The activity record for source level result branch." shape="rect">CUpti_ActivityBranch</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_OVERHEAD = <span class="ph ph apiData">17</span></span></dt>
                           <dd>Overhead activity records. The corresponding activity record structure is <a class="xref" href="structCUpti__ActivityOverhead.html#structCUpti__ActivityOverhead" title="The activity record for CUPTI and driver overheads." shape="rect">CUpti_ActivityOverhead</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_CDP_KERNEL = <span class="ph ph apiData">18</span></span></dt>
                           <dd>A CDP (CUDA Dynamic Parallel) kernel executing on the GPU. The corresponding activity record structure is <a class="xref" href="structCUpti__ActivityCdpKernel.html#structCUpti__ActivityCdpKernel" title="The activity record for CDP (CUDA Dynamic Parallelism) kernel." shape="rect">CUpti_ActivityCdpKernel</a>. This activity can not be directly enabled or disabled. It is enabled and disabled through concurrent kernel activity <a class="xref" href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1ggefed720d5a60c3e8b286cd386c4913e355d11bb9d376e95d141ddd13468f0b7a" shape="rect">CUPTI_ACTIVITY_KIND_CONCURRENT_KERNEL</a></dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_PREEMPTION = <span class="ph ph apiData">19</span></span></dt>
                           <dd>Preemption activity record indicating a preemption of a CDP (CUDA Dynamic Parallel) kernel executing on the GPU. The corresponding
                              activity record structure is <a class="xref" href="structCUpti__ActivityPreemption.html#structCUpti__ActivityPreemption" title="The activity record for a preemption of a CDP kernel." shape="rect">CUpti_ActivityPreemption</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_ENVIRONMENT = <span class="ph ph apiData">20</span></span></dt>
                           <dd>Environment activity records indicating power, clock, thermal, etc. levels of the GPU. The corresponding activity record structure
                              is <a class="xref" href="structCUpti__ActivityEnvironment.html#structCUpti__ActivityEnvironment" title="The activity record for CUPTI environmental data." shape="rect">CUpti_ActivityEnvironment</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_EVENT_INSTANCE = <span class="ph ph apiData">21</span></span></dt>
                           <dd>An event value associated with a specific event domain instance. The corresponding activity record structure is <a class="xref" href="structCUpti__ActivityEventInstance.html#structCUpti__ActivityEventInstance" title="The activity record for a CUPTI event with instance information." shape="rect">CUpti_ActivityEventInstance</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_MEMCPY2 = <span class="ph ph apiData">22</span></span></dt>
                           <dd>A peer to peer memory copy. The corresponding activity record structure is <a class="xref" href="structCUpti__ActivityMemcpy2.html#structCUpti__ActivityMemcpy2" title="The activity record for peer-to-peer memory copies." shape="rect">CUpti_ActivityMemcpy2</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_METRIC_INSTANCE = <span class="ph ph apiData">23</span></span></dt>
                           <dd>A metric value associated with a specific metric domain instance. The corresponding activity record structure is <a class="xref" href="structCUpti__ActivityMetricInstance.html#structCUpti__ActivityMetricInstance" title="The activity record for a CUPTI metric with instance information. This activity record represents a CUPTI metric value for a specific metric domain instance (CUPTI_ACTIVITY_KIND_METRIC_INSTANCE). This activity record kind is not produced by the activity API but is included for completeness and ease-of-use. Profile frameworks built on top of CUPTI that collect metric data may choose to use this type to store the collected metric data. This activity record should be used when metric domain instance information needs to be associated with the metric." shape="rect">CUpti_ActivityMetricInstance</a>. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_KIND_FORCE_INT = <span class="ph ph apiData">0x7fffffff</span></span></dt>
                           <dd></dd>
                        </dl>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g10056d66c2ee966fc5cde439eb0a3661" id="group__CUPTI__ACTIVITY__API_1g10056d66c2ee966fc5cde439eb0a3661" shape="rect">
                        <!-- --></a><span>enum CUpti_ActivityMemcpyKind</span></dt>
                  <dd class="description">
                     <div class="section">
                        <p>Each kind represents the source and destination targets of a memory copy. Targets are host, device, and array. </p>
                     </div>
                     <div class="enum-members">
                        <h6 class="enumerator_header">
                           Values
                           
                        </h6>
                        <dl class="enumerator">
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_MEMCPY_KIND_UNKNOWN = <span class="ph ph apiData">0</span></span></dt>
                           <dd>The memory copy kind is not known. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_MEMCPY_KIND_HTOD = <span class="ph ph apiData">1</span></span></dt>
                           <dd>A host to device memory copy. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_MEMCPY_KIND_DTOH = <span class="ph ph apiData">2</span></span></dt>
                           <dd>A device to host memory copy. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_MEMCPY_KIND_HTOA = <span class="ph ph apiData">3</span></span></dt>
                           <dd>A host to device array memory copy. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_MEMCPY_KIND_ATOH = <span class="ph ph apiData">4</span></span></dt>
                           <dd>A device array to host memory copy. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_MEMCPY_KIND_ATOA = <span class="ph ph apiData">5</span></span></dt>
                           <dd>A device array to device array memory copy. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_MEMCPY_KIND_ATOD = <span class="ph ph apiData">6</span></span></dt>
                           <dd>A device array to device memory copy. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_MEMCPY_KIND_DTOA = <span class="ph ph apiData">7</span></span></dt>
                           <dd>A device to device array memory copy. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_MEMCPY_KIND_DTOD = <span class="ph ph apiData">8</span></span></dt>
                           <dd>A device to device memory copy. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_MEMCPY_KIND_HTOH = <span class="ph ph apiData">9</span></span></dt>
                           <dd>A host to host memory copy. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_MEMCPY_KIND_PTOP = <span class="ph ph apiData">10</span></span></dt>
                           <dd>A peer to peer memory copy. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_MEMCPY_KIND_FORCE_INT = <span class="ph ph apiData">0x7fffffff</span></span></dt>
                           <dd></dd>
                        </dl>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g9969b86f0e54989b27080dc6083263bc" id="group__CUPTI__ACTIVITY__API_1g9969b86f0e54989b27080dc6083263bc" shape="rect">
                        <!-- --></a><span>enum CUpti_ActivityMemoryKind</span></dt>
                  <dd class="description">
                     <div class="section">
                        <p>Each kind represents the type of the source or destination memory accessed by a memory copy. </p>
                     </div>
                     <div class="enum-members">
                        <h6 class="enumerator_header">
                           Values
                           
                        </h6>
                        <dl class="enumerator">
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_MEMORY_KIND_UNKNOWN = <span class="ph ph apiData">0</span></span></dt>
                           <dd>The source or destination memory kind is unknown. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_MEMORY_KIND_PAGEABLE = <span class="ph ph apiData">1</span></span></dt>
                           <dd>The source or destination memory is pageable. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_MEMORY_KIND_PINNED = <span class="ph ph apiData">2</span></span></dt>
                           <dd>The source or destination memory is pinned. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_MEMORY_KIND_DEVICE = <span class="ph ph apiData">3</span></span></dt>
                           <dd>The source or destination memory is on the device. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_MEMORY_KIND_ARRAY = <span class="ph ph apiData">4</span></span></dt>
                           <dd>The source or destination memory is an array. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_MEMORY_KIND_FORCE_INT = <span class="ph ph apiData">0x7fffffff</span></span></dt>
                           <dd></dd>
                        </dl>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g9b6136c1123883722ded735eb52cf270" id="group__CUPTI__ACTIVITY__API_1g9b6136c1123883722ded735eb52cf270" shape="rect">
                        <!-- --></a><span>enum CUpti_ActivityObjectKind</span></dt>
                  <dd class="description">
                     <div class="section">
                        <p outputclass="apiDesc_subtitle"><strong class="ph b">See also:</strong></p>
                        <p class="p see_subsection"><a class="xref" href="unionCUpti__ActivityObjectKindId.html#unionCUpti__ActivityObjectKindId" title="Identifiers for object kinds as specified by CUpti_ActivityObjectKind." shape="rect">CUpti_ActivityObjectKindId</a></p>
                        <p class="p"></p>
                     </div>
                     <div class="enum-members">
                        <h6 class="enumerator_header">
                           Values
                           
                        </h6>
                        <dl class="enumerator">
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_OBJECT_UNKNOWN = <span class="ph ph apiData">0</span></span></dt>
                           <dd>The object kind is not known. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_OBJECT_PROCESS = <span class="ph ph apiData">1</span></span></dt>
                           <dd>A process. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_OBJECT_THREAD = <span class="ph ph apiData">2</span></span></dt>
                           <dd>A thread. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_OBJECT_DEVICE = <span class="ph ph apiData">3</span></span></dt>
                           <dd>A device. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_OBJECT_CONTEXT = <span class="ph ph apiData">4</span></span></dt>
                           <dd>A context. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_OBJECT_STREAM = <span class="ph ph apiData">5</span></span></dt>
                           <dd>A stream. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_OBJECT_FORCE_INT = <span class="ph ph apiData">0x7fffffff</span></span></dt>
                           <dd></dd>
                        </dl>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1gcc8863d79c939f6bb57324db4503b265" id="group__CUPTI__ACTIVITY__API_1gcc8863d79c939f6bb57324db4503b265" shape="rect">
                        <!-- --></a><span>enum CUpti_ActivityOverheadKind</span></dt>
                  <dd class="description">
                     <div class="section">
                        <p></p>
                     </div>
                     <div class="enum-members">
                        <h6 class="enumerator_header">
                           Values
                           
                        </h6>
                        <dl class="enumerator">
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_OVERHEAD_UNKNOWN = <span class="ph ph apiData">0</span></span></dt>
                           <dd>The overhead kind is not known. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_OVERHEAD_DRIVER_COMPILER = <span class="ph ph apiData">1</span></span></dt>
                           <dd>Compiler(JIT) overhead. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_OVERHEAD_CUPTI_BUFFER_FLUSH = <span class="ph ph apiData">1&lt;&lt;16</span></span></dt>
                           <dd>Activity buffer flush overhead. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_OVERHEAD_CUPTI_INSTRUMENTATION = <span class="ph ph apiData">2&lt;&lt;16</span></span></dt>
                           <dd>CUPTI instrumentation overhead. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_OVERHEAD_CUPTI_RESOURCE = <span class="ph ph apiData">3&lt;&lt;16</span></span></dt>
                           <dd>CUPTI resource creation and destruction overhead. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_OVERHEAD_FORCE_INT = <span class="ph ph apiData">0x7fffffff</span></span></dt>
                           <dd></dd>
                        </dl>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g7609527c3c6c122a8bb5b1e5d1ae1c4a" id="group__CUPTI__ACTIVITY__API_1g7609527c3c6c122a8bb5b1e5d1ae1c4a" shape="rect">
                        <!-- --></a><span>enum CUpti_ActivityPreemptionKind</span></dt>
                  <dd class="description">
                     <div class="section">
                        <p></p>
                     </div>
                     <div class="enum-members">
                        <h6 class="enumerator_header">
                           Values
                           
                        </h6>
                        <dl class="enumerator">
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_PREEMPTION_KIND_UNKNOWN = <span class="ph ph apiData">0</span></span></dt>
                           <dd>The preemption kind is not known. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_PREEMPTION_KIND_SAVE = <span class="ph ph apiData">1</span></span></dt>
                           <dd>Preemption to save CDP block. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_PREEMPTION_KIND_RESTORE = <span class="ph ph apiData">2</span></span></dt>
                           <dd>Preemption to restore CDP block. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_ACTIVITY_PREEMPTION_KIND_FORCE_INT = <span class="ph ph apiData">0x7fffffff</span></span></dt>
                           <dd></dd>
                        </dl>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g3dcc6c3e9409a1183932febfdde58173" id="group__CUPTI__ACTIVITY__API_1g3dcc6c3e9409a1183932febfdde58173" shape="rect">
                        <!-- --></a><span>enum CUpti_EnvironmentClocksThrottleReason</span></dt>
                  <dd class="description">
                     <div class="section">
                        <p>The possible reasons that a clock can be throttled. There can be more than one reason that a clock is being throttled so these
                           types can be combined by bitwise OR. These are used in the clocksThrottleReason field in the Environment Activity Record.
                           
                        </p>
                     </div>
                     <div class="enum-members">
                        <h6 class="enumerator_header">
                           Values
                           
                        </h6>
                        <dl class="enumerator">
                           <dt><span class="enum-member-name-def">CUPTI_CLOCKS_THROTTLE_REASON_GPU_IDLE = <span class="ph ph apiData">0x00000001</span></span></dt>
                           <dd>Nothing is running on the GPU and the clocks are dropping to idle state. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_CLOCKS_THROTTLE_REASON_USER_DEFINED_CLOCKS = <span class="ph ph apiData">0x00000002</span></span></dt>
                           <dd>The GPU clocks are limited by a user specified limit. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_CLOCKS_THROTTLE_REASON_SW_POWER_CAP = <span class="ph ph apiData">0x00000004</span></span></dt>
                           <dd>A software power scaling algorithm is reducing the clocks below requested clocks. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_CLOCKS_THROTTLE_REASON_HW_SLOWDOWN = <span class="ph ph apiData">0x00000008</span></span></dt>
                           <dd>Hardware slowdown to reduce the clock by a factor of two or more is engaged. This is an indicator of one of the following:
                              1) Temperature is too high, 2) External power brake assertion is being triggered (e.g. by the system power supply), 3) Change
                              in power state. 
                           </dd>
                           <dt><span class="enum-member-name-def">CUPTI_CLOCKS_THROTTLE_REASON_UNKNOWN = <span class="ph ph apiData">0x80000000</span></span></dt>
                           <dd>Some unspecified factor is reducing the clocks. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_CLOCKS_THROTTLE_REASON_UNSUPPORTED = <span class="ph ph apiData">0x40000000</span></span></dt>
                           <dd>Throttle reason is not supported for this GPU. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_CLOCKS_THROTTLE_REASON_NONE = <span class="ph ph apiData">0x00000000</span></span></dt>
                           <dd>No clock throttling. </dd>
                           <dt><span class="enum-member-name-def">CUPTI_CLOCKS_THROTTLE_REASON_FORCE_INT = <span class="ph ph apiData">0x7fffffff</span></span></dt>
                           <dd></dd>
                        </dl>
                     </div>
                  </dd>
               </dl>
            </div>
            <div class="description">
               <h3 class="sectiontitle">Functions</h3>
               <dl class="description">
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g5704ebc73f8ecc4b7428becec841be6b" id="group__CUPTI__ACTIVITY__API_1g5704ebc73f8ecc4b7428becec841be6b" shape="rect">
                        <!-- --></a><span><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a> cuptiActivityDequeueBuffer (  CUcontext<span>&nbsp;</span><span class="keyword keyword apiItemName">context</span>, uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">streamId</span>, uint8_t**<span>&nbsp;</span><span class="keyword keyword apiItemName">buffer</span>, size_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">validBufferSizeBytes</span> ) </span></dt>
                  <dd class="description">
                     <div class="section">Dequeue a buffer containing activity records. </div>
                     <div class="section">
                        <h6 class="parameter_header">
                           Parameters
                           
                        </h6>
                        <dl class="table-display-params">
                           <dt><tt class="code"><span class="keyword keyword apiItemName">context</span></tt></dt>
                           <dd>The context, or NULL to dequeue from the global queue </dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">streamId</span></tt></dt>
                           <dd>The stream ID </dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">buffer</span></tt></dt>
                           <dd>Returns the dequeued buffer </dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">validBufferSizeBytes</span></tt></dt>
                           <dd>Returns the number of bytes in the buffer that contain activity records</dd>
                        </dl>
                     </div>
                     <div class="section">
                        <h6 class="return_header">Returns</h6>
                        <p class="return">
                           <ul>
                              <li>CUPTI_SUCCESS 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_NOT_INITIALIZED 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_INVALID_OPERATION 
                                 <p class="p">if preceeded by a successful call to cuptiActivityRegisterCallbacks </p>
                              </li>
                              <li>CUPTI_ERROR_INVALID_PARAMETER 
                                 <p class="p">if <tt class="ph tt code">buffer</tt> or <tt class="ph tt code">validBufferSizeBytes</tt> are NULL 
                                 </p>
                              </li>
                              <li>CUPTI_ERROR_QUEUE_EMPTY 
                                 <p class="p">the queue is empty, <tt class="ph tt code">buffer</tt> returns NULL and <tt class="ph tt code">validBufferSizeBytes</tt> returns 0
                                 </p>
                              </li>
                           </ul>
                        </p>
                     </div>
                     <div class="section">
                        <h6 class="description_header">Description</h6>
                        <p>Remove the buffer from the head of the specified queue. See <a class="xref" href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1g5ee90e924f943bc64fd1599a1bd799a6" title="Queue a buffer for activity record collection." shape="rect">cuptiActivityEnqueueBuffer()</a> for description of queues. Calling this function transfers ownership of the buffer from CUPTI. CUPTI will no add any activity
                           records to the buffer after it is dequeued.
                        </p>
                        <p class="p">
                           
                           **DEPRECATED** This method is deprecated and will be removed in a future release. The new asynchronous API implemented by
                           <a class="xref" href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1g237e2401b0ce69dcb265b1f9079f0b65" title="Registers callback functions with CUPTI for activity buffer handling." shape="rect">cuptiActivityRegisterCallbacks()</a>, <a class="xref" href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1g805065d34981e9284b9943e753b20122" title="Wait for all activity records are delivered via the completion callback." shape="rect">cuptiActivityFlush()</a>, and <a class="xref" href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1gbae7160b2db7e97247a0d23812e373eb" title="Wait for all activity records are delivered via the completion callback." shape="rect">cuptiActivityFlushAll()</a> should be adopted. 
                        </p>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1gbc086f5a89450f4e3b75c6f6832f569c" id="group__CUPTI__ACTIVITY__API_1gbc086f5a89450f4e3b75c6f6832f569c" shape="rect">
                        <!-- --></a><span><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a> cuptiActivityDisable (  <a href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1gefed720d5a60c3e8b286cd386c4913e3" title="The kinds of activity records. " shape="rect">CUpti_ActivityKind</a><span>&nbsp;</span><span class="keyword keyword apiItemName">kind</span> ) </span></dt>
                  <dd class="description">
                     <div class="section">Disable collection of a specific kind of activity record. </div>
                     <div class="section">
                        <h6 class="parameter_header">
                           Parameters
                           
                        </h6>
                        <dl class="table-display-params">
                           <dt><tt class="code"><span class="keyword keyword apiItemName">kind</span></tt></dt>
                           <dd>The kind of activity record to stop collecting</dd>
                        </dl>
                     </div>
                     <div class="section">
                        <h6 class="return_header">Returns</h6>
                        <p class="return">
                           <ul>
                              <li>CUPTI_SUCCESS 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_NOT_INITIALIZED 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_INVALID_KIND 
                                 <p class="p">if the activity kind is not supported </p>
                              </li>
                           </ul>
                        </p>
                     </div>
                     <div class="section">
                        <h6 class="description_header">Description</h6>
                        <p>Disable collection of a specific kind of activity record. Multiple kinds can be disabled by calling this function multiple
                           times. By default all activity kinds are disabled for collection.
                        </p>
                        <p class="p"></p>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g90d628b01bcc8044b86060e8a1ff7457" id="group__CUPTI__ACTIVITY__API_1g90d628b01bcc8044b86060e8a1ff7457" shape="rect">
                        <!-- --></a><span><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a> cuptiActivityDisableContext (  CUcontext<span>&nbsp;</span><span class="keyword keyword apiItemName">context</span>, <a href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1gefed720d5a60c3e8b286cd386c4913e3" title="The kinds of activity records. " shape="rect">CUpti_ActivityKind</a><span>&nbsp;</span><span class="keyword keyword apiItemName">kind</span> ) </span></dt>
                  <dd class="description">
                     <div class="section">Disable collection of a specific kind of activity record for a context. </div>
                     <div class="section">
                        <h6 class="parameter_header">
                           Parameters
                           
                        </h6>
                        <dl class="table-display-params">
                           <dt><tt class="code"><span class="keyword keyword apiItemName">context</span></tt></dt>
                           <dd>The context for which activity is to be disabled </dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">kind</span></tt></dt>
                           <dd>The kind of activity record to stop collecting</dd>
                        </dl>
                     </div>
                     <div class="section">
                        <h6 class="return_header">Returns</h6>
                        <p class="return">
                           <ul>
                              <li>CUPTI_SUCCESS 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_NOT_INITIALIZED 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_INVALID_KIND 
                                 <p class="p">if the activity kind is not supported </p>
                              </li>
                           </ul>
                        </p>
                     </div>
                     <div class="section">
                        <h6 class="description_header">Description</h6>
                        <p>Disable collection of a specific kind of activity record for a context. This setting done by this API will supersede the global
                           settings for activity records. Multiple kinds can be enabled by calling this function multiple times.
                        </p>
                        <p class="p"></p>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g348cf81393b39ab2f89604aaaa8defc2" id="group__CUPTI__ACTIVITY__API_1g348cf81393b39ab2f89604aaaa8defc2" shape="rect">
                        <!-- --></a><span><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a> cuptiActivityEnable (  <a href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1gefed720d5a60c3e8b286cd386c4913e3" title="The kinds of activity records. " shape="rect">CUpti_ActivityKind</a><span>&nbsp;</span><span class="keyword keyword apiItemName">kind</span> ) </span></dt>
                  <dd class="description">
                     <div class="section">Enable collection of a specific kind of activity record. </div>
                     <div class="section">
                        <h6 class="parameter_header">
                           Parameters
                           
                        </h6>
                        <dl class="table-display-params">
                           <dt><tt class="code"><span class="keyword keyword apiItemName">kind</span></tt></dt>
                           <dd>The kind of activity record to collect</dd>
                        </dl>
                     </div>
                     <div class="section">
                        <h6 class="return_header">Returns</h6>
                        <p class="return">
                           <ul>
                              <li>CUPTI_SUCCESS 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_NOT_INITIALIZED 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_NOT_COMPATIBLE 
                                 <p class="p">if the activity kind cannot be enabled </p>
                              </li>
                              <li>CUPTI_ERROR_INVALID_KIND 
                                 <p class="p">if the activity kind is not supported </p>
                              </li>
                           </ul>
                        </p>
                     </div>
                     <div class="section">
                        <h6 class="description_header">Description</h6>
                        <p>Enable collection of a specific kind of activity record. Multiple kinds can be enabled by calling this function multiple times.
                           By default all activity kinds are disabled for collection.
                        </p>
                        <p class="p"></p>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g2e2ee46c089fa139481e434f1b0f4cfc" id="group__CUPTI__ACTIVITY__API_1g2e2ee46c089fa139481e434f1b0f4cfc" shape="rect">
                        <!-- --></a><span><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a> cuptiActivityEnableContext (  CUcontext<span>&nbsp;</span><span class="keyword keyword apiItemName">context</span>, <a href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1gefed720d5a60c3e8b286cd386c4913e3" title="The kinds of activity records. " shape="rect">CUpti_ActivityKind</a><span>&nbsp;</span><span class="keyword keyword apiItemName">kind</span> ) </span></dt>
                  <dd class="description">
                     <div class="section">Enable collection of a specific kind of activity record for a context. </div>
                     <div class="section">
                        <h6 class="parameter_header">
                           Parameters
                           
                        </h6>
                        <dl class="table-display-params">
                           <dt><tt class="code"><span class="keyword keyword apiItemName">context</span></tt></dt>
                           <dd>The context for which activity is to be enabled </dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">kind</span></tt></dt>
                           <dd>The kind of activity record to collect</dd>
                        </dl>
                     </div>
                     <div class="section">
                        <h6 class="return_header">Returns</h6>
                        <p class="return">
                           <ul>
                              <li>CUPTI_SUCCESS 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_NOT_INITIALIZED 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_NOT_COMPATIBLE 
                                 <p class="p">if the activity kind cannot be enabled </p>
                              </li>
                              <li>CUPTI_ERROR_INVALID_KIND 
                                 <p class="p">if the activity kind is not supported </p>
                              </li>
                           </ul>
                        </p>
                     </div>
                     <div class="section">
                        <h6 class="description_header">Description</h6>
                        <p>Enable collection of a specific kind of activity record for a context. This setting done by this API will supersede the global
                           settings for activity records enabled by <a class="xref" href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1g348cf81393b39ab2f89604aaaa8defc2" title="Enable collection of a specific kind of activity record." shape="rect">cuptiActivityEnable</a>. Multiple kinds can be enabled by calling this function multiple times.
                        </p>
                        <p class="p"></p>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g5ee90e924f943bc64fd1599a1bd799a6" id="group__CUPTI__ACTIVITY__API_1g5ee90e924f943bc64fd1599a1bd799a6" shape="rect">
                        <!-- --></a><span><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a> cuptiActivityEnqueueBuffer (  CUcontext<span>&nbsp;</span><span class="keyword keyword apiItemName">context</span>, uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">streamId</span>, uint8_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">buffer</span>, size_t<span>&nbsp;</span><span class="keyword keyword apiItemName">bufferSizeBytes</span> ) </span></dt>
                  <dd class="description">
                     <div class="section">Queue a buffer for activity record collection. </div>
                     <div class="section">
                        <h6 class="parameter_header">
                           Parameters
                           
                        </h6>
                        <dl class="table-display-params">
                           <dt><tt class="code"><span class="keyword keyword apiItemName">context</span></tt></dt>
                           <dd>The context, or NULL to enqueue on the global queue </dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">streamId</span></tt></dt>
                           <dd>The stream ID </dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">buffer</span></tt></dt>
                           <dd>The pointer to user supplied buffer for storing activity records.The buffer must be at least 8 byte aligned, and the size
                              of the buffer must be at least 1024 bytes. 
                           </dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">bufferSizeBytes</span></tt></dt>
                           <dd>The size of the buffer, in bytes. The size of the buffer must be at least 1024 bytes.</dd>
                        </dl>
                     </div>
                     <div class="section">
                        <h6 class="return_header">Returns</h6>
                        <p class="return">
                           <ul>
                              <li>CUPTI_SUCCESS 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_NOT_INITIALIZED 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_INVALID_OPERATION 
                                 <p class="p">if preceeded by a successful call to cuptiActivityRegisterCallbacks </p>
                              </li>
                              <li>CUPTI_ERROR_INVALID_PARAMETER 
                                 <p class="p">if <tt class="ph tt code">buffer</tt> is NULL, does not have alignment of at least 8 bytes, or is not at least 1024 bytes in size
                                 </p>
                              </li>
                           </ul>
                        </p>
                     </div>
                     <div class="section">
                        <h6 class="description_header">Description</h6>
                        <p>Queue a buffer for activity record collection. Calling this function transfers ownership of the buffer to CUPTI. The buffer
                           should not be accessed or modified until ownership is regained by calling <a class="xref" href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1g5704ebc73f8ecc4b7428becec841be6b" title="Dequeue a buffer containing activity records." shape="rect">cuptiActivityDequeueBuffer()</a>.
                        </p>
                        <p class="p">There are three types of queues:</p>
                        <p class="p">Global Queue: The global queue collects all activity records that are not associated with a valid context. All device and
                           API activity records are collected in the global queue. A buffer is enqueued in the global queue by specifying <tt class="ph tt code">context</tt> == NULL.
                        </p>
                        <p class="p">Context Queue: Each context queue collects activity records associated with that context that are not associated with a specific
                           stream or that are associated with the default stream. A buffer is enqueued in a context queue by specifying the context and
                           a <tt class="ph tt code">streamId</tt> of 0.
                        </p>
                        <p class="p">Stream Queue: Each stream queue collects memcpy, memset, and kernel activity records associated with the stream. A buffer
                           is enqueued in a stream queue by specifying a context and a non-zero stream ID.
                        </p>
                        <p class="p">Multiple buffers can be enqueued on each queue, and buffers can be enqueue on multiple queues.</p>
                        <p class="p">When a new activity record needs to be recorded, CUPTI searches for a non-empty queue to hold the record in this order: 1)
                           the appropriate stream queue, 2) the appropriate context queue. If the search does not find any queue with a buffer then the
                           activity record is dropped. If the search finds a queue containing a buffer, but that buffer is full, then the activity record
                           is dropped and the dropped record count for the queue is incremented. If the search finds a queue containing a buffer with
                           space available to hold the record, then the record is recorded in the buffer.
                        </p>
                        <p class="p">At a minimum, one or more buffers must be queued in the global queue and context queue at all times to avoid dropping activity
                           records. Global queue will not store any activity records for gpu activity(kernel, memcpy, memset). It is also necessary to
                           enqueue at least one buffer in the context queue of each context as it is created. The stream queues are optional and can
                           be used to reduce or eliminate application perturbations caused by the need to process or save the activity records returned
                           in the buffers. For example, if a stream queue is used, that queue can be flushed when the stream is synchronized.
                        </p>
                        <p class="p">
                           
                           **DEPRECATED** This method is deprecated and will be removed in a future release. The new asynchronous API implemented by
                           <a class="xref" href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1g237e2401b0ce69dcb265b1f9079f0b65" title="Registers callback functions with CUPTI for activity buffer handling." shape="rect">cuptiActivityRegisterCallbacks()</a>, <a class="xref" href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1g805065d34981e9284b9943e753b20122" title="Wait for all activity records are delivered via the completion callback." shape="rect">cuptiActivityFlush()</a>, and <a class="xref" href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1gbae7160b2db7e97247a0d23812e373eb" title="Wait for all activity records are delivered via the completion callback." shape="rect">cuptiActivityFlushAll()</a> should be adopted. 
                        </p>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g805065d34981e9284b9943e753b20122" id="group__CUPTI__ACTIVITY__API_1g805065d34981e9284b9943e753b20122" shape="rect">
                        <!-- --></a><span><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a> cuptiActivityFlush (  CUcontext<span>&nbsp;</span><span class="keyword keyword apiItemName">context</span>, uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">streamId</span>, uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">flag</span> ) </span></dt>
                  <dd class="description">
                     <div class="section">Wait for all activity records are delivered via the completion callback. </div>
                     <div class="section">
                        <h6 class="parameter_header">
                           Parameters
                           
                        </h6>
                        <dl class="table-display-params">
                           <dt><tt class="code"><span class="keyword keyword apiItemName">context</span></tt></dt>
                           <dd>A valid CUcontext or NULL. </dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">streamId</span></tt></dt>
                           <dd>The stream ID. </dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">flag</span></tt></dt>
                           <dd>Reserved, must be 0.</dd>
                        </dl>
                     </div>
                     <div class="section">
                        <h6 class="return_header">Returns</h6>
                        <p class="return">
                           <ul>
                              <li>CUPTI_SUCCESS 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_NOT_INITIALIZED 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_CUPTI_ERROR_INVALID_OPERATION 
                                 <p class="p">if not preceeded by a successful call to cuptiActivityRegisterCallbacks </p>
                              </li>
                              <li>CUPTI_ERROR_UNKNOWN 
                                 <p class="p">an internal error occurred </p>
                              </li>
                           </ul>
                        </p>
                     </div>
                     <div class="section">
                        <h6 class="description_header">Description</h6>
                        <p>This function does not return until all activity records associated with the specified context/stream are returned to the
                           CUPTI client using the callback registered in cuptiActivityRegisterCallbacks. To ensure that all activity records are complete,
                           the requested stream(s), if any, are synchronized.
                        </p>
                        <p class="p">If <tt class="ph tt code">context</tt> is NULL, the global activity records (i.e. those not associated with a particular stream) are flushed (in this case no streams
                           are synchonized). If <tt class="ph tt code">context</tt> is a valid CUcontext and <tt class="ph tt code">streamId</tt> is 0, the buffers of all streams of this context are flushed. Otherwise, the buffers of the specified stream in this context
                           is flushed.
                        </p>
                        <p class="p">Before calling this function, the buffer handling callback api must be activated by calling cuptiActivityRegisterCallbacks.</p>
                        <p class="p"></p>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1gbae7160b2db7e97247a0d23812e373eb" id="group__CUPTI__ACTIVITY__API_1gbae7160b2db7e97247a0d23812e373eb" shape="rect">
                        <!-- --></a><span><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a> cuptiActivityFlushAll (  uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">flag</span> ) </span></dt>
                  <dd class="description">
                     <div class="section">Wait for all activity records are delivered via the completion callback. </div>
                     <div class="section">
                        <h6 class="parameter_header">
                           Parameters
                           
                        </h6>
                        <dl class="table-display-params">
                           <dt><tt class="code"><span class="keyword keyword apiItemName">flag</span></tt></dt>
                           <dd>Reserved, must be 0.</dd>
                        </dl>
                     </div>
                     <div class="section">
                        <h6 class="return_header">Returns</h6>
                        <p class="return">
                           <ul>
                              <li>CUPTI_SUCCESS 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_NOT_INITIALIZED 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_INVALID_OPERATION 
                                 <p class="p">if not preceeded by a successful call to cuptiActivityRegisterCallbacks </p>
                              </li>
                              <li>CUPTI_ERROR_UNKNOWN 
                                 <p class="p">an internal error occurred </p>
                              </li>
                           </ul>
                        </p>
                     </div>
                     <div class="section">
                        <h6 class="description_header">Description</h6>
                        <p>This function does not return until all activity records associated with all contexts/streams (and the global buffers not
                           associated with any stream) are returned to the CUPTI client using the callback registered in cuptiActivityRegisterCallbacks.
                           To ensure that all activity records are complete, the requested stream(s), if any, are synchronized.
                        </p>
                        <p class="p">Before calling this function, the buffer handling callback api must be activated by calling cuptiActivityRegisterCallbacks.</p>
                        <p class="p"></p>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g92859af3b4bc569577d386dea71404b2" id="group__CUPTI__ACTIVITY__API_1g92859af3b4bc569577d386dea71404b2" shape="rect">
                        <!-- --></a><span><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a> cuptiActivityGetAttribute (  <a href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1g1c31fe3f8ea0e46c6c20dd454a6caab6" title="Activity attributes. " shape="rect">CUpti_ActivityAttribute</a><span>&nbsp;</span><span class="keyword keyword apiItemName">attr</span>, size_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">valueSize</span>, void*<span>&nbsp;</span><span class="keyword keyword apiItemName">value</span> ) </span></dt>
                  <dd class="description">
                     <div class="section">Read an activity API attribute. </div>
                     <div class="section">
                        <h6 class="parameter_header">
                           Parameters
                           
                        </h6>
                        <dl class="table-display-params">
                           <dt><tt class="code"><span class="keyword keyword apiItemName">attr</span></tt></dt>
                           <dd>The attribute to read </dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">valueSize</span></tt></dt>
                           <dd>Size of buffer pointed by the value, and returns the number of bytes written to <tt class="ph tt code">value</tt></dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">value</span></tt></dt>
                           <dd>Returns the value of the attribute</dd>
                        </dl>
                     </div>
                     <div class="section">
                        <h6 class="return_header">Returns</h6>
                        <p class="return">
                           <ul>
                              <li>CUPTI_SUCCESS 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_NOT_INITIALIZED 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_INVALID_PARAMETER 
                                 <p class="p">if <tt class="ph tt code">valueSize</tt> or <tt class="ph tt code">value</tt> is NULL, or if <tt class="ph tt code">attr</tt> is not an activity attribute 
                                 </p>
                              </li>
                              <li>CUPTI_ERROR_PARAMETER_SIZE_NOT_SUFFICIENT 
                                 <p class="p">Indicates that the <tt class="ph tt code">value</tt> buffer is too small to hold the attribute value. 
                                 </p>
                              </li>
                           </ul>
                        </p>
                     </div>
                     <div class="section">
                        <h6 class="description_header">Description</h6>
                        <p>Read an activity API attribute and return it in <tt class="ph tt code">*value</tt>.
                        </p>
                        <p class="p"></p>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1gb397f490a0df4a1633ea7b6e2420294f" id="group__CUPTI__ACTIVITY__API_1gb397f490a0df4a1633ea7b6e2420294f" shape="rect">
                        <!-- --></a><span><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a> cuptiActivityGetNextRecord (  uint8_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">buffer</span>, size_t<span>&nbsp;</span><span class="keyword keyword apiItemName">validBufferSizeBytes</span>, <a href="structCUpti__Activity.html#structCUpti__Activity" title="The base activity record. " shape="rect">CUpti_Activity</a>**<span>&nbsp;</span><span class="keyword keyword apiItemName">record</span> ) </span></dt>
                  <dd class="description">
                     <div class="section">Iterate over the activity records in a buffer. </div>
                     <div class="section">
                        <h6 class="parameter_header">
                           Parameters
                           
                        </h6>
                        <dl class="table-display-params">
                           <dt><tt class="code"><span class="keyword keyword apiItemName">buffer</span></tt></dt>
                           <dd>The buffer containing activity records </dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">validBufferSizeBytes</span></tt></dt>
                           <dd>The number of valid bytes in the buffer.</dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">record</span></tt></dt>
                           <dd>Inputs the previous record returned by cuptiActivityGetNextRecord and returns the next activity record from the buffer. If
                              input value is NULL, returns the first activity record in the buffer. Records of kind CUPTI_ACTIVITY_KIND_CONCURRENT_KERNEL
                              may contain invalid (0) timestamps, indicating that no timing information could be collected for lack of device memory. 
                           </dd>
                        </dl>
                     </div>
                     <div class="section">
                        <h6 class="return_header">Returns</h6>
                        <p class="return">
                           <ul>
                              <li>CUPTI_SUCCESS 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_NOT_INITIALIZED 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_MAX_LIMIT_REACHED 
                                 <p class="p">if no more records in the buffer </p>
                              </li>
                              <li>CUPTI_ERROR_INVALID_PARAMETER 
                                 <p class="p">if <tt class="ph tt code">buffer</tt> is NULL. 
                                 </p>
                              </li>
                           </ul>
                        </p>
                     </div>
                     <div class="section">
                        <h6 class="description_header">Description</h6>
                        <p>This is a helper function to iterate over the activity records in a buffer. A buffer of activity records is typically obtained
                           by using the <a class="xref" href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1g5704ebc73f8ecc4b7428becec841be6b" title="Dequeue a buffer containing activity records." shape="rect">cuptiActivityDequeueBuffer()</a> function or by receiving a CUpti_BuffersCallbackCompleteFunc callback.
                        </p>
                        <p class="p">An example of typical usage: <pre xml:space="preserve">‎ <a class="xref" href="structCUpti__Activity.html#structCUpti__Activity" title="The base activity record." shape="rect">CUpti_Activity</a> *record = NULL;
       <a class="xref" href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes." shape="rect">CUptiResult</a> status = <a class="xref" href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1gg8c54bf95108e67d858f37fcf76c8871460bd0257372573920d9bb2c802ce3b71" shape="rect">CUPTI_SUCCESS</a>;
         do {
            status = <a class="xref" href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1gb397f490a0df4a1633ea7b6e2420294f" title="Iterate over the activity records in a buffer." shape="rect">cuptiActivityGetNextRecord</a>(buffer, validSize, &amp;record);
            if(status == <a class="xref" href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1gg8c54bf95108e67d858f37fcf76c8871460bd0257372573920d9bb2c802ce3b71" shape="rect">CUPTI_SUCCESS</a>) {
                 // Use record here...
            }
            else if (status == <a class="xref" href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1gg8c54bf95108e67d858f37fcf76c88714a6d97464748158d2c5e45eeac821d1da" shape="rect">CUPTI_ERROR_MAX_LIMIT_REACHED</a>)
                break;
            else {
                goto Error;
            }
          } while (1);</pre></p>
                        <p class="p"></p>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g496d13eb1f4f4fcce37ce3f3434c5e4a" id="group__CUPTI__ACTIVITY__API_1g496d13eb1f4f4fcce37ce3f3434c5e4a" shape="rect">
                        <!-- --></a><span><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a> cuptiActivityGetNumDroppedRecords (  CUcontext<span>&nbsp;</span><span class="keyword keyword apiItemName">context</span>, uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">streamId</span>, size_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">dropped</span> ) </span></dt>
                  <dd class="description">
                     <div class="section">Get the number of activity records that were dropped of insufficient buffer space. </div>
                     <div class="section">
                        <h6 class="parameter_header">
                           Parameters
                           
                        </h6>
                        <dl class="table-display-params">
                           <dt><tt class="code"><span class="keyword keyword apiItemName">context</span></tt></dt>
                           <dd>The context, or NULL to get dropped count from global queue </dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">streamId</span></tt></dt>
                           <dd>The stream ID </dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">dropped</span></tt></dt>
                           <dd>The number of records that were dropped since the last call to this function.</dd>
                        </dl>
                     </div>
                     <div class="section">
                        <h6 class="return_header">Returns</h6>
                        <p class="return">
                           <ul>
                              <li>CUPTI_SUCCESS 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_NOT_INITIALIZED 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_INVALID_PARAMETER 
                                 <p class="p">if <tt class="ph tt code">dropped</tt> is NULL 
                                 </p>
                              </li>
                           </ul>
                        </p>
                     </div>
                     <div class="section">
                        <h6 class="description_header">Description</h6>
                        <p>Get the number of records that were dropped because of insufficient buffer space. The dropped count includes records that
                           could not be recorded because CUPTI did not have activity buffer space available for the record (because the CUpti_BuffersCallbackRequestFunc
                           callback did not return an empty buffer of sufficient size) and also CDP records that could not be record because the device-size
                           buffer was full (size is controlled by the CUPTI_ACTIVITY_ATTR_DEVICE_BUFFER_SIZE_CDP attribute). The dropped count maintained
                           for the queue is reset to zero when this function is called.
                        </p>
                        <p class="p"></p>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g2209436ffc541e8b3bedd40d59600529" id="group__CUPTI__ACTIVITY__API_1g2209436ffc541e8b3bedd40d59600529" shape="rect">
                        <!-- --></a><span><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a> cuptiActivityQueryBuffer (  CUcontext<span>&nbsp;</span><span class="keyword keyword apiItemName">context</span>, uint32_t<span>&nbsp;</span><span class="keyword keyword apiItemName">streamId</span>, size_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">validBufferSizeBytes</span> ) </span></dt>
                  <dd class="description">
                     <div class="section">Query the status of the buffer at the head of a queue. </div>
                     <div class="section">
                        <h6 class="parameter_header">
                           Parameters
                           
                        </h6>
                        <dl class="table-display-params">
                           <dt><tt class="code"><span class="keyword keyword apiItemName">context</span></tt></dt>
                           <dd>The context, or NULL to query the global queue </dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">streamId</span></tt></dt>
                           <dd>The stream ID </dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">validBufferSizeBytes</span></tt></dt>
                           <dd>Returns the number of bytes in the buffer that contain activity records</dd>
                        </dl>
                     </div>
                     <div class="section">
                        <h6 class="return_header">Returns</h6>
                        <p class="return">
                           <ul>
                              <li>CUPTI_SUCCESS 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_NOT_INITIALIZED 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_INVALID_PARAMETER 
                                 <p class="p">if <tt class="ph tt code">buffer</tt> or <tt class="ph tt code">validBufferSizeBytes</tt> are NULL 
                                 </p>
                              </li>
                              <li>CUPTI_ERROR_MAX_LIMIT_REACHED 
                                 <p class="p">if buffer is full </p>
                              </li>
                              <li>CUPTI_ERROR_QUEUE_EMPTY 
                                 <p class="p">the queue is empty, <tt class="ph tt code">validBufferSizeBytes</tt> returns 0 
                                 </p>
                              </li>
                           </ul>
                        </p>
                     </div>
                     <div class="section">
                        <h6 class="description_header">Description</h6>
                        <p>Query the status of buffer at the head in the queue. See <a class="xref" href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1g5ee90e924f943bc64fd1599a1bd799a6" title="Queue a buffer for activity record collection." shape="rect">cuptiActivityEnqueueBuffer()</a> for description of queues. Calling this function does not transfer ownership of the buffer.
                        </p>
                        <p class="p"></p>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g237e2401b0ce69dcb265b1f9079f0b65" id="group__CUPTI__ACTIVITY__API_1g237e2401b0ce69dcb265b1f9079f0b65" shape="rect">
                        <!-- --></a><span><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a> cuptiActivityRegisterCallbacks (  <a href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1g3337d3cbfe624b05d4af435fd17e5b28" title="Function type for callback used by CUPTI to request an empty buffer for storing activity records. " shape="rect">CUpti_BuffersCallbackRequestFunc</a><span>&nbsp;</span><span class="keyword keyword apiItemName">funcBufferRequested</span>, <a href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1g081fec67efc2c2504362e8e34fce7e6e" title="Function type for callback used by CUPTI to return a buffer of activity records. " shape="rect">CUpti_BuffersCallbackCompleteFunc</a><span>&nbsp;</span><span class="keyword keyword apiItemName">funcBufferCompleted</span> ) </span></dt>
                  <dd class="description">
                     <div class="section">Registers callback functions with CUPTI for activity buffer handling. </div>
                     <div class="section">
                        <h6 class="parameter_header">
                           Parameters
                           
                        </h6>
                        <dl class="table-display-params">
                           <dt><tt class="code"><span class="keyword keyword apiItemName">funcBufferRequested</span></tt></dt>
                           <dd>callback which is invoked when an empty buffer is requested by CUPTI </dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">funcBufferCompleted</span></tt></dt>
                           <dd>callback which is invoked when a buffer containing activity records is available from CUPTI</dd>
                        </dl>
                     </div>
                     <div class="section">
                        <h6 class="return_header">Returns</h6>
                        <p class="return">
                           <ul>
                              <li>CUPTI_SUCCESS 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_INVALID_PARAMETER 
                                 <p class="p">if either <tt class="ph tt code">funcBufferRequested</tt> or <tt class="ph tt code">funcBufferCompleted</tt> is NULL 
                                 </p>
                              </li>
                           </ul>
                        </p>
                     </div>
                     <div class="section">
                        <h6 class="description_header">Description</h6>
                        <p>This function registers two callback functions to be used in asynchronous buffer handling. If registered, activity record
                           buffers are handled using asynchronous requested/completed callbacks from CUPTI.
                        </p>
                        <p class="p">Registering these callbacks prevents the client from using CUPTI's blocking enqueue/dequeue functions.</p>
                        <p class="p"></p>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1ga4ce1e3f22626c5c2a8b450a996fe580" id="group__CUPTI__ACTIVITY__API_1ga4ce1e3f22626c5c2a8b450a996fe580" shape="rect">
                        <!-- --></a><span><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a> cuptiActivitySetAttribute (  <a href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1g1c31fe3f8ea0e46c6c20dd454a6caab6" title="Activity attributes. " shape="rect">CUpti_ActivityAttribute</a><span>&nbsp;</span><span class="keyword keyword apiItemName">attr</span>, size_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">valueSize</span>, void*<span>&nbsp;</span><span class="keyword keyword apiItemName">value</span> ) </span></dt>
                  <dd class="description">
                     <div class="section">Write an activity API attribute. </div>
                     <div class="section">
                        <h6 class="parameter_header">
                           Parameters
                           
                        </h6>
                        <dl class="table-display-params">
                           <dt><tt class="code"><span class="keyword keyword apiItemName">attr</span></tt></dt>
                           <dd>The attribute to write </dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">valueSize</span></tt></dt>
                           <dd>The size, in bytes, of the value </dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">value</span></tt></dt>
                           <dd>The attribute value to write</dd>
                        </dl>
                     </div>
                     <div class="section">
                        <h6 class="return_header">Returns</h6>
                        <p class="return">
                           <ul>
                              <li>CUPTI_SUCCESS 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_NOT_INITIALIZED 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_INVALID_PARAMETER 
                                 <p class="p">if <tt class="ph tt code">valueSize</tt> or <tt class="ph tt code">value</tt> is NULL, or if <tt class="ph tt code">attr</tt> is not an activity attribute 
                                 </p>
                              </li>
                              <li>CUPTI_ERROR_PARAMETER_SIZE_NOT_SUFFICIENT 
                                 <p class="p">Indicates that the <tt class="ph tt code">value</tt> buffer is too small to hold the attribute value. 
                                 </p>
                              </li>
                           </ul>
                        </p>
                     </div>
                     <div class="section">
                        <h6 class="description_header">Description</h6>
                        <p>Write an activity API attribute.</p>
                        <p class="p"></p>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g0cc36b42dbf08fffc772e9c932749c77" id="group__CUPTI__ACTIVITY__API_1g0cc36b42dbf08fffc772e9c932749c77" shape="rect">
                        <!-- --></a><span><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a> cuptiGetDeviceId (  CUcontext<span>&nbsp;</span><span class="keyword keyword apiItemName">context</span>, uint32_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">deviceId</span> ) </span></dt>
                  <dd class="description">
                     <div class="section">Get the ID of a device. </div>
                     <div class="section">
                        <h6 class="parameter_header">
                           Parameters
                           
                        </h6>
                        <dl class="table-display-params">
                           <dt><tt class="code"><span class="keyword keyword apiItemName">context</span></tt></dt>
                           <dd>The context, or NULL to indicate the current context. </dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">deviceId</span></tt></dt>
                           <dd>Returns the ID of the device that is current for the calling thread.</dd>
                        </dl>
                     </div>
                     <div class="section">
                        <h6 class="return_header">Returns</h6>
                        <p class="return">
                           <ul>
                              <li>CUPTI_SUCCESS 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_NOT_INITIALIZED 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_INVALID_DEVICE 
                                 <p class="p">if unable to get device ID </p>
                              </li>
                              <li>CUPTI_ERROR_INVALID_PARAMETER 
                                 <p class="p">if <tt class="ph tt code">deviceId</tt> is NULL 
                                 </p>
                              </li>
                           </ul>
                        </p>
                     </div>
                     <div class="section">
                        <h6 class="description_header">Description</h6>
                        <p>If <tt class="ph tt code">context</tt> is NULL, returns the ID of the device that contains the currently active context. If <tt class="ph tt code">context</tt> is non-NULL, returns the ID of the device which contains that context. Operates in a similar manner to cudaGetDevice() or
                           cuCtxGetDevice() but may be called from within callback functions.
                        </p>
                        <p class="p"></p>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g04ece23d24e29e8d98daadba09f1839c" id="group__CUPTI__ACTIVITY__API_1g04ece23d24e29e8d98daadba09f1839c" shape="rect">
                        <!-- --></a><span><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a> cuptiGetStreamId (  CUcontext<span>&nbsp;</span><span class="keyword keyword apiItemName">context</span>, CUstream<span>&nbsp;</span><span class="keyword keyword apiItemName">stream</span>, uint32_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">streamId</span> ) </span></dt>
                  <dd class="description">
                     <div class="section">Get the ID of a stream. </div>
                     <div class="section">
                        <h6 class="parameter_header">
                           Parameters
                           
                        </h6>
                        <dl class="table-display-params">
                           <dt><tt class="code"><span class="keyword keyword apiItemName">context</span></tt></dt>
                           <dd>If non-NULL then the stream is checked to ensure that it belongs to this context. Typically this parameter should be null.
                              
                           </dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">stream</span></tt></dt>
                           <dd>The stream </dd>
                           <dt><tt class="code"><span class="keyword keyword apiItemName">streamId</span></tt></dt>
                           <dd>Returns a context-unique ID for the stream</dd>
                        </dl>
                     </div>
                     <div class="section">
                        <h6 class="return_header">Returns</h6>
                        <p class="return">
                           <ul>
                              <li>CUPTI_SUCCESS 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_NOT_INITIALIZED 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_INVALID_STREAM 
                                 <p class="p">if unable to get stream ID, or if <tt class="ph tt code">context</tt> is non-NULL and <tt class="ph tt code">stream</tt> does not belong to the context 
                                 </p>
                              </li>
                              <li>CUPTI_ERROR_INVALID_PARAMETER 
                                 <p class="p">if <tt class="ph tt code">streamId</tt> is NULL
                                 </p>
                              </li>
                           </ul>
                        </p>
                     </div>
                     <div class="section">
                        <h6 class="description_header">Description</h6>
                        <p>Get the ID of a stream. The stream ID is unique within a context (i.e. all streams within a context will have unique stream
                           IDs).
                        </p>
                        <p class="p"></p>
                        <p class="p apiDesc_subtitle"><strong class="ph b">See also:</strong></p>
                        <p class="p see_subsection"><a class="xref" href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1g5ee90e924f943bc64fd1599a1bd799a6" title="Queue a buffer for activity record collection." shape="rect">cuptiActivityEnqueueBuffer</a></p>
                        <p class="p see_subsection"><a class="xref" href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API_1g5704ebc73f8ecc4b7428becec841be6b" title="Dequeue a buffer containing activity records." shape="rect">cuptiActivityDequeueBuffer</a></p>
                        <p class="p"></p>
                     </div>
                  </dd>
                  <dt class="description"><a name="group__CUPTI__ACTIVITY__API_1g7d8294c686b5293237a6daae8eae3dde" id="group__CUPTI__ACTIVITY__API_1g7d8294c686b5293237a6daae8eae3dde" shape="rect">
                        <!-- --></a><span><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API_1g8c54bf95108e67d858f37fcf76c88714" title="CUPTI result codes. " shape="rect">CUptiResult</a> cuptiGetTimestamp (  uint64_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">timestamp</span> ) </span></dt>
                  <dd class="description">
                     <div class="section">Get the CUPTI timestamp. </div>
                     <div class="section">
                        <h6 class="parameter_header">
                           Parameters
                           
                        </h6>
                        <dl class="table-display-params">
                           <dt><tt class="code"><span class="keyword keyword apiItemName">timestamp</span></tt></dt>
                           <dd>Returns the CUPTI timestamp</dd>
                        </dl>
                     </div>
                     <div class="section">
                        <h6 class="return_header">Returns</h6>
                        <p class="return">
                           <ul>
                              <li>CUPTI_SUCCESS 
                                 <p class="p"></p>
                              </li>
                              <li>CUPTI_ERROR_INVALID_PARAMETER 
                                 <p class="p">if <tt class="ph tt code">timestamp</tt> is NULL 
                                 </p>
                              </li>
                           </ul>
                        </p>
                     </div>
                     <div class="section">
                        <h6 class="description_header">Description</h6>
                        <p>Returns a timestamp normalized to correspond with the start and end timestamps reported in the CUPTI activity records. The
                           timestamp is reported in nanoseconds.
                        </p>
                        <p class="p"></p>
                     </div>
                  </dd>
               </dl>
            </div>
         </div>
         
         <hr id="contents-end"></hr>
         <div id="breadcrumbs"><a href="group__CUPTI__RESULT__API.html" shape="rect">&lt; Previous</a> | <a href="group__CUPTI__CALLBACK__API.html" shape="rect">Next &gt;</a></div>
         <div id="release-info">CUPTI
            (<a href="../../pdf/CUPTI_Library.pdf">PDF</a>)
            -
            CUDA Toolkit v5.5
            (<a href="https://developer.nvidia.com/cuda-toolkit-archive">older</a>)
            -
            Last updated 
            July 19, 2013
            -
            <a href="mailto:cudatools@nvidia.com?subject=CUDA Tools Documentation Feedback: cupti">Send Feedback</a></div>
         
      </article>
      
      <header id="header"><span id="company">NVIDIA</span><span id="site-title">CUDA Toolkit Documentation</span><form id="search" method="get" action="search">
            <input type="text" name="search-text"></input><fieldset id="search-location">
               <legend>Search In:</legend>
               <label><input type="radio" name="search-type" value="site"></input>Entire Site</label>
               <label><input type="radio" name="search-type" value="document"></input>Just This Document</label></fieldset>
            <button type="reset">clear search</button>
            <button id="submit" type="submit">search</button></form>
      </header>
      <nav id="site-nav">
         <div class="category closed"><span class="twiddle">▷</span><a href="../index.html" title="The root of the site.">CUDA Toolkit</a></div>
         <ul class="closed">
            <li><a href="../cuda-toolkit-release-notes/index.html" title="The Release Notes for the CUDA Toolkit from v4.0 to today.">Release Notes</a></li>
            <li><a href="../eula/index.html" title="The End User License Agreements for the NVIDIA CUDA Toolkit, the NVIDIA CUDA Samples, the NVIDIA Display Driver, and NVIDIA NSight (Visual Studio Edition).">EULA</a></li>
            <li><a href="../cuda-getting-started-guide-for-linux/index.html" title="This guide discusses how to install and check for correct operation of the CUDA Development Tools on GNU/Linux systems.">Getting Started Linux</a></li>
            <li><a href="../cuda-getting-started-guide-for-mac-os-x/index.html" title="This guide discusses how to install and check for correct operation of the CUDA Development Tools on Mac OS X systems.">Getting Started Mac OS X</a></li>
            <li><a href="../cuda-getting-started-guide-for-microsoft-windows/index.html" title="This guide discusses how to install and check for correct operation of the CUDA Development Tools on Microsoft Windows systems.">Getting Started Windows</a></li>
            <li><a href="../cuda-c-programming-guide/index.html" title="This guide provides a detailed discussion of the CUDA programming model and programming interface. It then describes the hardware implementation, and provides guidance on how to achieve maximum performance. The Appendixes include a list of all CUDA-enabled devices, detailed description of all extensions to the C language, listings of supported mathematical functions, C++ features supported in host and device code, details on texture fetching, technical specifications of various devices, and concludes by introducing the low-level driver API.">Programming Guide</a></li>
            <li><a href="../cuda-c-best-practices-guide/index.html" title="This guide presents established parallelization and optimization techniques and explains coding metaphors and idioms that can greatly simplify programming for CUDA-capable GPU architectures. The intent is to provide guidelines for obtaining the best performance from NVIDIA GPUs using the CUDA Toolkit.">Best Practices Guide</a></li>
            <li><a href="../kepler-compatibility-guide/index.html" title="This application note is intended to help developers ensure that their NVIDIA CUDA applications will run effectively on GPUs based on the NVIDIA Kepler Architecture. This document provides guidance to ensure that your software applications are compatible with Kepler.">Kepler Compatibility Guide</a></li>
            <li><a href="../kepler-tuning-guide/index.html" title="Kepler is NVIDIA's next-generation architecture for CUDA compute applications. Applications that follow the best practices for the Fermi architecture should typically see speedups on the Kepler architecture without any code changes. This guide summarizes the ways that an application can be fine-tuned to gain additional speedups by leveraging Kepler architectural features.">Kepler Tuning Guide</a></li>
            <li><a href="../parallel-thread-execution/index.html" title="This guide provides detailed instructions on the use of PTX, a low-level parallel thread execution virtual machine and instruction set architecture (ISA). PTX exposes the GPU as a data-parallel computing device.">PTX ISA</a></li>
            <li><a href="../optimus-developer-guide/index.html" title="This document explains how CUDA APIs can be used to query for GPU capabilities in NVIDIA Optimus systems.">Developer Guide for Optimus</a></li>
            <li><a href="../video-decoder/index.html" title="This document provides the video decoder API specification and the format conversion and display using DirectX or OpenGL following decode.">Video Decoder</a></li>
            <li><a href="../video-encoder/index.html" title="This document provides the CUDA video encoder specifications, including the C-library API functions and encoder query parameters.">Video Encoder</a></li>
            <li><a href="../inline-ptx-assembly/index.html" title="This document shows how to inline PTX (parallel thread execution) assembly language statements into CUDA code. It describes available assembler statement parameters and constraints, and the document also provides a list of some pitfalls that you may encounter.">Inline PTX Assembly</a></li>
            <li><a href="../cuda-runtime-api/index.html" title="The CUDA runtime API.">CUDA Runtime API</a></li>
            <li><a href="../cuda-driver-api/index.html" title="The CUDA driver API.">CUDA Driver API</a></li>
            <li><a href="../cuda-math-api/index.html" title="The CUDA math API.">CUDA Math API</a></li>
            <li><a href="../cublas/index.html" title="The CUBLAS library is an implementation of BLAS (Basic Linear Algebra Subprograms) on top of the NVIDIA CUDA runtime. It allows the user to access the computational resources of NVIDIA Graphical Processing Unit (GPU), but does not auto-parallelize across multiple GPUs.">CUBLAS</a></li>
            <li><a href="../cufft/index.html" title="The CUFFT library user guide.">CUFFT</a></li>
            <li><a href="../curand/index.html" title="The CURAND library user guide.">CURAND</a></li>
            <li><a href="../cusparse/index.html" title="The CUSPARSE library user guide.">CUSPARSE</a></li>
            <li><a href="../npp/index.html" title="NVIDIA NPP is a library of functions for performing CUDA accelerated processing. The initial set of functionality in the library focuses on imaging and video processing and is widely applicable for developers in these areas. NPP will evolve over time to encompass more of the compute heavy tasks in a variety of problem domains. The NPP library is written to maximize flexibility, while maintaining high performance.">NPP</a></li>
            <li><a href="../thrust/index.html" title="The Thrust getting started guide.">Thrust</a></li>
            <li><a href="../cuda-samples/index.html" title="This document contains a complete listing of the code samples that are included with the NVIDIA CUDA Toolkit. It describes each code sample, lists the minimum GPU specification, and provides links to the source code and white papers if available.">CUDA Samples</a></li>
            <li><a href="../cuda-compiler-driver-nvcc/index.html" title="This document is a reference guide on the use of the CUDA compiler driver nvcc. Instead of being a specific CUDA compilation driver, nvcc mimics the behavior of the GNU compiler gcc, accepting a range of conventional compiler options, such as for defining macros and include/library paths, and for steering the compilation process.">NVCC</a></li>
            <li><a href="../cuda-gdb/index.html" title="The NVIDIA tool for debugging CUDA applications running on Linux and Mac, providing developers with a mechanism for debugging CUDA applications running on actual hardware. CUDA-GDB is an extension to the x86-64 port of GDB, the GNU Project debugger.">CUDA-GDB</a></li>
            <li><a href="../cuda-memcheck/index.html" title="CUDA-MEMCHECK is a suite of run time tools capable of precisely detecting out of bounds and misaligned memory access errors, checking device allocation leaks, reporting hardware errors and identifying shared memory data access hazards.">CUDA-MEMCHECK</a></li>
            <li><a href="../nsight-eclipse-edition-getting-started-guide/index.html" title="Nsight Eclipse Edition getting started guide">Nsight Eclipse Edition</a></li>
            <li><a href="../profiler-users-guide/index.html" title="This is the guide to the Profiler.">Profiler</a></li>
            <li><a href="../cuda-binary-utilities/index.html" title="The application notes for cuobjdump and nvdisasm.">CUDA Binary Utilities</a></li>
            <li><a href="../floating-point/index.html" title="A number of issues related to floating point accuracy and compliance are a frequent source of confusion on both CPUs and GPUs. The purpose of this white paper is to discuss the most common issues related to NVIDIA GPUs and to supplement the documentation in the CUDA C Programming Guide.">Floating Point and IEEE 754</a></li>
            <li><a href="../incomplete-lu-cholesky/index.html" title="In this white paper we show how to use the CUSPARSE and CUBLAS libraries to achieve a 2x speedup over CPU in the incomplete-LU and Cholesky preconditioned iterative methods. We focus on the Bi-Conjugate Gradient Stabilized and Conjugate Gradient iterative methods, that can be used to solve large sparse nonsymmetric and symmetric positive definite linear systems, respectively. Also, we comment on the parallel sparse triangular solve, which is an essential building block in these algorithms.">Incomplete-LU and Cholesky Preconditioned Iterative Methods</a></li>
            <li><a href="../libnvvm-api/index.html" title="The libNVVM API.">libNVVM API</a></li>
            <li><a href="../libdevice-users-guide/index.html" title="The libdevice library is an LLVM bitcode library that implements common functions for GPU kernels.">libdevice User's Guide</a></li>
            <li><a href="../nvvm-ir-spec/index.html" title="NVVM IR is a compiler IR (internal representation) based on the LLVM IR. The NVVM IR is designed to represent GPU compute kernels (for example, CUDA kernels). High-level language front-ends, like the CUDA C compiler front-end, can generate NVVM IR.">NVVM IR</a></li>
            <li><a href="../cupti/index.html" title="The CUPTI API.">CUPTI</a></li>
            <li><a href="../debugger-api/index.html" title="The CUDA debugger API.">Debugger API</a></li>
            <li><a href="../gpudirect-rdma/index.html" title="A tool for Kepler-class GPUs and CUDA 5.0 enabling a direct path for communication between the GPU and a peer device on the PCI Express bus when the devices share the same upstream root complex using standard features of PCI Express. This document introduces the technology and describes the steps necessary to enable a RDMA for GPUDirect connection to NVIDIA GPUs within the Linux device driver model.">RDMA for GPUDirect</a></li>
         </ul>
         <div class="category"><span class="twiddle">▼</span><a href="index.html" title="CUPTI">CUPTI</a></div>
         <ul>
            <li><a href="r_main.html#r_main">1.&nbsp;Introduction</a><ul>
                  <li><a href="r_main.html#r_compatibility_requirements">1.1.&nbsp;CUPTI Compatibility and Requirements</a></li>
                  <li><a href="r_main.html#r_initialization">1.2.&nbsp;CUPTI Initialization</a></li>
                  <li><a href="r_main.html#r_activity">1.3.&nbsp;CUPTI Activity API</a></li>
                  <li><a href="r_main.html#r_callback_api">1.4.&nbsp;CUPTI Callback API</a><ul>
                        <li><a href="r_main.html#r_driver_runtime_api_callback">1.4.1.&nbsp;Driver and Runtime API Callbacks</a></li>
                        <li><a href="r_main.html#r_resource_callbacks">1.4.2.&nbsp;Resource Callbacks</a></li>
                        <li><a href="r_main.html#r_synchronization_callbacks">1.4.3.&nbsp;Synchronization Callbacks</a></li>
                        <li><a href="r_main.html#r_nvtx_callbacks">1.4.4.&nbsp;NVIDIA Tools Extension Callbacks</a></li>
                     </ul>
                  </li>
                  <li><a href="r_main.html#r_event_api">1.5.&nbsp;CUPTI Event API</a><ul>
                        <li><a href="r_main.html#r_collecting_kernel_execution_events">1.5.1.&nbsp;Collecting Kernel Execution Events</a></li>
                        <li><a href="r_main.html#r_sampling_events">1.5.2.&nbsp;Sampling Events</a></li>
                     </ul>
                  </li>
                  <li><a href="r_main.html#r_metric_api">1.6.&nbsp;CUPTI Metric API</a><ul>
                        <li><a href="r_main.html#r_metric_reference_1x">1.6.1.&nbsp;Metric Reference - Compute Capability 1.x</a></li>
                        <li><a href="r_main.html#r_metric_reference_2x">1.6.2.&nbsp;Metric Reference - Compute Capability 2.x</a></li>
                        <li><a href="r_main.html#r_metric_reference_3x">1.6.3.&nbsp;Metric Reference - Compute Capability 3.x</a></li>
                     </ul>
                  </li>
                  <li><a href="r_main.html#r_samples">1.7.&nbsp;Samples</a></li>
               </ul>
            </li>
            <li><a href="modules.html#modules">2.&nbsp;Modules</a><ul>
                  <li><a href="group__CUPTI__VERSION__API.html#group__CUPTI__VERSION__API">2.1.&nbsp;CUPTI Version</a></li>
                  <li><a href="group__CUPTI__RESULT__API.html#group__CUPTI__RESULT__API">2.2.&nbsp;CUPTI Result Codes</a></li>
                  <li><a href="group__CUPTI__ACTIVITY__API.html#group__CUPTI__ACTIVITY__API">2.3.&nbsp;CUPTI Activity API</a></li>
                  <li><a href="group__CUPTI__CALLBACK__API.html#group__CUPTI__CALLBACK__API">2.4.&nbsp;CUPTI Callback API</a></li>
                  <li><a href="group__CUPTI__EVENT__API.html#group__CUPTI__EVENT__API">2.5.&nbsp;CUPTI Event API</a></li>
                  <li><a href="group__CUPTI__METRIC__API.html#group__CUPTI__METRIC__API">2.6.&nbsp;CUPTI Metric API</a></li>
               </ul>
            </li>
            <li><a href="annotated.html#annotated">3.&nbsp;Data Structures</a><ul>
                  <li><a href="structCUpti__Activity.html#structCUpti__Activity">3.1.&nbsp;CUpti_Activity</a></li>
                  <li><a href="structCUpti__ActivityAPI.html#structCUpti__ActivityAPI">3.2.&nbsp;CUpti_ActivityAPI</a></li>
                  <li><a href="structCUpti__ActivityBranch.html#structCUpti__ActivityBranch">3.3.&nbsp;CUpti_ActivityBranch</a></li>
                  <li><a href="structCUpti__ActivityCdpKernel.html#structCUpti__ActivityCdpKernel">3.4.&nbsp;CUpti_ActivityCdpKernel</a></li>
                  <li><a href="structCUpti__ActivityContext.html#structCUpti__ActivityContext">3.5.&nbsp;CUpti_ActivityContext</a></li>
                  <li><a href="structCUpti__ActivityDevice.html#structCUpti__ActivityDevice">3.6.&nbsp;CUpti_ActivityDevice</a></li>
                  <li><a href="structCUpti__ActivityEnvironment.html#structCUpti__ActivityEnvironment">3.7.&nbsp;CUpti_ActivityEnvironment</a></li>
                  <li><a href="structCUpti__ActivityEvent.html#structCUpti__ActivityEvent">3.8.&nbsp;CUpti_ActivityEvent</a></li>
                  <li><a href="structCUpti__ActivityEventInstance.html#structCUpti__ActivityEventInstance">3.9.&nbsp;CUpti_ActivityEventInstance</a></li>
                  <li><a href="structCUpti__ActivityGlobalAccess.html#structCUpti__ActivityGlobalAccess">3.10.&nbsp;CUpti_ActivityGlobalAccess</a></li>
                  <li><a href="structCUpti__ActivityKernel.html#structCUpti__ActivityKernel">3.11.&nbsp;CUpti_ActivityKernel</a></li>
                  <li><a href="structCUpti__ActivityKernel2.html#structCUpti__ActivityKernel2">3.12.&nbsp;CUpti_ActivityKernel2</a></li>
                  <li><a href="structCUpti__ActivityMarker.html#structCUpti__ActivityMarker">3.13.&nbsp;CUpti_ActivityMarker</a></li>
                  <li><a href="structCUpti__ActivityMarkerData.html#structCUpti__ActivityMarkerData">3.14.&nbsp;CUpti_ActivityMarkerData</a></li>
                  <li><a href="structCUpti__ActivityMemcpy.html#structCUpti__ActivityMemcpy">3.15.&nbsp;CUpti_ActivityMemcpy</a></li>
                  <li><a href="structCUpti__ActivityMemcpy2.html#structCUpti__ActivityMemcpy2">3.16.&nbsp;CUpti_ActivityMemcpy2</a></li>
                  <li><a href="structCUpti__ActivityMemset.html#structCUpti__ActivityMemset">3.17.&nbsp;CUpti_ActivityMemset</a></li>
                  <li><a href="structCUpti__ActivityMetric.html#structCUpti__ActivityMetric">3.18.&nbsp;CUpti_ActivityMetric</a></li>
                  <li><a href="structCUpti__ActivityMetricInstance.html#structCUpti__ActivityMetricInstance">3.19.&nbsp;CUpti_ActivityMetricInstance</a></li>
                  <li><a href="structCUpti__ActivityName.html#structCUpti__ActivityName">3.20.&nbsp;CUpti_ActivityName</a></li>
                  <li><a href="unionCUpti__ActivityObjectKindId.html#unionCUpti__ActivityObjectKindId">3.21.&nbsp;CUpti_ActivityObjectKindId</a></li>
                  <li><a href="structCUpti__ActivityOverhead.html#structCUpti__ActivityOverhead">3.22.&nbsp;CUpti_ActivityOverhead</a></li>
                  <li><a href="structCUpti__ActivityPreemption.html#structCUpti__ActivityPreemption">3.23.&nbsp;CUpti_ActivityPreemption</a></li>
                  <li><a href="structCUpti__ActivitySourceLocator.html#structCUpti__ActivitySourceLocator">3.24.&nbsp;CUpti_ActivitySourceLocator</a></li>
                  <li><a href="structCUpti__CallbackData.html#structCUpti__CallbackData">3.25.&nbsp;CUpti_CallbackData</a></li>
                  <li><a href="structCUpti__EventGroupSet.html#structCUpti__EventGroupSet">3.26.&nbsp;CUpti_EventGroupSet</a></li>
                  <li><a href="structCUpti__EventGroupSets.html#structCUpti__EventGroupSets">3.27.&nbsp;CUpti_EventGroupSets</a></li>
                  <li><a href="unionCUpti__MetricValue.html#unionCUpti__MetricValue">3.28.&nbsp;CUpti_MetricValue</a></li>
                  <li><a href="structCUpti__NvtxData.html#structCUpti__NvtxData">3.29.&nbsp;CUpti_NvtxData</a></li>
                  <li><a href="structCUpti__ResourceData.html#structCUpti__ResourceData">3.30.&nbsp;CUpti_ResourceData</a></li>
                  <li><a href="structCUpti__SynchronizeData.html#structCUpti__SynchronizeData">3.31.&nbsp;CUpti_SynchronizeData</a></li>
               </ul>
            </li>
            <li><a href="functions.html#functions">4.&nbsp;Data Fields</a></li>
            <li><a href="notices-header.html#notices-header">Notices</a><ul></ul>
            </li>
         </ul>
      </nav>
      <nav id="search-results">
         <h2>Search Results</h2>
         <ol></ol>
      </nav>
      <script language="JavaScript" type="text/javascript" charset="utf-8" src="../common/formatting/common.min.js"></script>
      <script language="JavaScript" type="text/javascript" charset="utf-8" src="../common/scripts/omniture/s_code_us_dev_aut1-nolinktrackin.js"></script>
      <script language="JavaScript" type="text/javascript" charset="utf-8" src="../common/scripts/omniture/omniture.js"></script>
      <noscript><a href="http://www.omniture.com" title="Web Analytics"><img src="http://omniture.nvidia.com/b/ss/nvidiacudadocs/1/H.17--NS/0" height="1" width="1" border="0" alt=""></img></a></noscript>
      <script language="JavaScript" type="text/javascript" charset="utf-8" src="../common/scripts/google-analytics/google-analytics-write.js"></script>
      <script language="JavaScript" type="text/javascript" charset="utf-8" src="../common/scripts/google-analytics/google-analytics-tracker.js"></script>
      </body>
</html>