1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3 <title>NVIDIA CUDA Library: cuMemcpy3D</title>
4 <link href="customdoxygen.css" rel="stylesheet" type="text/css">
5 <link href="tabs.css" rel="stylesheet" type="text/css">
7 <!-- Generated by Doxygen 1.5.8 -->
8 <div class="navigation" id="top">
11 <li><a href="index.html"><span>Main Page</span></a></li>
12 <li><a href="modules.html"><span>Modules</span></a></li>
13 <li><a href="annotated.html"><span>Data Structures</span></a></li>
17 <div class="contents">
18 <div class="navpath"><a class="el" href="group__CUMEM.html">Memory Management</a>
20 <table cellspacing="0" cellpadding="0" border="0">
25 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g79559e3acc9f081ec1adf748c1307e9a.html#g79559e3acc9f081ec1adf748c1307e9a">cuArray3DCreate</a></td></tr>
26 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_ga1a39d3084b37afccfd8839656ceefdd.html#ga1a39d3084b37afccfd8839656ceefdd">cuArray3DGetDescriptor</a></td></tr>
27 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_gb0fe1c5c0ce7a06f0b1ed89ff9c47751.html#gb0fe1c5c0ce7a06f0b1ed89ff9c47751">cuArrayCreate</a></td></tr>
28 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_ge4381869abc9e6ae495ba69d9ac268d1.html#ge4381869abc9e6ae495ba69d9ac268d1">cuArrayDestroy</a></td></tr>
29 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g663eab70b36e5fe113eee32da375fc43.html#g663eab70b36e5fe113eee32da375fc43">cuArrayGetDescriptor</a></td></tr>
30 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g627154e12233200e5eea97244ba0ef1d.html#g627154e12233200e5eea97244ba0ef1d">cuMemAlloc</a></td></tr>
31 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g1f9c4537a8952d4db5ae3d0dfc2fe3c4.html#g1f9c4537a8952d4db5ae3d0dfc2fe3c4">cuMemAllocHost</a></td></tr>
32 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g36c08e1bdf0d7b9aa633fe098213f26b.html#g36c08e1bdf0d7b9aa633fe098213f26b">cuMemAllocPitch</a></td></tr>
33 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g27f885b30c34cc20a663a671dbf6fc27.html#g27f885b30c34cc20a663a671dbf6fc27">cuMemcpy2D</a></td></tr>
34 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g4acf155faeb969d9d21f5433d3d0f274.html#g4acf155faeb969d9d21f5433d3d0f274">cuMemcpy2DAsync</a></td></tr>
35 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g2fa285d47fd7020e596bfeab3deb651b.html#g2fa285d47fd7020e596bfeab3deb651b">cuMemcpy2DUnaligned</a></td></tr>
36 <tr><td class="navtab"><a class="qindexHL" href="group__CUMEM_g4b5238975579f002c0199a3800ca44df.html#g4b5238975579f002c0199a3800ca44df">cuMemcpy3D</a></td></tr>
37 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g79f4f3fde6ae0f529568d881d9e11987.html#g79f4f3fde6ae0f529568d881d9e11987">cuMemcpy3DAsync</a></td></tr>
38 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g2264d9b23475ad36798c22451a67595d.html#g2264d9b23475ad36798c22451a67595d">cuMemcpyAtoA</a></td></tr>
39 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g86ce061a67268ab246242ba757bff9c4.html#g86ce061a67268ab246242ba757bff9c4">cuMemcpyAtoD</a></td></tr>
40 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_gc47a1664ed53898c788e13002d62795d.html#gc47a1664ed53898c788e13002d62795d">cuMemcpyAtoH</a></td></tr>
41 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_gc7e4391e1116a38512d63d6fc829404b.html#gc7e4391e1116a38512d63d6fc829404b">cuMemcpyAtoHAsync</a></td></tr>
42 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_gfa0c61e10725836073c0d035240a2fed.html#gfa0c61e10725836073c0d035240a2fed">cuMemcpyDtoA</a></td></tr>
43 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_gb65c4f978df3837c5827e8499929fa94.html#gb65c4f978df3837c5827e8499929fa94">cuMemcpyDtoD</a></td></tr>
44 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_gf102b610b6ce0c0728bd113b28fe634f.html#gf102b610b6ce0c0728bd113b28fe634f">cuMemcpyDtoH</a></td></tr>
45 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g9278a7f87949f3e8aa5cf37cd574123c.html#g9278a7f87949f3e8aa5cf37cd574123c">cuMemcpyDtoHAsync</a></td></tr>
46 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_gb72055d53fe3ff50119a011c89549e56.html#gb72055d53fe3ff50119a011c89549e56">cuMemcpyHtoA</a></td></tr>
47 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g7d422b75680e773346a063873c856795.html#g7d422b75680e773346a063873c856795">cuMemcpyHtoAAsync</a></td></tr>
48 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g15b5ebcd1c0be7b84b0165195ff6e2fa.html#g15b5ebcd1c0be7b84b0165195ff6e2fa">cuMemcpyHtoD</a></td></tr>
49 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g872633913dd75110da057aabc8d6be06.html#g872633913dd75110da057aabc8d6be06">cuMemcpyHtoDAsync</a></td></tr>
50 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g89b3f154e17cc89b6eea277dbdf5c93a.html#g89b3f154e17cc89b6eea277dbdf5c93a">cuMemFree</a></td></tr>
51 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g62e0fdbe181dab6b1c90fa1a51c7b92c.html#g62e0fdbe181dab6b1c90fa1a51c7b92c">cuMemFreeHost</a></td></tr>
52 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g6c7eaf9ae4ef75f581adb948afcc09cb.html#g6c7eaf9ae4ef75f581adb948afcc09cb">cuMemGetAddressRange</a></td></tr>
53 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g079fb025b8c1bf4ea19e78c4db53a1aa.html#g079fb025b8c1bf4ea19e78c4db53a1aa">cuMemGetInfo</a></td></tr>
54 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g2bc27441244627875574a34523616cfa.html#g2bc27441244627875574a34523616cfa">cuMemHostAlloc</a></td></tr>
55 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g2c34142d43ee9ef9ddaee382507d59c6.html#g2c34142d43ee9ef9ddaee382507d59c6">cuMemHostGetDevicePointer</a></td></tr>
56 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_gfd0cbf7d233352684f06619d724359c3.html#gfd0cbf7d233352684f06619d724359c3">cuMemsetD16</a></td></tr>
57 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g70168325d5c0f98be22da35be3c252a8.html#g70168325d5c0f98be22da35be3c252a8">cuMemsetD2D16</a></td></tr>
58 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_gd0db2f7215031d1be1a191bace3a220c.html#gd0db2f7215031d1be1a191bace3a220c">cuMemsetD2D32</a></td></tr>
59 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g371b654a098b8f61fbfb87954ce943e9.html#g371b654a098b8f61fbfb87954ce943e9">cuMemsetD2D8</a></td></tr>
60 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_gd535bab04b518693045f517797a3c713.html#gd535bab04b518693045f517797a3c713">cuMemsetD32</a></td></tr>
61 <tr><td class="navtab"><a class="qindex" href="group__CUMEM_g555a8bb50db3ad0558e3c42bcebbff1b.html#g555a8bb50db3ad0558e3c42bcebbff1b">cuMemsetD8</a></td></tr>
66 <a class="anchor" name="g4b5238975579f002c0199a3800ca44df"></a><!-- doxytag: member="apimemcpy.c::cuMemcpy3D" ref="g4b5238975579f002c0199a3800ca44df" args="(const CUDA_MEMCPY3D *pCopy)" -->
68 <div class="memproto">
69 <table class="memname">
71 <td class="memname"><a class="el" href="group__CUDA__TYPES_g09da14df1a751dcbfeccb9cf0073d64c.html#g09da14df1a751dcbfeccb9cf0073d64c">CUresult</a> cuMemcpy3D </td>
73 <td class="paramtype">const <a class="el" href="structCUDA__MEMCPY3D__st.html">CUDA_MEMCPY3D</a> * </td>
74 <td class="paramname"> <em>pCopy</em> </td>
75 <td> ) </td>
83 Perform a 3D memory copy according to the parameters specified in <code>pCopy</code>. The <a class="el" href="group__CUDA__TYPES_gde7782de4c8148acabdc70c6f078efbc.html#gde7782de4c8148acabdc70c6f078efbc">CUDA_MEMCPY3D</a> structure is defined as:<p>
84 <div class="fragment"><pre class="fragment"> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structCUDA__MEMCPY3D__st.html">CUDA_MEMCPY3D_st</a> {
86 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> srcXInBytes, <a class="code" href="structCUDA__MEMCPY3D__st_b84f6c07c36894491b628067ed1b94d1.html#b84f6c07c36894491b628067ed1b94d1" title="Source Y.">srcY</a>, <a class="code" href="structCUDA__MEMCPY3D__st_2fbcc7c3677a319a2f6f22c41ae87f74.html#2fbcc7c3677a319a2f6f22c41ae87f74" title="Source Z.">srcZ</a>;
87 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structCUDA__MEMCPY3D__st_7e2e0324bde570e0d7769b59dbc30228.html#7e2e0324bde570e0d7769b59dbc30228" title="Source LOD.">srcLOD</a>;
88 <a class="code" href="group__CUDA__TYPES_g9e45c622a47315753c4725c101148a81.html#g9e45c622a47315753c4725c101148a81">CUmemorytype</a> <a class="code" href="structCUDA__MEMCPY3D__st_693af7438a3b485221e1f20cee82cd84.html#693af7438a3b485221e1f20cee82cd84" title="Source memory type (host, device, array).">srcMemoryType</a>;
89 <span class="keyword">const</span> <span class="keywordtype">void</span> *<a class="code" href="structCUDA__MEMCPY3D__st_7f02d9c78f476996e75a9f53f6b21d13.html#7f02d9c78f476996e75a9f53f6b21d13" title="Source host pointer.">srcHost</a>;
90 <a class="code" href="group__CUDA__TYPES_g5e264ce2ad6a38761e7e04921ef771de.html#g5e264ce2ad6a38761e7e04921ef771de" title="CUDA device pointer.">CUdeviceptr</a> <a class="code" href="structCUDA__MEMCPY3D__st_53d3d8cb6341e8f58fe89aa7ab54c795.html#53d3d8cb6341e8f58fe89aa7ab54c795" title="Source device pointer.">srcDevice</a>;
91 <a class="code" href="group__CUDA__TYPES_gd550651524a56766b60f10f0e7628042.html#gd550651524a56766b60f10f0e7628042" title="CUDA array.">CUarray</a> <a class="code" href="structCUDA__MEMCPY3D__st_6d4c1dc48609ed769f4d5463f4cfd6da.html#6d4c1dc48609ed769f4d5463f4cfd6da" title="Source array reference.">srcArray</a>;
92 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structCUDA__MEMCPY3D__st_646452529fa92664d68f605844db89bc.html#646452529fa92664d68f605844db89bc" title="Source pitch (ignored when src is array).">srcPitch</a>; <span class="comment">// ignored when src is array</span>
93 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structCUDA__MEMCPY3D__st_1f25fa07d4f89cbc8ec0d64de4ac41b9.html#1f25fa07d4f89cbc8ec0d64de4ac41b9" title="Source height (ignored when src is array; may be 0 if Depth==1).">srcHeight</a>; <span class="comment">// ignored when src is array; may be 0 if Depth==1</span>
95 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> dstXInBytes, <a class="code" href="structCUDA__MEMCPY3D__st_30da971cd1e6f69bb72b59e9b2cea67f.html#30da971cd1e6f69bb72b59e9b2cea67f" title="Destination Y.">dstY</a>, <a class="code" href="structCUDA__MEMCPY3D__st_cd989beaff48aa188dcde71ec73eb7f4.html#cd989beaff48aa188dcde71ec73eb7f4" title="Destination Z.">dstZ</a>;
96 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structCUDA__MEMCPY3D__st_0c85120a8ebf432386e8916ee9316269.html#0c85120a8ebf432386e8916ee9316269" title="Destination LOD.">dstLOD</a>;
97 <a class="code" href="group__CUDA__TYPES_g9e45c622a47315753c4725c101148a81.html#g9e45c622a47315753c4725c101148a81">CUmemorytype</a> <a class="code" href="structCUDA__MEMCPY3D__st_67228a161680f3ab38046076e06209e3.html#67228a161680f3ab38046076e06209e3" title="Destination memory type (host, device, array).">dstMemoryType</a>;
98 <span class="keywordtype">void</span> *<a class="code" href="structCUDA__MEMCPY3D__st_dc0df50aeaaf2acf52b0f9228d89641c.html#dc0df50aeaaf2acf52b0f9228d89641c" title="Destination host pointer.">dstHost</a>;
99 <a class="code" href="group__CUDA__TYPES_g5e264ce2ad6a38761e7e04921ef771de.html#g5e264ce2ad6a38761e7e04921ef771de" title="CUDA device pointer.">CUdeviceptr</a> <a class="code" href="structCUDA__MEMCPY3D__st_050a11edaa919df89903d5b0c6cb17e6.html#050a11edaa919df89903d5b0c6cb17e6" title="Destination device pointer.">dstDevice</a>;
100 <a class="code" href="group__CUDA__TYPES_gd550651524a56766b60f10f0e7628042.html#gd550651524a56766b60f10f0e7628042" title="CUDA array.">CUarray</a> <a class="code" href="structCUDA__MEMCPY3D__st_e95f7d57bfc7251b01de2fe32d3ea116.html#e95f7d57bfc7251b01de2fe32d3ea116" title="Destination array reference.">dstArray</a>;
101 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structCUDA__MEMCPY3D__st_abd91c0372c044bf829d32c3d718236f.html#abd91c0372c044bf829d32c3d718236f" title="Destination pitch (ignored when dst is array).">dstPitch</a>; <span class="comment">// ignored when dst is array</span>
102 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structCUDA__MEMCPY3D__st_3f5e0979f56d4e521d1fc6ddd70a7d26.html#3f5e0979f56d4e521d1fc6ddd70a7d26" title="Destination height (ignored when dst is array; may be 0 if Depth==1).">dstHeight</a>; <span class="comment">// ignored when dst is array; may be 0 if Depth==1</span>
104 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structCUDA__MEMCPY3D__st_fbf1a5e0e02edd7188238c3eaa8f8963.html#fbf1a5e0e02edd7188238c3eaa8f8963" title="Width of 3D memory copy in bytes.">WidthInBytes</a>;
105 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structCUDA__MEMCPY3D__st_fbcbbdb4bf88835de1853bbd1da5c09f.html#fbcbbdb4bf88835de1853bbd1da5c09f" title="Height of 3D memory copy.">Height</a>;
106 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structCUDA__MEMCPY3D__st_b32588809c4e053fdffedfc09b01b3fb.html#b32588809c4e053fdffedfc09b01b3fb" title="Depth of 3D memory copy.">Depth</a>;
107 } <a class="code" href="structCUDA__MEMCPY3D__st.html">CUDA_MEMCPY3D</a>;
108 </pre></div> where:<ul>
109 <li>srcMemoryType and dstMemoryType specify the type of memory of the source and destination, respectively; <a class="el" href="group__CUDA__TYPES_g401176319b8c53648d525e8859437790.html#g401176319b8c53648d525e8859437790">CUmemorytype_enum</a> is defined as:</li></ul>
111 <div class="fragment"><pre class="fragment"> <span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="group__CUDA__TYPES_g401176319b8c53648d525e8859437790.html#g401176319b8c53648d525e8859437790">CUmemorytype_enum</a> {
112 <a class="code" href="group__CUDA__TYPES_g401176319b8c53648d525e8859437790.html#gg401176319b8c53648d525e88594377907f98a88f26eec8490bfc180c5a73e101" title="Host memory.">CU_MEMORYTYPE_HOST</a> = 0x01,
113 <a class="code" href="group__CUDA__TYPES_g401176319b8c53648d525e8859437790.html#gg401176319b8c53648d525e8859437790ec7e15ba4b111a26adb3487023707299" title="Device memory.">CU_MEMORYTYPE_DEVICE</a> = 0x02,
114 <a class="code" href="group__CUDA__TYPES_g401176319b8c53648d525e8859437790.html#gg401176319b8c53648d525e8859437790d7f97cd13a156651767607456fe25b66" title="Array memory.">CU_MEMORYTYPE_ARRAY</a> = 0x03
115 } <a class="code" href="group__CUDA__TYPES_g9e45c622a47315753c4725c101148a81.html#g9e45c622a47315753c4725c101148a81">CUmemorytype</a>;
117 <dl class="user" compact><dt><b></b></dt><dd>If srcMemoryType is <a class="el" href="group__CUDA__TYPES_g401176319b8c53648d525e8859437790.html#gg401176319b8c53648d525e88594377907f98a88f26eec8490bfc180c5a73e101" title="Host memory.">CU_MEMORYTYPE_HOST</a>, srcHost, srcPitch and srcHeight specify the (host) base address of the source data, the bytes per row, and the height of each 2D slice of the 3D array. srcArray is ignored.</dd></dl>
118 <dl class="user" compact><dt><b></b></dt><dd>If srcMemoryType is <a class="el" href="group__CUDA__TYPES_g401176319b8c53648d525e8859437790.html#gg401176319b8c53648d525e8859437790ec7e15ba4b111a26adb3487023707299" title="Device memory.">CU_MEMORYTYPE_DEVICE</a>, srcDevice, srcPitch and srcHeight specify the (device) base address of the source data, the bytes per row, and the height of each 2D slice of the 3D array. srcArray is ignored.</dd></dl>
119 <dl class="user" compact><dt><b></b></dt><dd>If srcMemoryType is <a class="el" href="group__CUDA__TYPES_g401176319b8c53648d525e8859437790.html#gg401176319b8c53648d525e8859437790d7f97cd13a156651767607456fe25b66" title="Array memory.">CU_MEMORYTYPE_ARRAY</a>, srcArray specifies the handle of the source data. srcHost, srcDevice, srcPitch and srcHeight are ignored.</dd></dl>
120 <dl class="user" compact><dt><b></b></dt><dd>If dstMemoryType is <a class="el" href="group__CUDA__TYPES_g401176319b8c53648d525e8859437790.html#gg401176319b8c53648d525e88594377907f98a88f26eec8490bfc180c5a73e101" title="Host memory.">CU_MEMORYTYPE_HOST</a>, dstHost and dstPitch specify the (host) base address of the destination data, the bytes per row, and the height of each 2D slice of the 3D array. dstArray is ignored.</dd></dl>
121 <dl class="user" compact><dt><b></b></dt><dd>If dstMemoryType is <a class="el" href="group__CUDA__TYPES_g401176319b8c53648d525e8859437790.html#gg401176319b8c53648d525e8859437790ec7e15ba4b111a26adb3487023707299" title="Device memory.">CU_MEMORYTYPE_DEVICE</a>, dstDevice and dstPitch specify the (device) base address of the destination data, the bytes per row, and the height of each 2D slice of the 3D array. dstArray is ignored.</dd></dl>
122 <dl class="user" compact><dt><b></b></dt><dd>If dstMemoryType is <a class="el" href="group__CUDA__TYPES_g401176319b8c53648d525e8859437790.html#gg401176319b8c53648d525e8859437790d7f97cd13a156651767607456fe25b66" title="Array memory.">CU_MEMORYTYPE_ARRAY</a>, dstArray specifies the handle of the destination data. dstHost, dstDevice, dstPitch and dstHeight are ignored.</dd></dl>
124 <li>srcXInBytes, srcY and srcZ specify the base address of the source data for the copy.</li></ul>
126 <dl class="user" compact><dt><b></b></dt><dd>For host pointers, the starting address is <div class="fragment"><pre class="fragment"> <span class="keywordtype">void</span>* Start = (<span class="keywordtype">void</span>*)((<span class="keywordtype">char</span>*)srcHost+(srcZ*srcHeight+srcY)*srcPitch + srcXInBytes);
127 </pre></div></dd></dl>
128 <dl class="user" compact><dt><b></b></dt><dd>For device pointers, the starting address is <div class="fragment"><pre class="fragment"> <a class="code" href="group__CUDA__TYPES_g5e264ce2ad6a38761e7e04921ef771de.html#g5e264ce2ad6a38761e7e04921ef771de" title="CUDA device pointer.">CUdeviceptr</a> Start = srcDevice+(srcZ*srcHeight+srcY)*srcPitch+srcXInBytes;
129 </pre></div></dd></dl>
130 <dl class="user" compact><dt><b></b></dt><dd>For CUDA arrays, srcXInBytes must be evenly divisible by the array element size.</dd></dl>
132 <li>dstXInBytes, dstY and dstZ specify the base address of the destination data for the copy.</li></ul>
134 <dl class="user" compact><dt><b></b></dt><dd>For host pointers, the base address is <div class="fragment"><pre class="fragment"> <span class="keywordtype">void</span>* dstStart = (<span class="keywordtype">void</span>*)((<span class="keywordtype">char</span>*)dstHost+(dstZ*dstHeight+dstY)*dstPitch + dstXInBytes);
135 </pre></div></dd></dl>
136 <dl class="user" compact><dt><b></b></dt><dd>For device pointers, the starting address is <div class="fragment"><pre class="fragment"> <a class="code" href="group__CUDA__TYPES_g5e264ce2ad6a38761e7e04921ef771de.html#g5e264ce2ad6a38761e7e04921ef771de" title="CUDA device pointer.">CUdeviceptr</a> dstStart = dstDevice+(dstZ*dstHeight+dstY)*dstPitch+dstXInBytes;
137 </pre></div></dd></dl>
138 <dl class="user" compact><dt><b></b></dt><dd>For CUDA arrays, dstXInBytes must be evenly divisible by the array element size.</dd></dl>
140 <li>WidthInBytes, Height and Depth specify the width (in bytes), height and depth of the 3D copy being performed. Any pitches must be greater than or equal to WidthInBytes.</li></ul>
142 <dl class="user" compact><dt><b></b></dt><dd><a class="el" href="group__CUMEM_g4b5238975579f002c0199a3800ca44df.html#g4b5238975579f002c0199a3800ca44df" title="Copies memory for 3D arrays.">cuMemcpy3D()</a> returns an error if any pitch is greater than the maximum allowed (<a class="el" href="group__CUDA__TYPES_g3b9f561d2a42733dde99b2cedcaa413a.html#gg3b9f561d2a42733dde99b2cedcaa413ac1625acc7a2db635bc1efae34030598d" title="Maximum pitch in bytes allowed by memory copies.">CU_DEVICE_ATTRIBUTE_MAX_PITCH</a>).</dd></dl>
143 The srcLOD and dstLOD members of the <a class="el" href="group__CUDA__TYPES_gde7782de4c8148acabdc70c6f078efbc.html#gde7782de4c8148acabdc70c6f078efbc">CUDA_MEMCPY3D</a> structure must be set to 0.<p>
144 <dl compact><dt><b>Parameters:</b></dt><dd>
145 <table border="0" cellspacing="2" cellpadding="0">
146 <tr><td valign="top"></td><td valign="top"><em>pCopy</em> </td><td>- Parameters for the memory copy</td></tr>
149 <dl class="return" compact><dt><b>Returns:</b></dt><dd><a class="el" href="group__CUDA__TYPES_g0cdead942fd5028d157641eef6bdeeaa.html#gg0cdead942fd5028d157641eef6bdeeaaa0eed720f8a87cd1c5fd1c453bc7a03d" title="No errors.">CUDA_SUCCESS</a>, <a class="el" href="group__CUDA__TYPES_g0cdead942fd5028d157641eef6bdeeaa.html#gg0cdead942fd5028d157641eef6bdeeaaacf52f132faf29b473cdda6061f0f44a" title="Driver deinitialized.">CUDA_ERROR_DEINITIALIZED</a>, <a class="el" href="group__CUDA__TYPES_g0cdead942fd5028d157641eef6bdeeaa.html#gg0cdead942fd5028d157641eef6bdeeaa8feb999f0af99b4a25ab26b3866f4df8" title="Driver not initialized.">CUDA_ERROR_NOT_INITIALIZED</a>, <a class="el" href="group__CUDA__TYPES_g0cdead942fd5028d157641eef6bdeeaa.html#gg0cdead942fd5028d157641eef6bdeeaaa484e9af32c1e9893ff21f0e0191a12d" title="Invalid context.">CUDA_ERROR_INVALID_CONTEXT</a>, <a class="el" href="group__CUDA__TYPES_g0cdead942fd5028d157641eef6bdeeaa.html#gg0cdead942fd5028d157641eef6bdeeaa90696c86fcee1f536a1ec7d25867feeb" title="Invalid value.">CUDA_ERROR_INVALID_VALUE</a> </dd></dl>
150 <dl class="note" compact><dt><b>Note:</b></dt><dd>Note that this function may also return error codes from previous, asynchronous launches.</dd></dl>
151 <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__CUMEM_g79559e3acc9f081ec1adf748c1307e9a.html#g79559e3acc9f081ec1adf748c1307e9a" title="Creates a 3D CUDA array.">cuArray3DCreate</a>, <a class="el" href="group__CUMEM_ga1a39d3084b37afccfd8839656ceefdd.html#ga1a39d3084b37afccfd8839656ceefdd" title="Get a 3D CUDA array descriptor.">cuArray3DGetDescriptor</a>, <a class="el" href="group__CUMEM_gb0fe1c5c0ce7a06f0b1ed89ff9c47751.html#gb0fe1c5c0ce7a06f0b1ed89ff9c47751" title="Creates a 1D or 2D CUDA array.">cuArrayCreate</a>, <a class="el" href="group__CUMEM_ge4381869abc9e6ae495ba69d9ac268d1.html#ge4381869abc9e6ae495ba69d9ac268d1" title="Destroys a CUDA array.">cuArrayDestroy</a>, <a class="el" href="group__CUMEM_g663eab70b36e5fe113eee32da375fc43.html#g663eab70b36e5fe113eee32da375fc43" title="Get a 1D or 2D CUDA array descriptor.">cuArrayGetDescriptor</a>, <a class="el" href="group__CUMEM_g627154e12233200e5eea97244ba0ef1d.html#g627154e12233200e5eea97244ba0ef1d" title="Allocates device memory.">cuMemAlloc</a>, <a class="el" href="group__CUMEM_g1f9c4537a8952d4db5ae3d0dfc2fe3c4.html#g1f9c4537a8952d4db5ae3d0dfc2fe3c4" title="Allocates page-locked host memory.">cuMemAllocHost</a>, <a class="el" href="group__CUMEM_g36c08e1bdf0d7b9aa633fe098213f26b.html#g36c08e1bdf0d7b9aa633fe098213f26b" title="Allocates pitched device memory.">cuMemAllocPitch</a>, <a class="el" href="group__CUMEM_g27f885b30c34cc20a663a671dbf6fc27.html#g27f885b30c34cc20a663a671dbf6fc27" title="Copies memory for 2D arrays.">cuMemcpy2D</a>, <a class="el" href="group__CUMEM_g4acf155faeb969d9d21f5433d3d0f274.html#g4acf155faeb969d9d21f5433d3d0f274" title="Copies memory for 2D arrays.">cuMemcpy2DAsync</a>, <a class="el" href="group__CUMEM_g2fa285d47fd7020e596bfeab3deb651b.html#g2fa285d47fd7020e596bfeab3deb651b" title="Copies memory for 2D arrays.">cuMemcpy2DUnaligned</a>, <a class="el" href="group__CUMEM_g79f4f3fde6ae0f529568d881d9e11987.html#g79f4f3fde6ae0f529568d881d9e11987" title="Copies memory for 3D arrays.">cuMemcpy3DAsync</a>, <a class="el" href="group__CUMEM_g2264d9b23475ad36798c22451a67595d.html#g2264d9b23475ad36798c22451a67595d" title="Copies memory from Array to Array.">cuMemcpyAtoA</a>, <a class="el" href="group__CUMEM_g86ce061a67268ab246242ba757bff9c4.html#g86ce061a67268ab246242ba757bff9c4" title="Copies memory from Array to Device.">cuMemcpyAtoD</a>, <a class="el" href="group__CUMEM_gc47a1664ed53898c788e13002d62795d.html#gc47a1664ed53898c788e13002d62795d" title="Copies memory from Array to Host.">cuMemcpyAtoH</a>, <a class="el" href="group__CUMEM_gc7e4391e1116a38512d63d6fc829404b.html#gc7e4391e1116a38512d63d6fc829404b" title="Copies memory from Array to Host.">cuMemcpyAtoHAsync</a>, <a class="el" href="group__CUMEM_gfa0c61e10725836073c0d035240a2fed.html#gfa0c61e10725836073c0d035240a2fed" title="Copies memory from Device to Array.">cuMemcpyDtoA</a>, <a class="el" href="group__CUMEM_gb65c4f978df3837c5827e8499929fa94.html#gb65c4f978df3837c5827e8499929fa94" title="Copies memory from Device to Device.">cuMemcpyDtoD</a>, <a class="el" href="group__CUMEM_gf102b610b6ce0c0728bd113b28fe634f.html#gf102b610b6ce0c0728bd113b28fe634f" title="Copies memory from Device to Host.">cuMemcpyDtoH</a>, <a class="el" href="group__CUMEM_g9278a7f87949f3e8aa5cf37cd574123c.html#g9278a7f87949f3e8aa5cf37cd574123c" title="Copies memory from Device to Host.">cuMemcpyDtoHAsync</a>, <a class="el" href="group__CUMEM_gb72055d53fe3ff50119a011c89549e56.html#gb72055d53fe3ff50119a011c89549e56" title="Copies memory from Host to Array.">cuMemcpyHtoA</a>, <a class="el" href="group__CUMEM_g7d422b75680e773346a063873c856795.html#g7d422b75680e773346a063873c856795" title="Copies memory from Host to Array.">cuMemcpyHtoAAsync</a>, <a class="el" href="group__CUMEM_g15b5ebcd1c0be7b84b0165195ff6e2fa.html#g15b5ebcd1c0be7b84b0165195ff6e2fa" title="Copies memory from Host to Device.">cuMemcpyHtoD</a>, <a class="el" href="group__CUMEM_g872633913dd75110da057aabc8d6be06.html#g872633913dd75110da057aabc8d6be06" title="Copies memory from Host to Device.">cuMemcpyHtoDAsync</a>, <a class="el" href="group__CUMEM_g89b3f154e17cc89b6eea277dbdf5c93a.html#g89b3f154e17cc89b6eea277dbdf5c93a" title="Frees device memory.">cuMemFree</a>, <a class="el" href="group__CUMEM_g62e0fdbe181dab6b1c90fa1a51c7b92c.html#g62e0fdbe181dab6b1c90fa1a51c7b92c" title="Frees page-locked host memory.">cuMemFreeHost</a>, <a class="el" href="group__CUMEM_g6c7eaf9ae4ef75f581adb948afcc09cb.html#g6c7eaf9ae4ef75f581adb948afcc09cb" title="Get information on memory allocations.">cuMemGetAddressRange</a>, <a class="el" href="group__CUMEM_g079fb025b8c1bf4ea19e78c4db53a1aa.html#g079fb025b8c1bf4ea19e78c4db53a1aa" title="Gets free and total memory.">cuMemGetInfo</a>, <a class="el" href="group__CUMEM_g2bc27441244627875574a34523616cfa.html#g2bc27441244627875574a34523616cfa" title="Allocates page-locked host memory.">cuMemHostAlloc</a>, <a class="el" href="group__CUMEM_g2c34142d43ee9ef9ddaee382507d59c6.html#g2c34142d43ee9ef9ddaee382507d59c6" title="Passes back device pointer of mapped pinned memory.">cuMemHostGetDevicePointer</a>, <a class="el" href="group__CUMEM_g371b654a098b8f61fbfb87954ce943e9.html#g371b654a098b8f61fbfb87954ce943e9" title="Initializes device memory.">cuMemsetD2D8</a>, <a class="el" href="group__CUMEM_g70168325d5c0f98be22da35be3c252a8.html#g70168325d5c0f98be22da35be3c252a8" title="Initializes device memory.">cuMemsetD2D16</a>, <a class="el" href="group__CUMEM_gd0db2f7215031d1be1a191bace3a220c.html#gd0db2f7215031d1be1a191bace3a220c" title="Initializes device memory.">cuMemsetD2D32</a>, <a class="el" href="group__CUMEM_g555a8bb50db3ad0558e3c42bcebbff1b.html#g555a8bb50db3ad0558e3c42bcebbff1b" title="Initializes device memory.">cuMemsetD8</a>, <a class="el" href="group__CUMEM_gfd0cbf7d233352684f06619d724359c3.html#gfd0cbf7d233352684f06619d724359c3" title="Initializes device memory.">cuMemsetD16</a>, <a class="el" href="group__CUMEM_gd535bab04b518693045f517797a3c713.html#gd535bab04b518693045f517797a3c713" title="Initializes device memory.">cuMemsetD32</a> </dd></dl>
159 <hr size="1"><address style="text-align: right;"><small>
160 Generated by Doxygen on Mon Mar 30 23:16:12 2009 for NVIDIA CUDA Library <a
161 href="http://www.nvidia.com/cuda"><img src="nvidia_logo.jpg" alt="NVIDIA" align="middle" border="0" height="80"></a></small></address>