scikit-learn-intelex 2025.6.1__py310-none-win_amd64.whl → 2025.7.0__py310-none-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of scikit-learn-intelex might be problematic. Click here for more details.
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/daal4py/_daal4py.cp310-win_amd64.pyd +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/mb/__init__.py +2 -2
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/mb/gbt_convertors.py +258 -2
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/mb/tree_based_builders.py +30 -5
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/mpi_transceiver.cp310-win_amd64.pyd +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/dbscan.py +2 -2
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_path.py +21 -7
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/manifold/_t_sne.py +1 -1
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/svm/svm.py +1 -1
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/validation.py +15 -16
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/__init__.py +26 -1
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/_config.py +5 -4
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/_device_offload.py +72 -83
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp310-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/onedal/_onedal_py_host.cp310-win_amd64.pyd +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/basic_statistics/basic_statistics.py +69 -5
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/basic_statistics/incremental_basic_statistics.py +19 -19
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/cluster/kmeans.py +17 -1
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/common/_backend.py +62 -37
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/common/hyperparameters.py +3 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/common/tests/test_sycl.py +1 -1
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/covariance/covariance.py +2 -2
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/covariance/incremental_covariance.py +8 -16
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/datatypes/__init__.py +8 -1
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/datatypes/_data_conversion.py +25 -32
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/onedal/datatypes/_sycl_usm.py +78 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/datatypes/tests/common.py +8 -3
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/datatypes/tests/test_data.py +45 -2
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/decomposition/incremental_pca.py +8 -17
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/decomposition/pca.py +6 -4
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/ensemble/forest.py +10 -4
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/linear_model/incremental_linear_model.py +34 -32
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/linear_model/linear_model.py +22 -30
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/linear_model/logistic_regression.py +9 -5
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/primitives/kernel_functions.py +64 -17
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/svm/svm.py +0 -12
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/tests/test_common.py +1 -1
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/tests/utils/_dataframes_support.py +23 -6
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/tests/utils/_device_selection.py +1 -1
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/utils/_array_api.py +22 -25
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/utils/_sycl_queue_manager.py +57 -31
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/onedal/utils/_third_party.py +170 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/utils/validation.py +11 -3
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/_config.py +17 -8
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/_device_offload.py +33 -23
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/_utils.py +23 -1
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/base.py +1 -1
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/basic_statistics.py +5 -8
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/incremental_basic_statistics.py +17 -13
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/covariance/incremental_covariance.py +12 -5
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/decomposition/pca.py +16 -9
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/decomposition/tests/test_pca.py +115 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/dispatcher.py +12 -1
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/ensemble/_forest.py +9 -3
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/incremental_linear.py +14 -5
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/incremental_ridge.py +14 -7
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/logistic_regression.py +3 -4
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/ridge.py +9 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/manifold/tests/test_tsne.py +1 -1
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/neighbors/_lof.py +1 -1
- scikit_learn_intelex-2025.7.0.data/data/Lib/site-packages/sklearnex/preview/covariance/tests/test_covariance.py +119 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/incremental_covariance.py +0 -8
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/incremental_pca.py +0 -7
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/incremental_linear_model.py +0 -7
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/svm/_common.py +1 -1
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/test_common.py +41 -2
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/test_config.py +22 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/test_memory_usage.py +0 -8
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/test_n_jobs_support.py +1 -1
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/utils/base.py +1 -1
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/utils/validation.py +10 -10
- {scikit_learn_intelex-2025.6.1.dist-info → scikit_learn_intelex-2025.7.0.dist-info}/METADATA +2 -2
- scikit_learn_intelex-2025.7.0.dist-info/RECORD +258 -0
- scikit_learn_intelex-2025.6.1.data/data/Lib/site-packages/daal4py/_daal4py.cp310-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.6.1.data/data/Lib/site-packages/onedal/_onedal_py_dpc.cp310-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.6.1.data/data/Lib/site-packages/onedal/_onedal_py_host.cp310-win_amd64.pyd +0 -0
- scikit_learn_intelex-2025.6.1.data/data/Lib/site-packages/onedal/utils/_dpep_helpers.py +0 -71
- scikit_learn_intelex-2025.6.1.data/data/Lib/site-packages/sklearnex/decomposition/tests/test_pca.py +0 -58
- scikit_learn_intelex-2025.6.1.data/data/Lib/site-packages/sklearnex/preview/covariance/tests/test_covariance.py +0 -66
- scikit_learn_intelex-2025.6.1.dist-info/RECORD +0 -257
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/__main__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/mb/logistic_regression_builders.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/_n_jobs_support.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/_utils.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/k_means.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/cluster/tests/test_dbscan.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/decomposition/_pca.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/AdaBoostClassifier.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/GBTDAAL.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/_forest.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/ensemble/tests/test_decision_forest.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_coordinate_descent.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_linear.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/_ridge.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/coordinate_descent.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/linear.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/logistic_loss.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/ridge.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_linear.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/linear_model/tests/test_ridge.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/manifold/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/_pairwise.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/metrics/_ranking.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/_split.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/model_selection/tests/test_split.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/dispatcher.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/_models_info.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_monkeypatch.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/test_patching.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/monkeypatch/tests/utils/_launch_algorithms.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_base.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_classification.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_regression.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/_unsupervised.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/neighbors/tests/test_kneighbors.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/svm/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/base.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/daal4py/sklearn/utils/tests/test_utils.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/basic_statistics/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/test_basic_statistics.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/test_incremental_basic_statistics.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/basic_statistics/tests/utils.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/cluster/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/cluster/dbscan.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/cluster/kmeans_init.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_dbscan.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_kmeans.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/cluster/tests/test_kmeans_init.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/common/_estimator_checks.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/common/_mixin.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/covariance/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/covariance/tests/test_covariance.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/covariance/tests/test_incremental_covariance.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/decomposition/tests/test_incremental_pca.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/ensemble/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/ensemble/tests/test_random_forest.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/linear_model/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_linear_regression.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_incremental_ridge_regression.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_linear_regression.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_logistic_regression.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/linear_model/tests/test_ridge.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/neighbors/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/neighbors/neighbors.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/neighbors/tests/test_knn_classification.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/primitives/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/primitives/get_tree.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/primitives/tests/test_kernel_functions.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/svm/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/svm/tests/test_csr_svm.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/svm/tests/test_nusvc.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/svm/tests/test_nusvr.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/svm/tests/test_svc.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/svm/tests/test_svr.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/onedal/utils/tests/test_validation.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/__main__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_basic_statistics.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/basic_statistics/tests/test_incremental_basic_statistics.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/cluster/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/cluster/dbscan.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/cluster/k_means.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/cluster/tests/test_dbscan.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/cluster/tests/test_kmeans.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/conftest.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/covariance/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/covariance/tests/test_incremental_covariance.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/doc/third-party-programs.txt +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/ensemble/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/ensemble/tests/test_forest.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/glob/__main__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/glob/dispatcher.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/coordinate_descent.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/linear.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_linear.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_incremental_ridge.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_linear.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_logreg.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/linear_model/tests/test_ridge.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/manifold/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/manifold/t_sne.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/metrics/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/metrics/pairwise.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/metrics/ranking.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/metrics/tests/test_metrics.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/model_selection/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/model_selection/split.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/model_selection/tests/test_model_selection.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/neighbors/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/neighbors/common.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_classification.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_regression.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/neighbors/knn_unsupervised.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/neighbors/tests/test_neighbors.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/preview/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/preview/covariance/covariance.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/incremental_pca.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/preview/decomposition/tests/test_incremental_pca.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/basic_statistics.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/incremental_basic_statistics.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_basic_statistics_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/basic_statistics/tests/test_incremental_basic_statistics_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/dbscan.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/kmeans.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_dbscan_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/cluster/tests/test_kmeans_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/covariance.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_covariance_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/covariance/tests/test_incremental_covariance_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/pca.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_incremental_pca_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/decomposition/tests/test_pca_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/forest.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/ensemble/tests/test_forest_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/linear_model.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/logistic_regression.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_incremental_linear_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_linear_regression_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/linear_model/tests/test_logistic_regression_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/neighbors/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/spmd/neighbors/tests/test_neighbors_spmd.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/svm/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/svm/nusvc.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/svm/nusvr.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/svm/svc.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/svm/svr.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/svm/tests/test_svm.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/test_hyperparameters.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/test_monkeypatch.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/test_parallel.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/test_patching.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/test_run_to_run_stability.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/utils/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/tests/utils/spmd.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/utils/__init__.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/utils/_array_api.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/utils/parallel.py +0 -0
- {scikit_learn_intelex-2025.6.1.data → scikit_learn_intelex-2025.7.0.data}/data/Lib/site-packages/sklearnex/utils/tests/test_validation.py +0 -0
- {scikit_learn_intelex-2025.6.1.dist-info → scikit_learn_intelex-2025.7.0.dist-info}/LICENSE.txt +0 -0
- {scikit_learn_intelex-2025.6.1.dist-info → scikit_learn_intelex-2025.7.0.dist-info}/WHEEL +0 -0
- {scikit_learn_intelex-2025.6.1.dist-info → scikit_learn_intelex-2025.7.0.dist-info}/top_level.txt +0 -0
|
@@ -33,9 +33,6 @@ from ..utils.validation import _check_array, _check_n_features, _check_X_y, _num
|
|
|
33
33
|
|
|
34
34
|
|
|
35
35
|
class BaseLinearRegression(metaclass=ABCMeta):
|
|
36
|
-
"""
|
|
37
|
-
Base class for LinearRegression oneDAL implementation.
|
|
38
|
-
"""
|
|
39
36
|
|
|
40
37
|
@abstractmethod
|
|
41
38
|
def __init__(self, fit_intercept, copy_X, algorithm, alpha=0.0):
|
|
@@ -114,19 +111,20 @@ class BaseLinearRegression(metaclass=ABCMeta):
|
|
|
114
111
|
|
|
115
112
|
@supports_queue
|
|
116
113
|
def predict(self, X, queue=None):
|
|
117
|
-
"""
|
|
118
|
-
|
|
114
|
+
"""Predict using the linear model.
|
|
115
|
+
|
|
119
116
|
Parameters
|
|
120
117
|
----------
|
|
121
118
|
X : array-like or sparse matrix, shape (n_samples, n_features)
|
|
122
119
|
Samples.
|
|
123
120
|
|
|
124
|
-
queue :
|
|
125
|
-
|
|
121
|
+
queue : SyclQueue or None, default=None
|
|
122
|
+
SYCL Queue object for device code execution. Default
|
|
123
|
+
value None causes computation on host.
|
|
126
124
|
|
|
127
125
|
Returns
|
|
128
126
|
-------
|
|
129
|
-
|
|
127
|
+
y : array, shape (n_samples, n_targets)
|
|
130
128
|
Returns predicted values.
|
|
131
129
|
"""
|
|
132
130
|
|
|
@@ -162,8 +160,7 @@ class BaseLinearRegression(metaclass=ABCMeta):
|
|
|
162
160
|
|
|
163
161
|
|
|
164
162
|
class LinearRegression(BaseLinearRegression):
|
|
165
|
-
"""
|
|
166
|
-
Linear Regression oneDAL implementation.
|
|
163
|
+
"""Linear Regression oneDAL implementation.
|
|
167
164
|
|
|
168
165
|
Parameters
|
|
169
166
|
----------
|
|
@@ -175,8 +172,8 @@ class LinearRegression(BaseLinearRegression):
|
|
|
175
172
|
copy_X : bool, default=True
|
|
176
173
|
If True, X will be copied; else, it may be overwritten.
|
|
177
174
|
|
|
178
|
-
algorithm :
|
|
179
|
-
Algorithm used for
|
|
175
|
+
algorithm : str, default="norm_eq"
|
|
176
|
+
Algorithm used for oneDAL computation.
|
|
180
177
|
"""
|
|
181
178
|
|
|
182
179
|
def __init__(
|
|
@@ -185,14 +182,13 @@ class LinearRegression(BaseLinearRegression):
|
|
|
185
182
|
copy_X=False,
|
|
186
183
|
*,
|
|
187
184
|
algorithm="norm_eq",
|
|
188
|
-
**kwargs,
|
|
189
185
|
):
|
|
190
186
|
super().__init__(fit_intercept=fit_intercept, copy_X=copy_X, algorithm=algorithm)
|
|
191
187
|
|
|
192
188
|
@supports_queue
|
|
193
189
|
def fit(self, X, y, queue=None):
|
|
194
|
-
"""
|
|
195
|
-
|
|
190
|
+
"""Fit linear model.
|
|
191
|
+
|
|
196
192
|
Parameters
|
|
197
193
|
----------
|
|
198
194
|
X : {array-like, sparse matrix} of shape (n_samples, n_features)
|
|
@@ -201,8 +197,9 @@ class LinearRegression(BaseLinearRegression):
|
|
|
201
197
|
y : array-like of shape (n_samples,) or (n_samples, n_targets)
|
|
202
198
|
Target values. Will be cast to X's dtype if necessary.
|
|
203
199
|
|
|
204
|
-
queue :
|
|
205
|
-
|
|
200
|
+
queue : SyclQueue or None, default=None
|
|
201
|
+
SYCL Queue object for device code execution. Default
|
|
202
|
+
value None causes computation on host.
|
|
206
203
|
|
|
207
204
|
Returns
|
|
208
205
|
-------
|
|
@@ -256,8 +253,7 @@ class LinearRegression(BaseLinearRegression):
|
|
|
256
253
|
|
|
257
254
|
|
|
258
255
|
class Ridge(BaseLinearRegression):
|
|
259
|
-
"""
|
|
260
|
-
Ridge Regression oneDAL implementation.
|
|
256
|
+
"""Ridge Regression oneDAL implementation.
|
|
261
257
|
|
|
262
258
|
Parameters
|
|
263
259
|
----------
|
|
@@ -274,8 +270,8 @@ class Ridge(BaseLinearRegression):
|
|
|
274
270
|
copy_X : bool, default=True
|
|
275
271
|
If True, X will be copied; else, it may be overwritten.
|
|
276
272
|
|
|
277
|
-
algorithm :
|
|
278
|
-
Algorithm used for
|
|
273
|
+
algorithm : str, default="norm_eq"
|
|
274
|
+
Algorithm used for oneDAL computation.
|
|
279
275
|
"""
|
|
280
276
|
|
|
281
277
|
def __init__(
|
|
@@ -285,7 +281,6 @@ class Ridge(BaseLinearRegression):
|
|
|
285
281
|
copy_X=False,
|
|
286
282
|
*,
|
|
287
283
|
algorithm="norm_eq",
|
|
288
|
-
**kwargs,
|
|
289
284
|
):
|
|
290
285
|
super().__init__(
|
|
291
286
|
fit_intercept=fit_intercept, alpha=alpha, copy_X=copy_X, algorithm=algorithm
|
|
@@ -293,8 +288,8 @@ class Ridge(BaseLinearRegression):
|
|
|
293
288
|
|
|
294
289
|
@supports_queue
|
|
295
290
|
def fit(self, X, y, queue=None):
|
|
296
|
-
"""
|
|
297
|
-
|
|
291
|
+
"""Fit Ridge regressor.
|
|
292
|
+
|
|
298
293
|
Parameters
|
|
299
294
|
----------
|
|
300
295
|
X : {array-like, sparse matrix} of shape (n_samples, n_features)
|
|
@@ -303,8 +298,9 @@ class Ridge(BaseLinearRegression):
|
|
|
303
298
|
y : array-like of shape (n_samples,) or (n_samples, n_targets)
|
|
304
299
|
Target values. Will be cast to X's dtype if necessary.
|
|
305
300
|
|
|
306
|
-
queue :
|
|
307
|
-
|
|
301
|
+
queue : SyclQueue or None, default=None
|
|
302
|
+
SYCL Queue object for device code execution. Default
|
|
303
|
+
value None causes computation on host.
|
|
308
304
|
|
|
309
305
|
Returns
|
|
310
306
|
-------
|
|
@@ -344,8 +340,4 @@ class Ridge(BaseLinearRegression):
|
|
|
344
340
|
packed_coefficients[:, 0],
|
|
345
341
|
)
|
|
346
342
|
|
|
347
|
-
if self.coef_.shape[0] == 1 and y.ndim == 1:
|
|
348
|
-
self.coef_ = self.coef_.ravel()
|
|
349
|
-
self.intercept_ = self.intercept_[0]
|
|
350
|
-
|
|
351
343
|
return self
|
|
@@ -29,7 +29,6 @@ from ..common._estimator_checks import _check_is_fitted
|
|
|
29
29
|
from ..common._mixin import ClassifierMixin
|
|
30
30
|
from ..datatypes import from_table, to_table
|
|
31
31
|
from ..utils._array_api import _get_sycl_namespace
|
|
32
|
-
from ..utils._dpep_helpers import get_unique_values_with_dpep
|
|
33
32
|
from ..utils.validation import (
|
|
34
33
|
_check_array,
|
|
35
34
|
_check_n_features,
|
|
@@ -96,7 +95,15 @@ class BaseLogisticRegression(metaclass=ABCMeta):
|
|
|
96
95
|
self.classes_, y = np.unique(y, return_inverse=True)
|
|
97
96
|
y = y.astype(dtype=np.int32)
|
|
98
97
|
else:
|
|
99
|
-
|
|
98
|
+
_, xp, _ = _get_sycl_namespace(X)
|
|
99
|
+
# try catch needed for raw_inputs + array_api data where unlike
|
|
100
|
+
# numpy the way to yield unique values is via `unique_values`
|
|
101
|
+
# This should be removed when refactored for gpu zero-copy
|
|
102
|
+
try:
|
|
103
|
+
self.classes_ = xp.unique(y)
|
|
104
|
+
except AttributeError:
|
|
105
|
+
self.classes_ = xp.unique_values(y)
|
|
106
|
+
|
|
100
107
|
n_classes = len(self.classes_)
|
|
101
108
|
if n_classes != 2:
|
|
102
109
|
raise ValueError("Only binary classification is supported")
|
|
@@ -225,9 +232,6 @@ class BaseLogisticRegression(metaclass=ABCMeta):
|
|
|
225
232
|
|
|
226
233
|
|
|
227
234
|
class LogisticRegression(ClassifierMixin, BaseLogisticRegression):
|
|
228
|
-
"""
|
|
229
|
-
Logistic Regression oneDAL implementation.
|
|
230
|
-
"""
|
|
231
235
|
|
|
232
236
|
def __init__(
|
|
233
237
|
self,
|
|
@@ -49,21 +49,33 @@ def _compute_kernel(params, submodule, X, Y):
|
|
|
49
49
|
|
|
50
50
|
@supports_queue
|
|
51
51
|
def linear_kernel(X, Y=None, scale=1.0, shift=0.0, queue=None):
|
|
52
|
-
"""
|
|
53
|
-
|
|
54
|
-
|
|
52
|
+
"""Compute the linear kernel between X and Y.
|
|
53
|
+
|
|
54
|
+
K(x, y) = scale*dot(x, y^T) + shift
|
|
55
55
|
for each pair of rows x in X and y in Y.
|
|
56
56
|
|
|
57
57
|
Parameters
|
|
58
58
|
----------
|
|
59
59
|
X : ndarray of shape (n_samples_X, n_features)
|
|
60
|
+
A feature array.
|
|
61
|
+
|
|
60
62
|
Y : ndarray of shape (n_samples_Y, n_features)
|
|
63
|
+
An optional second feature array. If `None`, uses `Y=X`.
|
|
64
|
+
|
|
61
65
|
scale : float, default=1.0
|
|
66
|
+
Multiplication value to scale the inner product.
|
|
67
|
+
|
|
62
68
|
shift : float, default=0.0
|
|
69
|
+
Constant offset added to scaled inner product.
|
|
70
|
+
|
|
71
|
+
queue : SyclQueue or None, default=None
|
|
72
|
+
SYCL Queue object for device code execution. Default
|
|
73
|
+
value None causes computation on host.
|
|
63
74
|
|
|
64
75
|
Returns
|
|
65
76
|
-------
|
|
66
77
|
kernel_matrix : ndarray of shape (n_samples_X, n_samples_Y)
|
|
78
|
+
Scaled and shifted Gram matrix output.
|
|
67
79
|
"""
|
|
68
80
|
X, Y = _check_inputs(X, Y)
|
|
69
81
|
return _compute_kernel(
|
|
@@ -76,21 +88,30 @@ def linear_kernel(X, Y=None, scale=1.0, shift=0.0, queue=None):
|
|
|
76
88
|
|
|
77
89
|
@supports_queue
|
|
78
90
|
def rbf_kernel(X, Y=None, gamma=None, queue=None):
|
|
79
|
-
"""
|
|
80
|
-
|
|
81
|
-
|
|
91
|
+
"""Compute the rbf (gaussian) kernel between X and Y.
|
|
92
|
+
|
|
93
|
+
K(x, y) = exp(-gamma ||x-y||^2)
|
|
82
94
|
for each pair of rows x in X and y in Y.
|
|
83
95
|
|
|
84
96
|
Parameters
|
|
85
97
|
----------
|
|
86
98
|
X : ndarray of shape (n_samples_X, n_features)
|
|
99
|
+
A feature array.
|
|
100
|
+
|
|
87
101
|
Y : ndarray of shape (n_samples_Y, n_features)
|
|
102
|
+
An optional second feature array. If `None`, uses `Y=X`.
|
|
103
|
+
|
|
88
104
|
gamma : float, default=None
|
|
89
105
|
If None, defaults to 1.0 / n_features.
|
|
90
106
|
|
|
107
|
+
queue : SyclQueue or None, default=None
|
|
108
|
+
SYCL Queue object for device code execution. Default
|
|
109
|
+
value None causes computation on host.
|
|
110
|
+
|
|
91
111
|
Returns
|
|
92
112
|
-------
|
|
93
113
|
kernel_matrix : ndarray of shape (n_samples_X, n_samples_Y)
|
|
114
|
+
The RBF kernel.
|
|
94
115
|
"""
|
|
95
116
|
|
|
96
117
|
X, Y = _check_inputs(X, Y)
|
|
@@ -103,22 +124,36 @@ def rbf_kernel(X, Y=None, gamma=None, queue=None):
|
|
|
103
124
|
|
|
104
125
|
@supports_queue
|
|
105
126
|
def poly_kernel(X, Y=None, gamma=1.0, coef0=0.0, degree=3, queue=None):
|
|
106
|
-
"""
|
|
107
|
-
|
|
108
|
-
|
|
127
|
+
"""Compute the polynomial kernel between X and Y.
|
|
128
|
+
|
|
129
|
+
K(x, y) = (gamma*dot(x, y^T) + coef0)**degree
|
|
109
130
|
for each pair of rows x in X and y in Y.
|
|
110
131
|
|
|
111
132
|
Parameters
|
|
112
133
|
----------
|
|
113
134
|
X : ndarray of shape (n_samples_X, n_features)
|
|
135
|
+
A feature array.
|
|
136
|
+
|
|
114
137
|
Y : ndarray of shape (n_samples_Y, n_features)
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
138
|
+
An optional second feature array. If `None`, uses `Y=X`.
|
|
139
|
+
|
|
140
|
+
gamma : float, default=1.0
|
|
141
|
+
Multiplication value to scale the inner product.
|
|
142
|
+
|
|
143
|
+
coef0 : float, default=0.0
|
|
144
|
+
Constant offset added to scaled inner product.
|
|
145
|
+
|
|
146
|
+
degree : int, default=3
|
|
147
|
+
Kernel degree.
|
|
148
|
+
|
|
149
|
+
queue : SyclQueue or None, default=None
|
|
150
|
+
SYCL Queue object for device code execution. Default
|
|
151
|
+
value None causes computation on host.
|
|
118
152
|
|
|
119
153
|
Returns
|
|
120
154
|
-------
|
|
121
155
|
kernel_matrix : ndarray of shape (n_samples_X, n_samples_Y)
|
|
156
|
+
The polynomial kernel.
|
|
122
157
|
"""
|
|
123
158
|
|
|
124
159
|
X, Y = _check_inputs(X, Y)
|
|
@@ -132,21 +167,33 @@ def poly_kernel(X, Y=None, gamma=1.0, coef0=0.0, degree=3, queue=None):
|
|
|
132
167
|
|
|
133
168
|
@supports_queue
|
|
134
169
|
def sigmoid_kernel(X, Y=None, gamma=1.0, coef0=0.0, queue=None):
|
|
135
|
-
"""
|
|
136
|
-
|
|
137
|
-
K(x, y) = tanh(
|
|
170
|
+
"""Compute the sigmoid kernel between X and Y.
|
|
171
|
+
|
|
172
|
+
:math:`K(x, y) = \\text{tanh}(\\gamma \\mathbf{x}^T \\mathbf{y}) + \\text{coef}_0)`
|
|
138
173
|
for each pair of rows x in X and y in Y.
|
|
139
174
|
|
|
140
175
|
Parameters
|
|
141
176
|
----------
|
|
142
177
|
X : ndarray of shape (n_samples_X, n_features)
|
|
178
|
+
A feature array.
|
|
179
|
+
|
|
143
180
|
Y : ndarray of shape (n_samples_Y, n_features)
|
|
144
|
-
|
|
145
|
-
|
|
181
|
+
An optional second feature array. If `None`, uses `Y=X`.
|
|
182
|
+
|
|
183
|
+
gamma : float, default=1.0
|
|
184
|
+
Multiplication value to scale the inner product.
|
|
185
|
+
|
|
186
|
+
coef0 : float, default=0.0
|
|
187
|
+
Constant offset added to scaled inner product.
|
|
188
|
+
|
|
189
|
+
queue : SyclQueue or None, default=None
|
|
190
|
+
SYCL Queue object for device code execution. Default
|
|
191
|
+
value None causes computation on host.
|
|
146
192
|
|
|
147
193
|
Returns
|
|
148
194
|
-------
|
|
149
195
|
kernel_matrix : ndarray of shape (n_samples_X, n_samples_Y)
|
|
196
|
+
Sigmoid kernel between two arrays.
|
|
150
197
|
"""
|
|
151
198
|
|
|
152
199
|
X, Y = _check_inputs(X, Y)
|
|
@@ -334,9 +334,6 @@ class BaseSVM(metaclass=ABCMeta):
|
|
|
334
334
|
|
|
335
335
|
|
|
336
336
|
class SVR(RegressorMixin, BaseSVM):
|
|
337
|
-
"""
|
|
338
|
-
Epsilon--Support Vector Regression.
|
|
339
|
-
"""
|
|
340
337
|
|
|
341
338
|
def __init__(
|
|
342
339
|
self,
|
|
@@ -395,9 +392,6 @@ class SVR(RegressorMixin, BaseSVM):
|
|
|
395
392
|
|
|
396
393
|
|
|
397
394
|
class SVC(ClassifierMixin, BaseSVM):
|
|
398
|
-
"""
|
|
399
|
-
C-Support Vector Classification.
|
|
400
|
-
"""
|
|
401
395
|
|
|
402
396
|
def __init__(
|
|
403
397
|
self,
|
|
@@ -470,9 +464,6 @@ class SVC(ClassifierMixin, BaseSVM):
|
|
|
470
464
|
|
|
471
465
|
|
|
472
466
|
class NuSVR(RegressorMixin, BaseSVM):
|
|
473
|
-
"""
|
|
474
|
-
Nu-Support Vector Regression.
|
|
475
|
-
"""
|
|
476
467
|
|
|
477
468
|
def __init__(
|
|
478
469
|
self,
|
|
@@ -530,9 +521,6 @@ class NuSVR(RegressorMixin, BaseSVM):
|
|
|
530
521
|
|
|
531
522
|
|
|
532
523
|
class NuSVC(ClassifierMixin, BaseSVM):
|
|
533
|
-
"""
|
|
534
|
-
Nu-Support Vector Classification.
|
|
535
|
-
"""
|
|
536
524
|
|
|
537
525
|
def __init__(
|
|
538
526
|
self,
|
|
@@ -54,4 +54,4 @@ def test_sklearn_check_version_ban():
|
|
|
54
54
|
|
|
55
55
|
# remove this file from the list
|
|
56
56
|
output = "\n".join([i for i in output if "test_common.py" not in i])
|
|
57
|
-
assert output == "", f"sklearn versioning is
|
|
57
|
+
assert output == "", f"sklearn versioning is occurring in: \n{output}"
|
|
@@ -13,20 +13,25 @@
|
|
|
13
13
|
# See the License for the specific language governing permissions and
|
|
14
14
|
# limitations under the License.
|
|
15
15
|
# ===============================================================================
|
|
16
|
+
import os
|
|
16
17
|
|
|
17
18
|
import pytest
|
|
18
19
|
import scipy.sparse as sp
|
|
19
20
|
|
|
20
21
|
from sklearnex import get_config
|
|
21
22
|
|
|
22
|
-
from ...utils.
|
|
23
|
+
from ...utils._third_party import dpctl_available
|
|
23
24
|
|
|
24
25
|
if dpctl_available:
|
|
25
26
|
import dpctl.tensor as dpt
|
|
26
27
|
|
|
27
|
-
|
|
28
|
+
try:
|
|
28
29
|
import dpnp
|
|
29
30
|
|
|
31
|
+
dpnp_available = True
|
|
32
|
+
except ImportError:
|
|
33
|
+
dpnp_available = False
|
|
34
|
+
|
|
30
35
|
try:
|
|
31
36
|
# This should be lazy imported in the
|
|
32
37
|
# future along with other popular
|
|
@@ -49,18 +54,22 @@ import pandas as pd
|
|
|
49
54
|
|
|
50
55
|
from onedal.tests.utils._device_selection import get_queues
|
|
51
56
|
|
|
57
|
+
test_frameworks = os.environ.get(
|
|
58
|
+
"ONEDAL_PYTEST_FRAMEWORKS", "numpy,pandas,dpnp,dpctl,array_api"
|
|
59
|
+
)
|
|
60
|
+
|
|
52
61
|
|
|
53
|
-
def get_dataframes_and_queues(
|
|
54
|
-
dataframe_filter_="numpy,pandas,dpnp,dpctl,array_api", device_filter_="cpu,gpu"
|
|
55
|
-
):
|
|
62
|
+
def get_dataframes_and_queues(dataframe_filter_=None, device_filter_="cpu,gpu"):
|
|
56
63
|
"""Get supported dataframes for testing.
|
|
57
64
|
|
|
58
65
|
This is meant to be used for testing purposes only.
|
|
66
|
+
It is to be used only for pytest test collection.
|
|
59
67
|
|
|
60
68
|
Parameters
|
|
61
69
|
----------
|
|
62
|
-
dataframe_filter_ : str, default=
|
|
70
|
+
dataframe_filter_ : str, default=None
|
|
63
71
|
Configure output pytest.params for the certain dataframe formats.
|
|
72
|
+
When it evaluates False, it will default to value of ``test_frameworks``.
|
|
64
73
|
device_filter_ : str, default="cpu,gpu"
|
|
65
74
|
Configure output pytest.params with certain sycl queue for the dataframe,
|
|
66
75
|
where it is applicable.
|
|
@@ -83,6 +92,14 @@ def get_dataframes_and_queues(
|
|
|
83
92
|
"""
|
|
84
93
|
dataframes_and_queues = []
|
|
85
94
|
|
|
95
|
+
# filter dataframe_filter_ based on available test frameworks
|
|
96
|
+
if dataframe_filter_:
|
|
97
|
+
dataframe_filter_ = ",".join(
|
|
98
|
+
[i for i in dataframe_filter_.split(",") if i in test_frameworks]
|
|
99
|
+
)
|
|
100
|
+
else:
|
|
101
|
+
dataframe_filter_ = test_frameworks
|
|
102
|
+
|
|
86
103
|
if "numpy" in dataframe_filter_:
|
|
87
104
|
dataframes_and_queues.append(pytest.param("numpy", None, id="numpy"))
|
|
88
105
|
if "pandas" in dataframe_filter_:
|
|
@@ -17,27 +17,11 @@
|
|
|
17
17
|
"""Tools to support array_api."""
|
|
18
18
|
|
|
19
19
|
from collections.abc import Iterable
|
|
20
|
+
from functools import lru_cache
|
|
20
21
|
|
|
21
22
|
import numpy as np
|
|
22
23
|
|
|
23
|
-
from .
|
|
24
|
-
|
|
25
|
-
if dpctl_available:
|
|
26
|
-
from dpctl.tensor import usm_ndarray
|
|
27
|
-
|
|
28
|
-
if dpnp_available:
|
|
29
|
-
import dpnp
|
|
30
|
-
|
|
31
|
-
def _convert_to_dpnp(array):
|
|
32
|
-
"""Converted input object to dpnp.ndarray format."""
|
|
33
|
-
# Will be removed and `onedal.utils._array_api._asarray` will be
|
|
34
|
-
# used instead after DPNP Array API enabling.
|
|
35
|
-
if isinstance(array, usm_ndarray):
|
|
36
|
-
return dpnp.array(array, copy=False)
|
|
37
|
-
elif isinstance(array, Iterable):
|
|
38
|
-
for i in range(len(array)):
|
|
39
|
-
array[i] = _convert_to_dpnp(array[i])
|
|
40
|
-
return array
|
|
24
|
+
from ..utils._third_party import _is_subclass_fast
|
|
41
25
|
|
|
42
26
|
|
|
43
27
|
def _supports_buffer_protocol(obj):
|
|
@@ -76,6 +60,21 @@ def _is_numpy_namespace(xp):
|
|
|
76
60
|
}
|
|
77
61
|
|
|
78
62
|
|
|
63
|
+
@lru_cache(100)
|
|
64
|
+
def _cls_to_sycl_namespace(cls):
|
|
65
|
+
# use caching to minimize imports, derived from array_api_compat
|
|
66
|
+
if _is_subclass_fast(cls, "dpctl.tensor", "usm_ndarray"):
|
|
67
|
+
import dpctl.tensor as dpt
|
|
68
|
+
|
|
69
|
+
return dpt
|
|
70
|
+
elif _is_subclass_fast(cls, "dpnp", "ndarray"):
|
|
71
|
+
import dpnp
|
|
72
|
+
|
|
73
|
+
return dpnp
|
|
74
|
+
else:
|
|
75
|
+
raise ValueError(f"SYCL type not recognized: {cls}")
|
|
76
|
+
|
|
77
|
+
|
|
79
78
|
def _get_sycl_namespace(*arrays):
|
|
80
79
|
"""Get namespace of sycl arrays."""
|
|
81
80
|
|
|
@@ -87,12 +86,10 @@ def _get_sycl_namespace(*arrays):
|
|
|
87
86
|
|
|
88
87
|
if sua_iface:
|
|
89
88
|
(X,) = sua_iface.values()
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
else:
|
|
96
|
-
raise ValueError(f"SYCL type not recognized: {sua_iface}")
|
|
89
|
+
return (
|
|
90
|
+
sua_iface,
|
|
91
|
+
_cls_to_sycl_namespace(type(X)),
|
|
92
|
+
hasattr(X, "__array_namespace__"),
|
|
93
|
+
)
|
|
97
94
|
|
|
98
95
|
return sua_iface, np, False
|
|
@@ -17,14 +17,7 @@
|
|
|
17
17
|
from contextlib import contextmanager
|
|
18
18
|
|
|
19
19
|
from .._config import _get_config
|
|
20
|
-
from
|
|
21
|
-
|
|
22
|
-
if dpctl_available:
|
|
23
|
-
from dpctl import SyclQueue
|
|
24
|
-
else:
|
|
25
|
-
from onedal import _dpc_backend
|
|
26
|
-
|
|
27
|
-
SyclQueue = getattr(_dpc_backend, "SyclQueue", None)
|
|
20
|
+
from ._third_party import SyclQueue
|
|
28
21
|
|
|
29
22
|
# This special object signifies that the queue system should be
|
|
30
23
|
# disabled. It will force computation to host. This occurs when the
|
|
@@ -36,12 +29,7 @@ __global_queue = None
|
|
|
36
29
|
|
|
37
30
|
|
|
38
31
|
def __create_sycl_queue(target):
|
|
39
|
-
if SyclQueue is None:
|
|
40
|
-
# we don't have SyclQueue support
|
|
41
|
-
return None
|
|
42
|
-
if target is None:
|
|
43
|
-
return None
|
|
44
|
-
if isinstance(target, SyclQueue):
|
|
32
|
+
if isinstance(target, SyclQueue) or target is None:
|
|
45
33
|
return target
|
|
46
34
|
if isinstance(target, (str, int)):
|
|
47
35
|
return SyclQueue(target)
|
|
@@ -49,7 +37,16 @@ def __create_sycl_queue(target):
|
|
|
49
37
|
|
|
50
38
|
|
|
51
39
|
def get_global_queue():
|
|
52
|
-
"""Get the global queue.
|
|
40
|
+
"""Get the global queue.
|
|
41
|
+
|
|
42
|
+
Retrieve it from the config if not set.
|
|
43
|
+
|
|
44
|
+
Returns
|
|
45
|
+
-------
|
|
46
|
+
queue: SyclQueue or None
|
|
47
|
+
SYCL Queue object for device code execution. 'None'
|
|
48
|
+
signifies computation on host.
|
|
49
|
+
"""
|
|
53
50
|
if (queue := __global_queue) is not None:
|
|
54
51
|
if SyclQueue:
|
|
55
52
|
if queue is __fallback_queue:
|
|
@@ -75,7 +72,14 @@ def remove_global_queue():
|
|
|
75
72
|
|
|
76
73
|
|
|
77
74
|
def update_global_queue(queue):
|
|
78
|
-
"""Update the global queue.
|
|
75
|
+
"""Update the global queue.
|
|
76
|
+
|
|
77
|
+
Parameters
|
|
78
|
+
----------
|
|
79
|
+
queue : SyclQueue or None
|
|
80
|
+
SYCL Queue object for device code execution. None
|
|
81
|
+
signifies computation on host.
|
|
82
|
+
"""
|
|
79
83
|
global __global_queue
|
|
80
84
|
queue = __create_sycl_queue(queue)
|
|
81
85
|
__global_queue = queue
|
|
@@ -88,7 +92,21 @@ def fallback_to_host():
|
|
|
88
92
|
|
|
89
93
|
|
|
90
94
|
def from_data(*data):
|
|
91
|
-
"""Extract the queue from provided data.
|
|
95
|
+
"""Extract the queue from provided data.
|
|
96
|
+
|
|
97
|
+
This updates the global queue as well.
|
|
98
|
+
|
|
99
|
+
Parameters
|
|
100
|
+
----------
|
|
101
|
+
*data : arguments
|
|
102
|
+
Data objects which may contain :obj:`dpctl.SyclQueue` objects.
|
|
103
|
+
|
|
104
|
+
Returns
|
|
105
|
+
-------
|
|
106
|
+
queue : SyclQueue or None
|
|
107
|
+
SYCL Queue object for device code execution. None
|
|
108
|
+
signifies computation on host.
|
|
109
|
+
"""
|
|
92
110
|
for item in data:
|
|
93
111
|
# iterate through all data objects, extract the queue, and verify that all data objects are on the same device
|
|
94
112
|
try:
|
|
@@ -131,24 +149,32 @@ def from_data(*data):
|
|
|
131
149
|
|
|
132
150
|
@contextmanager
|
|
133
151
|
def manage_global_queue(queue, *args):
|
|
134
|
-
"""
|
|
135
|
-
Context manager to manage the global SyclQueue.
|
|
152
|
+
"""Context manager to manage the global SyclQueue.
|
|
136
153
|
|
|
137
154
|
This context manager updates the global queue with the provided queue,
|
|
138
155
|
verifies that all data objects are on the same device, and restores the
|
|
139
156
|
original queue after work is done.
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
Yields
|
|
151
|
-
|
|
157
|
+
|
|
158
|
+
Parameters
|
|
159
|
+
----------
|
|
160
|
+
queue : SyclQueue or None
|
|
161
|
+
The queue to set as the global queue. If None,
|
|
162
|
+
the global queue will be determined from the provided data.
|
|
163
|
+
|
|
164
|
+
*args : arguments
|
|
165
|
+
Additional data objects to verify their device placement.
|
|
166
|
+
|
|
167
|
+
Yields
|
|
168
|
+
------
|
|
169
|
+
SyclQueue : SyclQueue or None
|
|
170
|
+
The global queue after verification.
|
|
171
|
+
|
|
172
|
+
Notes
|
|
173
|
+
-----
|
|
174
|
+
For most applications, the original queue should be ``None``, but
|
|
175
|
+
if there are nested calls to ``manage_global_queue()``, it is
|
|
176
|
+
important to restore the outer queue, rather than setting it to
|
|
177
|
+
``None``.
|
|
152
178
|
"""
|
|
153
179
|
original_queue = get_global_queue()
|
|
154
180
|
try:
|