… | |
… | |
752 | |
752 | |
753 | Calls C<clGetDeviceInfo> with C<CL_DEVICE_AFFINITY_DOMAINS_EXT> and returns the result. |
753 | Calls C<clGetDeviceInfo> with C<CL_DEVICE_AFFINITY_DOMAINS_EXT> and returns the result. |
754 | |
754 | |
755 | =item $uint = $device->reference_count_ext |
755 | =item $uint = $device->reference_count_ext |
756 | |
756 | |
757 | Calls C<clGetDeviceInfo> with C<CL_DEVICE_REFERENCE_COUNT_EXT > and returns the result. |
757 | Calls C<clGetDeviceInfo> with C<CL_DEVICE_REFERENCE_COUNT_EXT> and returns the result. |
758 | |
758 | |
759 | =item @device_partition_property_exts = $device->partition_style_ext |
759 | =item @device_partition_property_exts = $device->partition_style_ext |
760 | |
760 | |
761 | Calls C<clGetDeviceInfo> with C<CL_DEVICE_PARTITION_STYLE_EXT> and returns the result. |
761 | Calls C<clGetDeviceInfo> with C<CL_DEVICE_PARTITION_STYLE_EXT> and returns the result. |
762 | |
762 | |
… | |
… | |
794 | =item $buf = $ctx->buffer_sv ($flags, $data) |
794 | =item $buf = $ctx->buffer_sv ($flags, $data) |
795 | |
795 | |
796 | Creates a new OpenCL::Buffer (actually OpenCL::BufferObj) object and |
796 | Creates a new OpenCL::Buffer (actually OpenCL::BufferObj) object and |
797 | initialise it with the given data values. |
797 | initialise it with the given data values. |
798 | |
798 | |
|
|
799 | =item $img = $ctx->image ($self, $flags, $channel_order, $channel_type, $type, $width, $height, $depth, $array_size = 0, $row_pitch = 0, $slice_pitch = 0, $num_mip_level = 0, $num_samples = 0, $*data = &PL_sv_undef) |
|
|
800 | |
|
|
801 | Creates a new OpenCL::Image object and optionally initialises it with |
|
|
802 | the given data values. |
|
|
803 | |
|
|
804 | L<http://www.khronos.org/registry/cl/sdk/1.2/docs/man/xhtml/clCreateImage.html> |
|
|
805 | |
799 | =item $img = $ctx->image2d ($flags, $channel_order, $channel_type, $width, $height, $row_pitch = 0, $data = undef) |
806 | =item $img = $ctx->image2d ($flags, $channel_order, $channel_type, $width, $height, $row_pitch = 0, $data = undef) |
800 | |
807 | |
801 | Creates a new OpenCL::Image2D object and optionally initialises it with |
808 | Creates a new OpenCL::Image2D object and optionally initialises it with |
802 | the given data values. |
809 | the given data values. |
803 | |
810 | |
… | |
… | |
815 | Creates a new OpenCL::Buffer (actually OpenCL::BufferObj) object that refers to the given |
822 | Creates a new OpenCL::Buffer (actually OpenCL::BufferObj) object that refers to the given |
816 | OpenGL buffer object. |
823 | OpenGL buffer object. |
817 | |
824 | |
818 | http://www.khronos.org/registry/cl/sdk/1.1/docs/man/xhtml/clCreateFromGLBuffer.html |
825 | http://www.khronos.org/registry/cl/sdk/1.1/docs/man/xhtml/clCreateFromGLBuffer.html |
819 | |
826 | |
|
|
827 | =item $img = $ctx->gl_texture ($flags, $target, $miplevel, $texture) |
|
|
828 | |
|
|
829 | Creates a new OpenCL::Image object that refers to the given OpenGL |
|
|
830 | texture object or buffer. |
|
|
831 | |
|
|
832 | http://www.khronos.org/registry/cl/sdk/1.2/docs/man/xhtml/clCreateFromGLTexture.html |
|
|
833 | |
820 | =item $ctx->gl_texture2d ($flags, $target, $miplevel, $texture) |
834 | =item $img = $ctx->gl_texture2d ($flags, $target, $miplevel, $texture) |
821 | |
835 | |
822 | Creates a new OpenCL::Image2D object that refers to the given OpenGL |
836 | Creates a new OpenCL::Image2D object that refers to the given OpenGL |
823 | 2D texture object. |
837 | 2D texture object. |
824 | |
838 | |
825 | http://www.khronos.org/registry/cl/sdk/1.1/docs/man/xhtml/clCreateFromGLTexture2D.html |
839 | http://www.khronos.org/registry/cl/sdk/1.1/docs/man/xhtml/clCreateFromGLTexture2D.html |
826 | |
840 | |
827 | =item $ctx->gl_texture3d ($flags, $target, $miplevel, $texture) |
841 | =item $img = $ctx->gl_texture3d ($flags, $target, $miplevel, $texture) |
828 | |
842 | |
829 | Creates a new OpenCL::Image3D object that refers to the given OpenGL |
843 | Creates a new OpenCL::Image3D object that refers to the given OpenGL |
830 | 3D texture object. |
844 | 3D texture object. |
831 | |
845 | |
832 | http://www.khronos.org/registry/cl/sdk/1.1/docs/man/xhtml/clCreateFromGLTexture3D.html |
846 | http://www.khronos.org/registry/cl/sdk/1.1/docs/man/xhtml/clCreateFromGLTexture3D.html |
… | |
… | |
981 | reference to an array of local work sizes, with the same number of |
995 | reference to an array of local work sizes, with the same number of |
982 | elements as @$global_work_size. |
996 | elements as @$global_work_size. |
983 | |
997 | |
984 | L<http://www.khronos.org/registry/cl/sdk/1.1/docs/man/xhtml/clEnqueueNDRangeKernel.html> |
998 | L<http://www.khronos.org/registry/cl/sdk/1.1/docs/man/xhtml/clEnqueueNDRangeKernel.html> |
985 | |
999 | |
986 | =item $ev = $queue->enqueue_marker ($wait_events...) |
|
|
987 | |
|
|
988 | L<http://www.khronos.org/registry/cl/sdk/1.1/docs/man/xhtml/clEnqueueMarker.html> |
|
|
989 | |
|
|
990 | =item $ev = $queue->enqueue_acquire_gl_objects ([object, ...], $wait_events...) |
1000 | =item $ev = $queue->enqueue_acquire_gl_objects ([object, ...], $wait_events...) |
991 | |
1001 | |
992 | Enqueues a list (an array-ref of OpenCL::Memory objects) to be acquired |
1002 | Enqueues a list (an array-ref of OpenCL::Memory objects) to be acquired |
993 | for subsequent OpenCL usage. |
1003 | for subsequent OpenCL usage. |
994 | |
1004 | |
… | |
… | |
1003 | |
1013 | |
1004 | =item $ev = $queue->enqueue_wait_for_events ($wait_events...) |
1014 | =item $ev = $queue->enqueue_wait_for_events ($wait_events...) |
1005 | |
1015 | |
1006 | L<http://www.khronos.org/registry/cl/sdk/1.1/docs/man/xhtml/clEnqueueWaitForEvents.html> |
1016 | L<http://www.khronos.org/registry/cl/sdk/1.1/docs/man/xhtml/clEnqueueWaitForEvents.html> |
1007 | |
1017 | |
1008 | =item $queue->enqueue_barrier |
1018 | =item $ev = $queue->enqueue_marker ($wait_events...) |
1009 | |
1019 | |
|
|
1020 | L<http://www.khronos.org/registry/cl/sdk/1.2/docs/man/xhtml/clEnqueueMarkerWithWaitList.html> |
|
|
1021 | |
|
|
1022 | =item $ev = $queue->enqueue_barrier ($wait_events...) |
|
|
1023 | |
1010 | L<http://www.khronos.org/registry/cl/sdk/1.1/docs/man/xhtml/clEnqueueBarrier.html> |
1024 | L<http://www.khronos.org/registry/cl/sdk/1.2/docs/man/xhtml/clEnqueueBarrierWithWaitList.html> |
1011 | |
1025 | |
1012 | =item $queue->flush |
1026 | =item $queue->flush |
1013 | |
1027 | |
1014 | L<http://www.khronos.org/registry/cl/sdk/1.1/docs/man/xhtml/clFlush.html> |
1028 | L<http://www.khronos.org/registry/cl/sdk/1.1/docs/man/xhtml/clFlush.html> |
1015 | |
1029 | |
… | |
… | |
1130 | |
1144 | |
1131 | =back |
1145 | =back |
1132 | |
1146 | |
1133 | =head2 THE OpenCL::Image CLASS |
1147 | =head2 THE OpenCL::Image CLASS |
1134 | |
1148 | |
1135 | This is the superclass of all image objects - OpenCL::Image2D and OpenCL::Image3D. |
1149 | This is the superclass of all image objects - OpenCL::Image1D, |
|
|
1150 | OpenCL::Image1DArray, OpenCL::Image1DBuffer, OpenCL::Image2D, |
|
|
1151 | OpenCL::Image2DArray and OpenCL::Image3D. |
1136 | |
1152 | |
1137 | =over 4 |
1153 | =over 4 |
1138 | |
1154 | |
1139 | =item $packed_value = $ev->image_info ($name) |
1155 | =item $packed_value = $ev->image_info ($name) |
1140 | |
1156 | |
… | |
… | |
1491 | our $VERSION = '0.96'; |
1507 | our $VERSION = '0.96'; |
1492 | |
1508 | |
1493 | require XSLoader; |
1509 | require XSLoader; |
1494 | XSLoader::load (__PACKAGE__, $VERSION); |
1510 | XSLoader::load (__PACKAGE__, $VERSION); |
1495 | |
1511 | |
1496 | @OpenCL::Buffer::ISA = |
1512 | @OpenCL::Buffer::ISA = |
1497 | @OpenCL::Image::ISA = OpenCL::Memory::; |
1513 | @OpenCL::Image::ISA = OpenCL::Memory::; |
1498 | |
1514 | |
1499 | @OpenCL::BufferObj::ISA = OpenCL::Buffer::; |
1515 | @OpenCL::BufferObj::ISA = OpenCL::Buffer::; |
1500 | |
1516 | |
1501 | @OpenCL::Image2D::ISA = |
1517 | @OpenCL::Image2D::ISA = |
|
|
1518 | @OpenCL::Image3D::ISA = |
|
|
1519 | @OpenCL::Image2DArray::ISA = |
|
|
1520 | @OpenCL::Image1D::ISA = |
|
|
1521 | @OpenCL::Image1DArray::ISA = |
1502 | @OpenCL::Image3D::ISA = OpenCL::Image::; |
1522 | @OpenCL::Image1DBuffer::ISA = OpenCL::Image::; |
1503 | |
1523 | |
1504 | @OpenCL::UserEvent::ISA = OpenCL::Event::; |
1524 | @OpenCL::UserEvent::ISA = OpenCL::Event::; |
1505 | } |
1525 | } |
1506 | |
1526 | |
1507 | 1; |
1527 | 1; |
1508 | |
1528 | |
1509 | =head1 AUTHOR |
1529 | =head1 AUTHOR |