diff --git a/README.md b/README.md index 31bf5eeb5..d2f2ebe34 100755 --- a/README.md +++ b/README.md @@ -26,11 +26,10 @@ We publish blogs on Medium, so [follow us](https://medium.com/intel-analytics-so ## Table of content -* [Prerequisites](#prerequisites) * [How to create conda environment for benchmarking](#how-to-create-conda-environment-for-benchmarking) -* [How to enable daal4py patching for scikit-learn benchmarks](#how-to-enable-daal4py-patching-for-scikit-learn-benchmarks) * [Running Python benchmarks with runner script](#running-python-benchmarks-with-runner-script) -* [Supported algorithms](#supported-algorithms) +* [Benchmark supported algorithms](#benchmark-supported-algorithms) +* [Intel(R) Extension for Scikit-learn* support](#intelr-extension-for-scikit-learn-support) * [Algorithms parameters](#algorithms-parameters) ## How to create conda environment for benchmarking @@ -65,13 +64,13 @@ conda create -n bench -c conda-forge python=3.7 xgboost pandas Run `python runner.py --configs configs/config_example.json [--output-file result.json --verbose INFO --report]` to launch benchmarks. -runner options: -* ``configs`` : configuration files paths -* ``no-intel-optimized`` : using Scikit-learn without Intel(R) Extension for Scikit-learn*. Now avalible for scikit-learn benchmarks. Default starts with using Intel(R) Extension for Scikit-learn*. -* ``output-file``: output file name for result benchmarks. Default is `result.json` -* ``report``: create an Excel report based on benchmarks results. Need library `openpyxl`. -* ``dummy-run`` : run configuration parser and datasets generation without benchmarks running. -* ``verbose`` : *WARNING*, *INFO*, *DEBUG*. print additional information during benchmarks running. Default is *INFO* +Options: +* ``--configs``: specify the path to a configuration file. +* ``--no-intel-optimized``: use Scikit-learn without [Intel(R) Extension for Scikit-learn*](#intelr-extension-for-scikit-learn-support). Now available for [scikit-learn benchmarks](https://github.com/IntelPython/scikit-learn_bench/tree/master/sklearn_bench). By default, the runner uses Intel(R) Extension for Scikit-learn. +* ``--output-file``: output file name for the benchmark result. The default name is `result.json` +* ``--report``: create an Excel report based on benchmark results. The `openpyxl` library is required. +* ``--dummy-run``: run configuration parser and dataset generation without benchmarks running. +* ``--verbose``: *WARNING*, *INFO*, *DEBUG*. print additional information during benchmarks running. Default is *INFO*. | Level | Description | |-----------|---------------| @@ -108,6 +107,18 @@ The configuration of benchmarks allows you to select the frameworks to run, sele |**[GradientBoostingClassifier](https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.GradientBoostingClassifier.html)**|gbt|:x:|:x:|:x:|:white_check_mark:| |**[GradientBoostingRegressor](https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.GradientBoostingRegressor.html)**|gbt|:x:|:x:|:x:|:white_check_mark:| +## Intel(R) Extension for Scikit-learn support + +When you run scikit-learn benchmarks on CPU, [Intel(R) Extension for Scikit-learn](https://github.com/intel/scikit-learn-intelex) is used by default. Use the ``--no-intel-optimized`` option to run the benchmarks without the extension. + +The following benchmarks have a GPU support: +* dbscan +* kmeans +* linear +* log_reg + +You may use the [configuration file for these benchmarks](https://github.com/IntelPython/scikit-learn_bench/blob/master/configs/skl_xpu_config.json) to run them on both CPU and GPU. + ## Algorithms parameters You can launch benchmarks for each algorithm separately. diff --git a/configs/README.md b/configs/README.md index eaacb493f..44ce2ae21 100644 --- a/configs/README.md +++ b/configs/README.md @@ -27,6 +27,7 @@ Refer to the tables below for descriptions of all fields in the configuration fi |data-order| array[string] | **REQUIRED** input data order. Data order: *C* (row-major, default) or *F* (column-major) | |dtype| array[string] | **REQUIRED** input data type. Data type: *float64* (default) or *float32* | |check-finitness| array[] | Check finiteness in sklearn input check(disabled by default) | +|device| array[string] | For scikit-learn only. The list of devices to run the benchmarks on. It can be *None* (default, run on CPU without sycl context) or one of the types of sycl devices: *cpu*, *gpu*, *host*. Refer to [SYCL specification](https://www.khronos.org/files/sycl/sycl-2020-reference-guide.pdf) for details| ### Case Object diff --git a/configs/skl_with_context_config.json b/configs/skl_xpu_config.json similarity index 100% rename from configs/skl_with_context_config.json rename to configs/skl_xpu_config.json