Module: OpenCL::CommandQueue::UnifiedSharedMemoryPreviewINTEL

Included in:
OpenCL::CommandQueue
Defined in:
lib/opencl_ruby_ffi/intel/unified_shared_memory_preview.rb

Instance Method Summary collapse

Instance Method Details

#clEnqueueMemAdviseINTELObject



531
532
533
534
535
536
# File 'lib/opencl_ruby_ffi/intel/unified_shared_memory_preview.rb', line 531

def clEnqueueMemAdviseINTEL
  return @_clEnqueueMemAdviseINTEL if @_clEnqueueMemAdviseINTEL
  @_clEnqueueMemAdviseINTEL = 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 @_clEnqueueMemAdviseINTEL
  return @_clEnqueueMemAdviseINTEL
end

#clEnqueueMemcpyINTELObject



517
518
519
520
521
522
# File 'lib/opencl_ruby_ffi/intel/unified_shared_memory_preview.rb', line 517

def clEnqueueMemcpyINTEL
  return @_clEnqueueMemcpyINTEL if @_clEnqueueMemcpyINTEL
  @_clEnqueueMemcpyINTEL = platform.get_extension_function("clEnqueueMemcpyINTEL", :cl_int, [CommandQueue, :cl_bool, :pointer, :pointer, :size_t, :cl_uint, :pointer, :pointer])
  error_check(OpenCL::INVALID_OPERATION) unless @_clEnqueueMemcpyINTEL
  return @_clEnqueueMemcpyINTEL
end

#clEnqueueMemFillINTELObject



510
511
512
513
514
515
# File 'lib/opencl_ruby_ffi/intel/unified_shared_memory_preview.rb', line 510

def clEnqueueMemFillINTEL
  return @_clEnqueueMemFillINTEL if @_clEnqueueMemFillINTEL
  @_clEnqueueMemFillINTEL = platform.get_extension_function("clEnqueueMemFillINTEL", :cl_int, [CommandQueue, :pointer, :pointer, :size_t, :size_t, :cl_uint, :pointer, :pointer])
  error_check(OpenCL::INVALID_OPERATION) unless @_clEnqueueMemFillINTEL
  return @_clEnqueueMemFillINTEL
end

#clEnqueueMigrateMemINTELObject



524
525
526
527
528
529
# File 'lib/opencl_ruby_ffi/intel/unified_shared_memory_preview.rb', line 524

def clEnqueueMigrateMemINTEL
  return @_clEnqueueMigrateMemINTEL if @_clEnqueueMigrateMemINTEL
  @_clEnqueueMigrateMemINTEL = 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 @_clEnqueueMemcpyINTEL
  return @_clEnqueueMemcpyINTEL
end

#enqueue_mem_advise_intel(usm_ptr, advice, options = {}) ⇒ Object



573
574
575
576
577
578
579
580
581
# File 'lib/opencl_ruby_ffi/intel/unified_shared_memory_preview.rb', line 573

def enqueue_mem_advise_intel(usm_ptr, advice, options = {})
  num_events, events = get_event_wait_list( options )
  size = usm_ptr.size
  size = options[:size] if options[: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



538
539
540
541
542
543
544
545
546
547
548
# File 'lib/opencl_ruby_ffi/intel/unified_shared_memory_preview.rb', line 538

def enqueue_mem_fill_intel(usm_ptr, pattern, options = {})
  num_events, events = get_event_wait_list( options )
  pattern_size = pattern.size
  pattern_size = options[:pattern_size] if options[:pattern_size]
  size = usm_ptr.size
  size = options[:size] if options[: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



550
551
552
553
554
555
556
557
558
559
560
# File 'lib/opencl_ruby_ffi/intel/unified_shared_memory_preview.rb', line 550

def enqueue_memcpy_intel(dst_ptr, src_ptr, options = {})
  num_events, events = get_event_wait_list( options )
  blocking = FALSE
  blocking = TRUE if options[:blocking] or options[:blocking_copy]
  size = [dst_ptr.size, src_ptr.size].min
  size = options[:size] if options[: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



562
563
564
565
566
567
568
569
570
571
# File 'lib/opencl_ruby_ffi/intel/unified_shared_memory_preview.rb', line 562

def enqueue_migrate_mem_intel(usm_ptr, options = {})
  num_events, events = get_event_wait_list( options )
  flags = get_flags( options )
  size = usm_ptr.size
  size = options[:size] if options[: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