Module: OpenCL::CommandQueue::UnifiedSharedMemoryPreviewINTEL
- Included in:
- OpenCL::CommandQueue
- Defined in:
- lib/opencl_ruby_ffi/intel/unified_shared_memory_preview.rb
Instance Method Summary collapse
- #clEnqueueMemAdviseINTEL ⇒ Object
- #clEnqueueMemcpyINTEL ⇒ Object
- #clEnqueueMemFillINTEL ⇒ Object
- #clEnqueueMigrateMemINTEL ⇒ Object
- #enqueue_mem_advise_intel(usm_ptr, advice, options = {}) ⇒ Object
- #enqueue_mem_fill_intel(usm_ptr, pattern, options = {}) ⇒ Object
- #enqueue_memcpy_intel(dst_ptr, src_ptr, options = {}) ⇒ Object
- #enqueue_migrate_mem_intel(usm_ptr, options = {}) ⇒ Object
Instance Method Details
#clEnqueueMemAdviseINTEL ⇒ Object
557 558 559 560 561 562 563 |
# File 'lib/opencl_ruby_ffi/intel/unified_shared_memory_preview.rb', line 557 def clEnqueueMemAdviseINTEL @_clEnqueueMemAdviseINTEL ||= begin p = platform.get_extension_function("clEnqueueMemAdviseINTEL", :cl_int, [CommandQueue, :pointer, :size_t, :cl_mem_advice_intel, :cl_uint, :pointer, :pointer]) error_check(OpenCL::INVALID_OPERATION) unless p p end end |
#clEnqueueMemcpyINTEL ⇒ Object
541 542 543 544 545 546 547 |
# File 'lib/opencl_ruby_ffi/intel/unified_shared_memory_preview.rb', line 541 def clEnqueueMemcpyINTEL @_clEnqueueMemcpyINTEL ||= begin p = platform.get_extension_function("clEnqueueMemcpyINTEL", :cl_int, [CommandQueue, :cl_bool, :pointer, :pointer, :size_t, :cl_uint, :pointer, :pointer]) error_check(OpenCL::INVALID_OPERATION) unless p p end end |
#clEnqueueMemFillINTEL ⇒ Object
533 534 535 536 537 538 539 |
# File 'lib/opencl_ruby_ffi/intel/unified_shared_memory_preview.rb', line 533 def clEnqueueMemFillINTEL @_clEnqueueMemFillINTEL ||= begin p = platform.get_extension_function("clEnqueueMemFillINTEL", :cl_int, [CommandQueue, :pointer, :pointer, :size_t, :size_t, :cl_uint, :pointer, :pointer]) error_check(OpenCL::INVALID_OPERATION) unless p p end end |
#clEnqueueMigrateMemINTEL ⇒ Object
549 550 551 552 553 554 555 |
# File 'lib/opencl_ruby_ffi/intel/unified_shared_memory_preview.rb', line 549 def clEnqueueMigrateMemINTEL @_clEnqueueMigrateMemINTEL ||= begin p = platform.get_extension_function("clEnqueueMigrateMemINTEL", :cl_int, [CommandQueue, :pointer, :size_t, :cl_mem_migration_flags_intel, :cl_uint, :pointer, :pointer]) error_check(OpenCL::INVALID_OPERATION) unless p p end end |
#enqueue_mem_advise_intel(usm_ptr, advice, options = {}) ⇒ Object
600 601 602 603 604 605 606 607 608 |
# File 'lib/opencl_ruby_ffi/intel/unified_shared_memory_preview.rb', line 600 def enqueue_mem_advise_intel(usm_ptr, advice, = {}) num_events, events = get_event_wait_list( ) size = usm_ptr.size size = [:size] if [:size] event = MemoryPointer::new( Event ) error = clEnqueueMemAdviseINTEL(self, usm_ptr, size, advice, num_events, events, event) error_check(error) return Event::new(event.read_pointer, false) end |
#enqueue_mem_fill_intel(usm_ptr, pattern, options = {}) ⇒ Object
565 566 567 568 569 570 571 572 573 574 575 |
# File 'lib/opencl_ruby_ffi/intel/unified_shared_memory_preview.rb', line 565 def enqueue_mem_fill_intel(usm_ptr, pattern, = {}) num_events, events = get_event_wait_list( ) pattern_size = pattern.size pattern_size = [:pattern_size] if [:pattern_size] size = usm_ptr.size size = [:size] if [:size] event = MemoryPointer::new( Event ) error = clEnqueueMemFillINTEL.call(self, usm_ptr, pattern, pattern_size, size, num_events, events, event) error_check(error) return Event::new(event.read_pointer, false) end |
#enqueue_memcpy_intel(dst_ptr, src_ptr, options = {}) ⇒ Object
577 578 579 580 581 582 583 584 585 586 587 |
# File 'lib/opencl_ruby_ffi/intel/unified_shared_memory_preview.rb', line 577 def enqueue_memcpy_intel(dst_ptr, src_ptr, = {}) num_events, events = get_event_wait_list( ) blocking = FALSE blocking = TRUE if [:blocking] or [:blocking_copy] size = [dst_ptr.size, src_ptr.size].min size = [:size] if [:size] event = MemoryPointer::new( Event ) error = clEnqueueMemcpyINTEL.call(self, blocking, dst_ptr, src_ptr, size, num_events, events, event) error_check(error) return Event::new(event.read_pointer, false) end |
#enqueue_migrate_mem_intel(usm_ptr, options = {}) ⇒ Object
589 590 591 592 593 594 595 596 597 598 |
# File 'lib/opencl_ruby_ffi/intel/unified_shared_memory_preview.rb', line 589 def enqueue_migrate_mem_intel(usm_ptr, = {}) num_events, events = get_event_wait_list( ) flags = get_flags( ) size = usm_ptr.size size = [:size] if [:size] event = MemoryPointer::new( Event ) error = clEnqueueMigrateMemINTEL.call(self, usm_ptr, size, flags, num_events, events, event) error_check(error) return Event::new(event.read_pointer, false) end |