如何使用函数 "getdata" (imaqtool) 直接在 GPU 上传输数据
How use the function "getdata" (imaqtool) to transfer data directly on GPU
我目前正在使用 imaqtool 库中的函数 "getdata" 来获取我的相机数据,并在我的 GPU 上进行一些后处理。
因此,我想将数据直接从缓冲区 CPU 内存传输到我的 GPU 内存。
据我了解,"getdata" 将数据从 CPU 内存(缓冲区)移动到 CPU 内存。因此,将这些数据直接传输到我的 GPU 应该是微不足道的。
但是,我找不到任何相关信息。
感谢任何帮助。
简而言之:MATLAB 不是满足您需求的正确工具。 MATLAB 提供了一个非常简单的界面,但这意味着您无法完全控制某些事情,主要的是内存分配和管理。这通常是一件好事,因为它 non-trivial 可以处理内存,但在您的情况下,这就是您所要求的。
如果你想做一个内存完全由你控制的快速获取系统,你将需要使用低级语言,如C++/CUDA,并玩异步操作和线程。
在 MATLAB 中,您可以获得的最大灵活性是使用 gpuArray(captured_data)
once CPU。
我目前正在使用 imaqtool 库中的函数 "getdata" 来获取我的相机数据,并在我的 GPU 上进行一些后处理。
因此,我想将数据直接从缓冲区 CPU 内存传输到我的 GPU 内存。
据我了解,"getdata" 将数据从 CPU 内存(缓冲区)移动到 CPU 内存。因此,将这些数据直接传输到我的 GPU 应该是微不足道的。
但是,我找不到任何相关信息。
感谢任何帮助。
简而言之:MATLAB 不是满足您需求的正确工具。 MATLAB 提供了一个非常简单的界面,但这意味着您无法完全控制某些事情,主要的是内存分配和管理。这通常是一件好事,因为它 non-trivial 可以处理内存,但在您的情况下,这就是您所要求的。
如果你想做一个内存完全由你控制的快速获取系统,你将需要使用低级语言,如C++/CUDA,并玩异步操作和线程。
在 MATLAB 中,您可以获得的最大灵活性是使用 gpuArray(captured_data)
once CPU。