blob: 25acf492826676a4b0a65294fc671667354a76c9 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>mxnet: /work/mxnet/3rdparty/dlpack/include/dlpack/dlpack.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">mxnet
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_8cab8f464681f7cc51cee77e79a434cd.html">3rdparty</a></li><li class="navelem"><a class="el" href="dir_b5280357cca7875cb502638eb1a4cba4.html">dlpack</a></li><li class="navelem"><a class="el" href="dir_b1d908114d8ebbc38638e264020b35ad.html">include</a></li><li class="navelem"><a class="el" href="dir_ce848aa1e39277cfe327eb3478a56068.html">dlpack</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> </div>
<div class="headertitle">
<div class="title">dlpack.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>The common header of DLPack.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;stdint.h&gt;</code><br />
<code>#include &lt;stddef.h&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for dlpack.h:</div>
<div class="dyncontent">
<div class="center"><img src="dlpack_8h__incl.png" border="0" usemap="#_2work_2mxnet_23rdparty_2dlpack_2include_2dlpack_2dlpack_8h" alt=""/></div>
</div>
</div><div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="dlpack_8h__dep__incl.png" border="0" usemap="#_2work_2mxnet_23rdparty_2dlpack_2include_2dlpack_2dlpack_8hdep" alt=""/></div>
</div>
</div>
<p><a href="dlpack_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structDLContext.html">DLContext</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A Device context for Tensor and operator. <a href="structDLContext.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structDLDataType.html">DLDataType</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The data type the tensor can hold. <a href="structDLDataType.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structDLTensor.html">DLTensor</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Plain C Tensor object, does not manage memory. <a href="structDLTensor.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structDLManagedTensor.html">DLManagedTensor</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">C Tensor object, manage memory of <a class="el" href="structDLTensor.html" title="Plain C Tensor object, does not manage memory.">DLTensor</a>. This data structure is intended to facilitate the borrowing of <a class="el" href="structDLTensor.html" title="Plain C Tensor object, does not manage memory.">DLTensor</a> by another framework. It is not meant to transfer the tensor. When the borrowing framework doesn't need the tensor, it should call the deleter to notify the host that the resource is no longer needed. <a href="structDLManagedTensor.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a673d5372271f4182a2fb5315c2e335b4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dlpack_8h.html#a673d5372271f4182a2fb5315c2e335b4">DLPACK_EXTERN_C</a></td></tr>
<tr class="separator:a673d5372271f4182a2fb5315c2e335b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a493a8fe63f179b98d4e7a1728659a808"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dlpack_8h.html#a493a8fe63f179b98d4e7a1728659a808">DLPACK_VERSION</a>&#160;&#160;&#160;020</td></tr>
<tr class="memdesc:a493a8fe63f179b98d4e7a1728659a808"><td class="mdescLeft">&#160;</td><td class="mdescRight">The current version of dlpack. <a href="dlpack_8h.html#a493a8fe63f179b98d4e7a1728659a808">More...</a><br /></td></tr>
<tr class="separator:a493a8fe63f179b98d4e7a1728659a808"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad57157a7cb94036d48d0444fd14ab6cf"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dlpack_8h.html#ad57157a7cb94036d48d0444fd14ab6cf">DLPACK_DLL</a></td></tr>
<tr class="memdesc:ad57157a7cb94036d48d0444fd14ab6cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">DLPACK_DLL prefix for windows. <a href="dlpack_8h.html#ad57157a7cb94036d48d0444fd14ab6cf">More...</a><br /></td></tr>
<tr class="separator:ad57157a7cb94036d48d0444fd14ab6cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:acea5e76ad30c9b2c2c8c607fff192af6"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structDLManagedTensor.html">DLManagedTensor</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dlpack_8h.html#acea5e76ad30c9b2c2c8c607fff192af6">DLManagedTensor</a></td></tr>
<tr class="memdesc:acea5e76ad30c9b2c2c8c607fff192af6"><td class="mdescLeft">&#160;</td><td class="mdescRight">C Tensor object, manage memory of <a class="el" href="structDLTensor.html" title="Plain C Tensor object, does not manage memory.">DLTensor</a>. This data structure is intended to facilitate the borrowing of <a class="el" href="structDLTensor.html" title="Plain C Tensor object, does not manage memory.">DLTensor</a> by another framework. It is not meant to transfer the tensor. When the borrowing framework doesn't need the tensor, it should call the deleter to notify the host that the resource is no longer needed. <a href="dlpack_8h.html#acea5e76ad30c9b2c2c8c607fff192af6">More...</a><br /></td></tr>
<tr class="separator:acea5e76ad30c9b2c2c8c607fff192af6"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:a49db572e18d84c47738fc746568fb573"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dlpack_8h.html#a49db572e18d84c47738fc746568fb573">DLDeviceType</a> { <br />
&#160;&#160;<a class="el" href="dlpack_8h.html#a49db572e18d84c47738fc746568fb573ab736fabc9e37c2acf3b09b88fdc65c9e">kDLCPU</a> = 1,
<a class="el" href="dlpack_8h.html#a49db572e18d84c47738fc746568fb573ae04bfdcc919948d170b2ba26da09e680">kDLGPU</a> = 2,
<a class="el" href="dlpack_8h.html#a49db572e18d84c47738fc746568fb573a61cf710df30b59b43a5e34e37ecd1973">kDLCPUPinned</a> = 3,
<a class="el" href="dlpack_8h.html#a49db572e18d84c47738fc746568fb573a71b2f851779936d824bf2c235ed94a8d">kDLOpenCL</a> = 4,
<br />
&#160;&#160;<a class="el" href="dlpack_8h.html#a49db572e18d84c47738fc746568fb573a31aefcffd60630580d74bf055c2c3ba0">kDLVulkan</a> = 7,
<a class="el" href="dlpack_8h.html#a49db572e18d84c47738fc746568fb573a36ced4bf0304d68b5c633ddba5633e66">kDLMetal</a> = 8,
<a class="el" href="dlpack_8h.html#a49db572e18d84c47738fc746568fb573af063bf37ea24c1839d3a78703c2468e7">kDLVPI</a> = 9,
<a class="el" href="dlpack_8h.html#a49db572e18d84c47738fc746568fb573adeeb5e6f50f4309676e49f7a12512171">kDLROCM</a> = 10,
<br />
&#160;&#160;<a class="el" href="dlpack_8h.html#a49db572e18d84c47738fc746568fb573aea5cdddfa3ac11130048ad8e2a012363">kDLExtDev</a> = 12,
<a class="el" href="lib__api_8h.html#a49db572e18d84c47738fc746568fb573ab736fabc9e37c2acf3b09b88fdc65c9e">kDLCPU</a> = 1,
<a class="el" href="lib__api_8h.html#a49db572e18d84c47738fc746568fb573ae04bfdcc919948d170b2ba26da09e680">kDLGPU</a> = 2,
<a class="el" href="lib__api_8h.html#a49db572e18d84c47738fc746568fb573a61cf710df30b59b43a5e34e37ecd1973">kDLCPUPinned</a> = 3,
<br />
&#160;&#160;<a class="el" href="lib__api_8h.html#a49db572e18d84c47738fc746568fb573a71b2f851779936d824bf2c235ed94a8d">kDLOpenCL</a> = 4,
<a class="el" href="lib__api_8h.html#a49db572e18d84c47738fc746568fb573a31aefcffd60630580d74bf055c2c3ba0">kDLVulkan</a> = 7,
<a class="el" href="lib__api_8h.html#a49db572e18d84c47738fc746568fb573a36ced4bf0304d68b5c633ddba5633e66">kDLMetal</a> = 8,
<a class="el" href="lib__api_8h.html#a49db572e18d84c47738fc746568fb573af063bf37ea24c1839d3a78703c2468e7">kDLVPI</a> = 9,
<br />
&#160;&#160;<a class="el" href="lib__api_8h.html#a49db572e18d84c47738fc746568fb573adeeb5e6f50f4309676e49f7a12512171">kDLROCM</a> = 10,
<a class="el" href="lib__api_8h.html#a49db572e18d84c47738fc746568fb573aea5cdddfa3ac11130048ad8e2a012363">kDLExtDev</a> = 12
<br />
}</td></tr>
<tr class="memdesc:a49db572e18d84c47738fc746568fb573"><td class="mdescLeft">&#160;</td><td class="mdescRight">The device type in <a class="el" href="structDLContext.html" title="A Device context for Tensor and operator.">DLContext</a>. <a href="dlpack_8h.html#a49db572e18d84c47738fc746568fb573">More...</a><br /></td></tr>
<tr class="separator:a49db572e18d84c47738fc746568fb573"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a5dbaa5fb67f4845a973c09a7f2ec50"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dlpack_8h.html#a2a5dbaa5fb67f4845a973c09a7f2ec50">DLDataTypeCode</a> { <br />
&#160;&#160;<a class="el" href="dlpack_8h.html#a2a5dbaa5fb67f4845a973c09a7f2ec50a291cf38955be5c45c3aa50cea13c5e6e">kDLInt</a> = 0U,
<a class="el" href="dlpack_8h.html#a2a5dbaa5fb67f4845a973c09a7f2ec50aa19211076c5ae99e281ea430a25b102a">kDLUInt</a> = 1U,
<a class="el" href="dlpack_8h.html#a2a5dbaa5fb67f4845a973c09a7f2ec50a8bd73646a2aa8465201b59ab7d1a83e0">kDLFloat</a> = 2U,
<a class="el" href="dlpack_8h.html#a2a5dbaa5fb67f4845a973c09a7f2ec50a6a739f1b3ce2f8978da99a5ac4a887a6">kDLBfloat</a> = 4U,
<br />
&#160;&#160;<a class="el" href="lib__api_8h.html#a2a5dbaa5fb67f4845a973c09a7f2ec50a291cf38955be5c45c3aa50cea13c5e6e">kDLInt</a> = 0U,
<a class="el" href="lib__api_8h.html#a2a5dbaa5fb67f4845a973c09a7f2ec50aa19211076c5ae99e281ea430a25b102a">kDLUInt</a> = 1U,
<a class="el" href="lib__api_8h.html#a2a5dbaa5fb67f4845a973c09a7f2ec50a8bd73646a2aa8465201b59ab7d1a83e0">kDLFloat</a> = 2U
<br />
}</td></tr>
<tr class="memdesc:a2a5dbaa5fb67f4845a973c09a7f2ec50"><td class="mdescLeft">&#160;</td><td class="mdescRight">The type code options <a class="el" href="structDLDataType.html" title="The data type the tensor can hold.">DLDataType</a>. <a href="dlpack_8h.html#a2a5dbaa5fb67f4845a973c09a7f2ec50">More...</a><br /></td></tr>
<tr class="separator:a2a5dbaa5fb67f4845a973c09a7f2ec50"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>The common header of DLPack. </p>
<p>Copyright (c) 2017 by Contributors </p>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a id="ad57157a7cb94036d48d0444fd14ab6cf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad57157a7cb94036d48d0444fd14ab6cf">&#9670;&nbsp;</a></span>DLPACK_DLL</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define DLPACK_DLL</td>
</tr>
</table>
</div><div class="memdoc">
<p>DLPACK_DLL prefix for windows. </p>
</div>
</div>
<a id="a673d5372271f4182a2fb5315c2e335b4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a673d5372271f4182a2fb5315c2e335b4">&#9670;&nbsp;</a></span>DLPACK_EXTERN_C</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define DLPACK_EXTERN_C</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a493a8fe63f179b98d4e7a1728659a808"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a493a8fe63f179b98d4e7a1728659a808">&#9670;&nbsp;</a></span>DLPACK_VERSION</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define DLPACK_VERSION&#160;&#160;&#160;020</td>
</tr>
</table>
</div><div class="memdoc">
<p>The current version of dlpack. </p>
</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="acea5e76ad30c9b2c2c8c607fff192af6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acea5e76ad30c9b2c2c8c607fff192af6">&#9670;&nbsp;</a></span>DLManagedTensor</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef struct <a class="el" href="structDLManagedTensor.html">DLManagedTensor</a> <a class="el" href="structDLManagedTensor.html">DLManagedTensor</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>C Tensor object, manage memory of <a class="el" href="structDLTensor.html" title="Plain C Tensor object, does not manage memory.">DLTensor</a>. This data structure is intended to facilitate the borrowing of <a class="el" href="structDLTensor.html" title="Plain C Tensor object, does not manage memory.">DLTensor</a> by another framework. It is not meant to transfer the tensor. When the borrowing framework doesn't need the tensor, it should call the deleter to notify the host that the resource is no longer needed. </p>
</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a id="a2a5dbaa5fb67f4845a973c09a7f2ec50"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2a5dbaa5fb67f4845a973c09a7f2ec50">&#9670;&nbsp;</a></span>DLDataTypeCode</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="dlpack_8h.html#a2a5dbaa5fb67f4845a973c09a7f2ec50">DLDataTypeCode</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>The type code options <a class="el" href="structDLDataType.html" title="The data type the tensor can hold.">DLDataType</a>. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a2a5dbaa5fb67f4845a973c09a7f2ec50a291cf38955be5c45c3aa50cea13c5e6e"></a>kDLInt&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a2a5dbaa5fb67f4845a973c09a7f2ec50aa19211076c5ae99e281ea430a25b102a"></a>kDLUInt&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a2a5dbaa5fb67f4845a973c09a7f2ec50a8bd73646a2aa8465201b59ab7d1a83e0"></a>kDLFloat&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a2a5dbaa5fb67f4845a973c09a7f2ec50a6a739f1b3ce2f8978da99a5ac4a887a6"></a>kDLBfloat&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a2a5dbaa5fb67f4845a973c09a7f2ec50a291cf38955be5c45c3aa50cea13c5e6e"></a>kDLInt&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a2a5dbaa5fb67f4845a973c09a7f2ec50aa19211076c5ae99e281ea430a25b102a"></a>kDLUInt&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a2a5dbaa5fb67f4845a973c09a7f2ec50a8bd73646a2aa8465201b59ab7d1a83e0"></a>kDLFloat&#160;</td><td class="fielddoc"></td></tr>
</table>
</div>
</div>
<a id="a49db572e18d84c47738fc746568fb573"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a49db572e18d84c47738fc746568fb573">&#9670;&nbsp;</a></span>DLDeviceType</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="dlpack_8h.html#a49db572e18d84c47738fc746568fb573">DLDeviceType</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>The device type in <a class="el" href="structDLContext.html" title="A Device context for Tensor and operator.">DLContext</a>. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a49db572e18d84c47738fc746568fb573ab736fabc9e37c2acf3b09b88fdc65c9e"></a>kDLCPU&#160;</td><td class="fielddoc"><p>CPU device. </p>
</td></tr>
<tr><td class="fieldname"><a id="a49db572e18d84c47738fc746568fb573ae04bfdcc919948d170b2ba26da09e680"></a>kDLGPU&#160;</td><td class="fielddoc"><p>CUDA GPU device. </p>
</td></tr>
<tr><td class="fieldname"><a id="a49db572e18d84c47738fc746568fb573a61cf710df30b59b43a5e34e37ecd1973"></a>kDLCPUPinned&#160;</td><td class="fielddoc"><p>Pinned CUDA GPU device by cudaMallocHost. </p>
<dl class="section note"><dt>Note</dt><dd>kDLCPUPinned = kDLCPU | kDLGPU </dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a49db572e18d84c47738fc746568fb573a71b2f851779936d824bf2c235ed94a8d"></a>kDLOpenCL&#160;</td><td class="fielddoc"><p>OpenCL devices. </p>
</td></tr>
<tr><td class="fieldname"><a id="a49db572e18d84c47738fc746568fb573a31aefcffd60630580d74bf055c2c3ba0"></a>kDLVulkan&#160;</td><td class="fielddoc"><p>Vulkan buffer for next generation graphics. </p>
</td></tr>
<tr><td class="fieldname"><a id="a49db572e18d84c47738fc746568fb573a36ced4bf0304d68b5c633ddba5633e66"></a>kDLMetal&#160;</td><td class="fielddoc"><p>Metal for Apple GPU. </p>
</td></tr>
<tr><td class="fieldname"><a id="a49db572e18d84c47738fc746568fb573af063bf37ea24c1839d3a78703c2468e7"></a>kDLVPI&#160;</td><td class="fielddoc"><p>Verilog simulator buffer. </p>
</td></tr>
<tr><td class="fieldname"><a id="a49db572e18d84c47738fc746568fb573adeeb5e6f50f4309676e49f7a12512171"></a>kDLROCM&#160;</td><td class="fielddoc"><p>ROCm GPUs for AMD GPUs. </p>
</td></tr>
<tr><td class="fieldname"><a id="a49db572e18d84c47738fc746568fb573aea5cdddfa3ac11130048ad8e2a012363"></a>kDLExtDev&#160;</td><td class="fielddoc"><p>Reserved extension device type, used for quickly test extension device The semantics can differ depending on the implementation. </p>
</td></tr>
<tr><td class="fieldname"><a id="a49db572e18d84c47738fc746568fb573ab736fabc9e37c2acf3b09b88fdc65c9e"></a>kDLCPU&#160;</td><td class="fielddoc"><p>CPU device. </p>
</td></tr>
<tr><td class="fieldname"><a id="a49db572e18d84c47738fc746568fb573ae04bfdcc919948d170b2ba26da09e680"></a>kDLGPU&#160;</td><td class="fielddoc"><p>CUDA GPU device. </p>
</td></tr>
<tr><td class="fieldname"><a id="a49db572e18d84c47738fc746568fb573a61cf710df30b59b43a5e34e37ecd1973"></a>kDLCPUPinned&#160;</td><td class="fielddoc"><p>Pinned CUDA GPU device by cudaMallocHost. </p>
<dl class="section note"><dt>Note</dt><dd>kDLCPUPinned = kDLCPU | kDLGPU </dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a49db572e18d84c47738fc746568fb573a71b2f851779936d824bf2c235ed94a8d"></a>kDLOpenCL&#160;</td><td class="fielddoc"><p>OpenCL devices. </p>
</td></tr>
<tr><td class="fieldname"><a id="a49db572e18d84c47738fc746568fb573a31aefcffd60630580d74bf055c2c3ba0"></a>kDLVulkan&#160;</td><td class="fielddoc"><p>Vulkan buffer for next generation graphics. </p>
</td></tr>
<tr><td class="fieldname"><a id="a49db572e18d84c47738fc746568fb573a36ced4bf0304d68b5c633ddba5633e66"></a>kDLMetal&#160;</td><td class="fielddoc"><p>Metal for Apple GPU. </p>
</td></tr>
<tr><td class="fieldname"><a id="a49db572e18d84c47738fc746568fb573af063bf37ea24c1839d3a78703c2468e7"></a>kDLVPI&#160;</td><td class="fielddoc"><p>Verilog simulator buffer. </p>
</td></tr>
<tr><td class="fieldname"><a id="a49db572e18d84c47738fc746568fb573adeeb5e6f50f4309676e49f7a12512171"></a>kDLROCM&#160;</td><td class="fielddoc"><p>ROCm GPUs for AMD GPUs. </p>
</td></tr>
<tr><td class="fieldname"><a id="a49db572e18d84c47738fc746568fb573aea5cdddfa3ac11130048ad8e2a012363"></a>kDLExtDev&#160;</td><td class="fielddoc"><p>Reserved extension device type, used for quickly test extension device The semantics can differ depending on the implementation. </p>
</td></tr>
</table>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Thu Jan 5 2023 03:47:40 for mxnet by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.17
</small></address>
</body>
</html>