Release v1.0.0-beta3
Pre-release
Pre-release
github-actions
released this
03 Aug 06:48
·
659 commits
to master
since this release
This new beta offers significant performance improvements to the generated kernel programs and includes a lot of amazing new features (get the ILGPU Nuget package and ILGPU Algorithms Nuget package).
Notes
- We converted ILGPU into a monorepo project including, ILGPU.Algorithms, ILGPU.Samples, Wiki and enhanced Documentation.
- This version has some breaking changes compared to previous stable ILGPU versions (see also Release v1.0.0-beta1).
Changes
- Promote
.NET 5
to a default target framework (#529, #536). - Added new
Array
processing pipeline to have full support for nD-arrays (#513). - Added convenience overloads for
AsNDView
(#571). - Added support for zero-length
SubView
operations (#550). - Added Backend optimizations for CPU backend to re-enable support for enhanced shared memory allocations (see #567) (#574).
- Added support for Cuda ISA 7.3 and 7.4 to support all latest drivers (#566).
- Added
UCE
transformation to the backend optimization passes (#569). - Added VS integration of check styles to all projects and fixed style checking (#517, #511).
- Added CPU builder method to register custom CPU devices (#507).
- Added support for chaining
EnableAlgorithms
on Context builder instances (#515). - Improved performance of all tests by enabling aggressive caching (#522).
- Improve hash codes of
IndexND
andLongIndexND
types (#510). - Changed
InvalidEntryPointIndexParameterOfWrongType
error message to be more descriptive (#535). - Changed T4
DllImportSearchPath
toLegacyBehavior
(#514). - Fixed constant folding when converting unsigned integers (#549).
- Fixed critical issue when swapping registers/variables in backends (#541).
- Fixed invalid copies from and to sub views (#523).
- Fixed and enhanced
Stride
andArrayView
types (#509). - Fixed regression in single-pass scan when performing multiple iterations (#525).
- Fixed
RadixSortProvider
andScanProvider
test cases (#516). - Removed obsolete properties and methods (#524).
Repository Changes
- Merged ILGPU.Smples into ILGPU repository (#538, #561, #563, #564, #565, #568).
- Merged ILGPU.Algorithms into ILGPU repository.
- Merged ILGPU Wiki into ILGPU repository (#537).
- Merged external ILGPU v0.10.1 documents (#546).
CI Changes
- Add badges for versions and CI (#534).
- Skip publishing nuget packages on forks (#533).
- Selective builds on macOS, master and tags (#530).
- Fix NuGet publishing bug in CI pipeline (#572).
- Restricting the package CI job to run only once (#527).
- Run clean tests on push to master or tag without using caches (#526).
- Added support for releasing pre-view builds via
feedz.io
(#521, #520).
Major internal changes
- Adapted CI for new ILGPU monorepo (#512).
- Added missing struct type constraints (#532).
- Applied general cleanup (#531).
Special thanks
Special thanks to @MoFtZ, @Joey9801, @jgiannuzzi ,@NullandKale, @76creates, @Nnelg, @ljubon for their contributions to this release in form of code, feedback, ideas and proposals. Furthermore, we would like to thank the entire ILGPU community for providing feedback, submitting issues and feature requests.