- Issue #64 Update with new features in OpenCL-Headers repo.
- Issue #64 Update with new functions in OpenCL-Headers repo.
- PR #60 Support querying PCIE information for Intel devices.
- Issue #58 Compile failure due to unmarked unsafe function call in program.rs.
- PR #54 Unshadow device re-exports.
- Issue #55 Add Khronos
cl_khr_command_buffer_mutable_dispatch
extension.
- Issue #51 Undefined behaviour when using underlying OpenCL pointers without any unsafe.
- Issue #52
CL_MEM_USE_HOST_PTR
can result in undefined behaviour.
- PR #53 added
sync
for all threadsafe OpenCL objects.
- Issue #49 Better Error messages for
ExecuteKernel::set_arg
.
-
Update for OpenCL extension
cl_ext_image_requirements_info
. -
PR #50 Introduce
track_caller
for panicing methods ofExecuteKernel
.
- Issue #47 Base
opencl3
on opencl-sys crate. - Issue #48 Put deprecation notices behind conditional attributes.
- Transition to Rust 2021 Edition.
- Issue #44 Add provisional command-buffer extension. See: cl_khr_command_buffer.
- Issue #37 Implement DeserializeSeed for ExtendSvmVec to enable
serde
to deserialize directly into anSvmVec
.
- Issue #45 Examples and tests have
CL_MEM_READ_ONLY
andCL_MEM_WRITE_ONLY
swapped over.
- Issue #43 Update for new OpenCL extensions:
cl_khr_external_memory
,cl_khr_external_semaphore
andcl_khr_semaphore
.
- Issue #41 Remove cl3 Info enums to support new OpenCL versions and extensions.
- Add UUID and LUID types. See cl3 Issue #13 Remove Info enums to support new OpenCL versions and extensions.
- Remove example from README.md.
- Issue #38 Add SVM fine grain system support.
- Issue #40 Replace all calls to
to_string
withfrom
orinto
. - Issue #42 add
From
traits. - Add
get_all_devices
function.
[dependencies]
libc = "0.2"
cl3 = { version = "0.4", default-features = false }
serde = { version = "1.0", optional = true }
- Issue #39 Update for latest OpenCL-Headers.
- Add CONTRIBUTING and CODE_OF_CONDUCT documents.
[dependencies]
libc = "0.2"
cl3 = { version = "0.4.2", default-features = false }
serde = { version = "1.0", optional = true }
- Issue #37 Implement Serde's Serialize, Deserialize for SvmVec.
- Issue #32 Example from readme has zero output on GTX 1060 Max-Q.
- Issue #35 Superfluous/Misleading generic parameter in
ExecuteKernel::set_arg_local_buffer
.
- Improve
SVM
interface and documentation. - Remove svm_capabilities parameter from
SvmVec
methods.
- Issue #33 Coarse-grained SVM has to be mapped before usage!
Depends on:
cl3 = { version = "0.4.2", default-features = false }
- Issue #30 opencl3 cannot be compiled with OpenCl 1.2 features only.
Depends on cl3
= "0.4.2".
- Issue #26 Should
CommandQueue.html::enqueue_write_buffer
take a mutable buffer reference. - PR #27 Make mutability explicit.
- Issue #25 Using
set_event_callback
.
Depends on cl3
= "0.4.1".
- Add Device method for
cl_khr_integer_dot_product
extension.
- Issue #21
Device::available()
should return a boolean. - PR #22 Return booleans for device information where applicable.
- Issue #24 Use
bool
instead ofcl_bool
. - Use CL_BLOCKING and CL_NON_BLOCKING in enqueue calls.
- Issue #20 Restore
c_void
to program.rs.
Depends on cl3
= "0.4.0".
- Issue #15 It's safe to implement
Send
for most of the types. - PR #16 Implement Send for most of the types.
- PR #17 Implement Send for some of the types.
Depends on cl3
= "0.3.1".
- Issue #13 Higher level create_sub_buffer call.
- Issue #14 Adding Debug derives.
- Add OpenCL
cl_ext.h
functions. - Add
Direct3D
extension methods. - Add feature
cl_apple_setmemobjectdestructor
forcl3
.
Depends on cl3
= "0.3".
- Add extension
device_info
values. - Add
OpenGL
extension functions. - Add
OpenGL ES
extension functions.
Depends on cl3
= "0.2".
- Issue #10 Change the API to use String instead of ffi::CString.
- Change
set_wait_event
to takeEvent
reference.
- Issue #9 Support running multiple instances of the same kernel simultaneously.
- Issue #12 Improve OpenCL error handling.
- Add
from_device_type
method forContext
. - Add
ClMem
trait object. - Add
CommandExecutionStatus
andEventCommandType
.
- PR #4 Implement Clone for CommandQueue
- Issue #5 Consider replacing unwrap with expect for error handling.
- PR #6 Make types Send and Sync where applicable.
- PR #7 Implement Clone for most of the types.
- Issue #8 Retrieving a program build log might be impossible.
- PR #10 Replace calls to to_str with to_string for issue #10.
- PR #1 Add Buffer type field as PhantomData.
- Issue #2 Consider adding PhantomData to Image and Pipe memory objects.
- PR #3 Remove Buffer cast method.
- Remove unnecessary templates from methods.
- Remove
event_wait_list
from theenqueue_nd_range
method. - Add
wait
method toevent
. - Add
opencl2_kernel_test.rs
. - Add example to README.
- Don't raise error in
integration_test
if device is not SVM capable
- Fix build on OpenCL 2.0 ICD.
- Fix integration tests on Intel Skylake.
- Get the max_work_item_dimensions from the device CommandQueue.
Depends on cl3
= "0.1".
- OpenCL objects implemented by Rust structs that manage their resources by implementing the
Drop
trait to perform RAII, e.g. Context, Program, CommandQueue, etc. safe
Rust functions that call OpenCL C API functions and return Rust Result types.- A
Vec
implemented using OpenCL Shared Virtual Memory (SVM), see svm.