Acceleration

The software acceleration provided by Intel® Extension for Scikit-learn* is achieved through the use of vector instructions, IA hardware-specific memory optimizations, threading, and optimizations for all upcoming Intel platforms at launch time.

Intel® Extension for Scikit-learn* dynamically patches scikit-learn estimators to use Intel(R) oneAPI Data Analytics Library as the underlying solver, while getting the same solution faster.

Intel® Extension for Scikit-learn* depends on daal4py. You can learn more in daal4py documentation.

Speedup over original Scikit-learn

_images/scikit-learn-acceleration-2021.2.3.PNG

Configurations:

  • HW: c5.24xlarge AWS EC2 Instance using an Intel Xeon Platinum 8275CL with 2 sockets and 24 cores per socket

  • SW: scikit-learn version 0.24.2, scikit-learn-intelex version 2021.2.3, Python 3.8

Tip

You can also try out the benchmarks used to create this data by going to Intel’s scikit-learn_bench repository and following the relevant instructions.

Kaggle Kernels

Check out Introduction to scikit-learn-intelex, a Kaggle notebook that summarizes the speedup you can achieve with Intel® Extension for Scikit-learn*.

The acceleration is measured for a variety of machine learning workflows and Kaggle datasets.