This release marks a large step for Kernel Tuner in terms of new functionality and changes. The most important additions/changes being:
- Parallel tuning on multiple GPUs and GPU clusters using Ray
- Multi-objective optimization through Pymoo
- Change of default CUDA backend from PyCuda to cuda-python
And of course many other smaller additions and fixes. Below is a more detailed overview of all merged pull requests:
What's Changed
- Add
AMDSMIObserverthat usesamdsmito measure energy by @stijnh in #372 - Added the best generated LLaMEA algorithms by @fjwillemsen in #368
- Add support for template kernels in the NVCUDA backend by @stijnh in #367
- Add support for template kernels in HIP by @stijnh in #366
- Programmatic imports by @benvanwerkhoven in #359
- Add parallel tuning on multiple remote GPUs using Ray by @isazi in #328
- Multiobjective optimization by @maric-a-b in #358
- update citation info by @benvanwerkhoven in #382
- Fix how UUID/PCI bus is acquired in CUDA backends and processed by NVML by @stijnh in #383
- add support for setting sm count in nvcuda backend by @benvanwerkhoven in #384
- update changelog by @benvanwerkhoven in #387
- Add
AMDSMIContinuousObserverby @stijnh in #386 - fix for using locked clocks by @benvanwerkhoven in #390
- Default cuda backend selection by @benvanwerkhoven in #385
- fix issue with nvml cleanup in case of crash, issue #377 by @benvanwerkhoven in #392
New Contributors
- @maric-a-b made their first contribution in #358
Full Changelog: 1.3.3...1.4.0