The OpenCL is open standard allowing to program many types of accelerators as well as classic CPUs. It allows to implement highly parallel computational kernels executed on computing devices. The development and optimization of kernels is challenging even for experienced programmers, as it requires to efficiently parallelize the code to thousands of independent thread and follow many performance characteristics of current hardware (which changes significantly for different hardware types and even generations). Thus, any automatic tool, which eases the exploration of performance-related parameters, has a great value in this area.
We develop methods for autotuning the code, where the programmer identifies parameters of the code, which may have influence on the performance, and the autotuning tool automatically search the parameter space and pick ones which leads to the highest performance on particular hardware device. The autotuning decreases the time needed for manual exploration of code tuning parameters and allows developers to write flexible codes, which optimize themselves for underlaying hardware architecture automatically. We are working on extension of state-of-the-art autotuning methods to allow autotuning of kernels compositions with possible host overhead, tuning for scaling and numerical precision.
You are running an old browser version which is not fully supported information system anymore. Some applications might not display correctly, some functions might not work as expected or might not work at all.