All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
3.0.0-alpha1.5 - 2024-04-17
-
Raw queue
-
Automatic synchronization removed
-
Raw queue
-
Automatic synchronization removed
-
MailboxProcessor replaced with custom agent on System.Threading.Channels.
- Raw float passing. (Issue #157)
- Channel synchronization.
3.0.0-alpha1.4 - 2024-04-17
-
Raw queue
-
Automatic synchronization removed
-
MailboxProcessor replaced with custom agent on System.Threading.Channels.
- Raw float passing. (Issue #157)
- Channel synchronization.
3.0.0-alpha1.3 - 2024-04-12
-
Raw float passing. (Issue #157)
-
Channel synchronization.
-
Raw float passing. (Issue #157)
-
Channel synchronization.
- MailboxProcessor replaced with custom agent on System.Threading.Channels.
3.0.0-alpha1.2 - 2024-04-12
- Raw float passing. (Issue #157)
- Channel synchronization.
- MailboxProcessor replaced with custom agent on System.Threading.Channels.
3.0.0-alpha1.1 - 2024-04-09
- MailboxProcessor replaced with custom agent on System.Threading.Channels.
2.0.5 - 2023-02-10
- Typed device extensions.
2.0.4 - 2023-01-13
- LocalMemSize and GlobalMemSize Device properties.
- Issue #145
2.0.3 - 2023-01-04
- All dependencies updated
2.0.2 - 2022-12-28
- .NET 7 is targeted
- DUs are not blittable (.NET 7)
2.0.1 - 2022-08-05
- Multiple local values in atomic operation
2.0.0 - 2022-07-05
-
Blittable types transfer
-
Performance issues
-
Pointers to private variables are explicitly private
-
Performance of blittable types
-
Performance of kernels creation
-
Issue #135
-
Native opencl library linking
-
Atomics
-
ClArray memory management
-
API for buffers manipulation
-
Boolean type support (issue ##116, #116)
-
Nested functions
-
Complex let bindings
-
ToHost behaviour on non-gpu arrays
-
printf/printfn without arguments
-
Boolean binary operators
-
Transfer arrays of boolean
-
Local memory semantic. It is forbidden to initialize variables in the local memory.
-
Blittable types transfer
-
Performance issues
-
Pointers to private variables are explicitly private
-
Performance of blittable types
-
Performance of kernels creation
-
Issue #135
-
Native opencl library linking
-
Atomics
-
ClArray memory management
-
API for buffers manipulation
-
Boolean type support (issue ##116, #116)
-
Nested functions
-
Complex let bindings
-
ToHost behaviour on non-gpu arrays
-
printf/printfn without arguments
-
Boolean binary operators
-
Transfer arrays of boolean
-
Local memory semantic. It is forbidden to initialize variables in the local memory.
-
New abstraction for OpenCL device
-
Getting workGroupSize inside kernels
-
Discriminated unions inside kernel functions
-
Stepped and non-integer loops
-
ClCell
support -
support of following types
Tuple
andValueTuple
- Records including generic records
-
Workflow builder for OpenCL computations
-
New mailbox processor based API
-
Targeting .net 5.0
-
Kernel compilation caching
-
Mutable variables in closures
-
support of printf call inside kernel code
-
While and for loops in workflow builders
-
Basic workflow builders for designing computations
-
New abstraction for OpenCL device
-
Getting workGroupSize inside kernels
-
Discriminated unions inside kernel functions
-
Stepped and non-integer loops
-
ClCell
support -
support of following types
Tuple
andValueTuple
- Records including generic records
-
Workflow builder for OpenCL computations
-
New mailbox processor based API
-
Targeting .net 5.0
-
Kernel compilation caching
-
Mutable variables in closures
-
support of printf call inside kernel code
-
While and for loops in workflow builders
-
Basic workflow builders for designing computations
2.0.0-alpha9.6 - 2022-06-03
- Blittable types transfer
- Performance issues
2.0.0-alpha9.5 - 2022-05-07
- New abstraction for OpenCL device
- Getting workGroupSize inside kernels
- Pointers to private variables are explicitly private
- Performance of blittable types
- Performance of kernels creation
2.0.0-alpha9.4 - 2022-04-08
- Issue #135
2.0.0-alpha9.3 - 2022-03-24
- Discriminated unions inside kernel functions
- Stepped and non-integer loops
- Native opencl library linking
2.0.0-alpha9.2 - 2021-10-16
ClCell
support- support of following types
Tuple
andValueTuple
- Records including generic records
- Atomics
2.0.0-alpha9.1 - 2021-10-16
- ClArray memory management
- API for buffers manipulation
2.0.0-alpha9 - 2021-10-15
- Workflow builder for OpenCL computations
- Boolean type support (issue ##116, #116)
2.0.0-alpha8 - 2021-09-27
- New mailbox processor based API
- Targeting .net 5.0
2.0.0-alpha7.1 - 2021-07-18
- Kernel compilation caching
2.0.0-alpha7 - 2021-05-19
- Nested functions
- Complex let bindings
- Mutable variables in closures
2.0.0-alpha6.2 - 2021-05-19
- ToHost behaviour on non-gpu arrays
2.0.0-alpha6.1 - 2021-03-22
- printf/printfn without arguments
2.0.0-alpha6 - 2021-03-22
- support of printf call inside kernel code
2.0.0-alpha5 - 2021-01-27
- Boolean binary operators
- Transfer arrays of boolean
2.0.0-alpha4 - 2020-12-27
- While and for loops in workflow builders
- Local memory semantic. It is forbidden to initialize variables in the local memory.
- Basic workflow builders for designing computations
- Atomic functions are polimorphic
- Function for allocation in local memory is revised
- Type provider is removed
- NetStandard 2.1 and .NET 4.6.1 are targeted
- Constant array translation improved.
- Fix translation of access to local ids of 2D.
- Fix OpenCL compiller options.
- More diagnostic information in kernel compiler
- PDBs added
- Autoinstallation of OpenCL.Net.dll.config
- Basic support of structs and tuples.
- OpenCL type provider. Strongly typed kernels from OpenCL code are available in F#.
- Documentation updated.
- More examples added.
- Basic support of structs and tuples.
- Clean references.
- Fix references.
- OpenCL type provider. Strongly typed kernels from OpenCL code are available in F#.
- Fix Float type translation
- FSharp.Core form NuGet
- .NET 4.5