OpenCL class图中箭头指向buffer的含义
The meaning of arrow pointing to buffer in the OpenCL class diagram
正在研究OpenCL的大概结构
我想知道为什么有一个箭头从 MemObject 下面的黄油指向它自己。
这就是我们可以使用函数 clEnqueueCopyBuffer() 将一个缓冲区对象复制到另一个缓冲区对象的原因。
或者我们可以在 "host memory " 和 "compute device memory" 之间传递日期?
或其他东西??
OpenCL UML 中提到的 MemObject Class Diagram 表示计算设备或主机内存或两者?
"MemObject"之所以被"Buffer"指向,"Image"是因为"MemObject"对两者进行了抽象(继承自)。如果内核是 "Buffer" 或 "Image",大多数函数在执行复制或设置内核参数时不会关心,仅当它是 "MemObject".
[= 时才关心23=]
缓冲区可以指向自身,因为缓冲区对象可以是另一个缓冲区的子缓冲区。事实上,您可以创建无限数量的缓冲区,它们是另一个缓冲区的子缓冲区。
- class 图引用了 API 使用的抽象对象。这些对象是驻留在主机上还是设备上与该图中无关。只有对象之间的关系。
- 示例:一个队列只有一个上下文,但是一个上下文有 * (0...N) 个队列。
正在研究OpenCL的大概结构
我想知道为什么有一个箭头从 MemObject 下面的黄油指向它自己。
这就是我们可以使用函数 clEnqueueCopyBuffer() 将一个缓冲区对象复制到另一个缓冲区对象的原因。
或者我们可以在 "host memory " 和 "compute device memory" 之间传递日期?
或其他东西??
OpenCL UML 中提到的 MemObject Class Diagram 表示计算设备或主机内存或两者?
"MemObject"之所以被"Buffer"指向,"Image"是因为"MemObject"对两者进行了抽象(继承自)。如果内核是 "Buffer" 或 "Image",大多数函数在执行复制或设置内核参数时不会关心,仅当它是 "MemObject".
[= 时才关心23=]缓冲区可以指向自身,因为缓冲区对象可以是另一个缓冲区的子缓冲区。事实上,您可以创建无限数量的缓冲区,它们是另一个缓冲区的子缓冲区。
- class 图引用了 API 使用的抽象对象。这些对象是驻留在主机上还是设备上与该图中无关。只有对象之间的关系。
- 示例:一个队列只有一个上下文,但是一个上下文有 * (0...N) 个队列。