In [1]:
from sklearn_benchmarks.reporting.hp_match import HpMatchReporting
from sklearn_benchmarks.utils import default_run_dir, default_report_config
from pathlib import Path
import pandas as pd
pd.set_option('display.max_colwidth', None)
pd.set_option('display.max_columns', None)
pd.set_option('display.max_rows', None)

scikit-learn-intelex (Intel® oneAPI) vs. scikit-learn

In [4]:
run_dir = Path(run_dir)
In [5]:
reporting = HpMatchReporting(**report_config, run_dir=run_dir)
reporting.make_report()

We assume here there is a perfect match between the hyperparameters of both librairies. For a given set of parameters and a given dataset, we compute the speed-up time scikit-learn / time sklearnex. For instance, a speed-up of 2 means that sklearnex is twice as fast as scikit-learn for a given set of parameters and a given dataset.

KNeighborsClassifier (brute force)

scikit-learn-intelex (2021.20220207.123530) vs. scikit-learn (1.0.2)

Speedup barplots

All estimators share the following parameters: algorithm=brute.

Raw results

fit

sklearn_profiling sklearnex_profiling function n_samples_train n_samples n_features mean_duration_sklearn std_duration_sklearn iteration_throughput latency n_jobs n_neighbors mean_duration_sklearnex std_duration_sklearnex speedup std_speedup
0 Download Download fit 100000 100000 100 1.220 0.012 0.066 0.0 -1 1 0.052 0.001 23.535 23.537
3 Download Download fit 100000 100000 100 1.054 0.026 0.076 0.0 -1 5 0.046 0.000 22.701 22.701
6 Download Download fit 100000 100000 100 1.189 0.012 0.067 0.0 1 100 0.056 0.011 21.330 21.724
9 Download Download fit 100000 100000 100 1.198 0.004 0.067 0.0 -1 100 0.052 0.000 23.093 23.094
12 Download Download fit 100000 100000 100 1.064 0.020 0.075 0.0 1 5 0.052 0.000 20.595 20.595
15 Download Download fit 100000 100000 100 1.053 0.019 0.076 0.0 1 1 0.049 0.003 21.573 21.611
18 Download Download fit 100000 100000 2 0.048 0.000 0.033 0.0 -1 1 0.008 0.000 6.095 6.099
21 Download Download fit 100000 100000 2 0.046 0.001 0.035 0.0 -1 5 0.008 0.000 5.972 5.978
24 Download Download fit 100000 100000 2 0.049 0.000 0.033 0.0 1 100 0.008 0.000 6.322 6.328
27 Download Download fit 100000 100000 2 0.049 0.001 0.033 0.0 -1 100 0.008 0.000 6.173 6.178
30 Download Download fit 100000 100000 2 0.048 0.001 0.033 0.0 1 5 0.008 0.000 6.102 6.106
33 Download Download fit 100000 100000 2 0.043 0.000 0.037 0.0 1 1 0.008 0.000 5.585 5.590

predict

sklearn_profiling sklearnex_profiling function n_samples_train n_samples n_features mean_duration_sklearn std_duration_sklearn iteration_throughput latency n_jobs n_neighbors mean_duration_sklearnex std_duration_sklearnex speedup std_speedup
1 Download Download predict 100000 1000 100 2.511 0.099 0.000 0.003 -1 1 0.172 0.003 14.591 14.593
2 Download Download predict 100000 1 100 0.022 0.002 0.000 0.022 -1 1 0.009 0.000 2.383 2.385
4 Download Download predict 100000 1000 100 2.983 0.072 0.000 0.003 -1 5 0.174 0.002 17.169 17.171
5 Download Download predict 100000 1 100 0.023 0.002 0.000 0.023 -1 5 0.009 0.000 2.565 2.565
7 Download Download predict 100000 1000 100 1.923 0.009 0.000 0.002 1 100 0.211 0.002 9.098 9.098
8 Download Download predict 100000 1 100 0.020 0.000 0.000 0.020 1 100 0.009 0.000 2.142 2.142
10 Download Download predict 100000 1000 100 2.689 0.057 0.000 0.003 -1 100 0.214 0.002 12.586 12.587
11 Download Download predict 100000 1 100 0.025 0.003 0.000 0.025 -1 100 0.009 0.000 2.695 2.696
13 Download Download predict 100000 1000 100 1.814 0.013 0.000 0.002 1 5 0.179 0.002 10.137 10.138
14 Download Download predict 100000 1 100 0.021 0.000 0.000 0.021 1 5 0.009 0.000 2.236 2.236
16 Download Download predict 100000 1000 100 1.211 0.020 0.001 0.001 1 1 0.175 0.003 6.928 6.929
17 Download Download predict 100000 1 100 0.020 0.000 0.000 0.020 1 1 0.009 0.000 2.109 2.110
19 Download Download predict 100000 1000 2 1.929 0.026 0.000 0.002 -1 1 0.026 0.002 73.116 73.267
20 Download Download predict 100000 1 2 0.005 0.002 0.000 0.005 -1 1 0.001 0.000 6.017 6.211
22 Download Download predict 100000 1000 2 2.677 0.029 0.000 0.003 -1 5 0.027 0.001 100.824 100.874
23 Download Download predict 100000 1 2 0.006 0.002 0.000 0.006 -1 5 0.001 0.000 6.767 6.897
25 Download Download predict 100000 1000 2 1.913 0.008 0.000 0.002 1 100 0.058 0.001 32.718 32.725
26 Download Download predict 100000 1 2 0.003 0.000 0.000 0.003 1 100 0.001 0.000 3.049 3.104
28 Download Download predict 100000 1000 2 2.782 0.059 0.000 0.003 -1 100 0.059 0.001 46.812 46.819
29 Download Download predict 100000 1 2 0.006 0.002 0.000 0.006 -1 100 0.001 0.000 6.103 6.219
31 Download Download predict 100000 1000 2 1.759 0.003 0.000 0.002 1 5 0.027 0.001 65.795 65.851
32 Download Download predict 100000 1 2 0.002 0.000 0.000 0.002 1 5 0.001 0.000 2.809 2.879
34 Download Download predict 100000 1000 2 1.098 0.009 0.000 0.001 1 1 0.025 0.001 43.692 43.708
35 Download Download predict 100000 1 2 0.002 0.000 0.000 0.002 1 1 0.001 0.000 2.165 2.215

Profiling traces can be visualized using Perfetto UI.

KNeighborsClassifier (KD tree)

scikit-learn-intelex (2021.20220207.123530) vs. scikit-learn (1.0.2)

Speedup barplots

All estimators share the following parameters: algorithm=kd_tree.

Raw results

fit

sklearn_profiling sklearnex_profiling function n_samples_train n_samples n_features mean_duration_sklearn std_duration_sklearn iteration_throughput latency n_jobs n_neighbors mean_duration_sklearnex std_duration_sklearnex speedup std_speedup
0 Download Download fit 1000000 1000000 10 2.918 0.082 0.027 0.0 -1 1 0.754 0.014 3.868 3.869
3 Download Download fit 1000000 1000000 10 3.155 0.106 0.025 0.0 -1 5 0.784 0.020 4.025 4.026
6 Download Download fit 1000000 1000000 10 2.881 0.078 0.028 0.0 1 100 0.748 0.011 3.851 3.852
9 Download Download fit 1000000 1000000 10 3.123 0.053 0.026 0.0 -1 100 0.758 0.018 4.119 4.121
12 Download Download fit 1000000 1000000 10 3.197 0.059 0.025 0.0 1 5 0.718 0.008 4.454 4.454
15 Download Download fit 1000000 1000000 10 3.019 0.065 0.026 0.0 1 1 0.734 0.011 4.113 4.113
18 Download Download fit 1000 1000 2 0.001 0.000 0.032 0.0 -1 1 0.001 0.000 0.511 0.518
21 Download Download fit 1000 1000 2 0.001 0.000 0.032 0.0 -1 5 0.001 0.000 0.524 0.529
24 Download Download fit 1000 1000 2 0.001 0.000 0.029 0.0 1 100 0.001 0.000 0.591 0.599
27 Download Download fit 1000 1000 2 0.001 0.000 0.029 0.0 -1 100 0.001 0.000 0.583 0.594
30 Download Download fit 1000 1000 2 0.001 0.000 0.030 0.0 1 5 0.001 0.000 0.585 0.595
33 Download Download fit 1000 1000 2 0.001 0.000 0.028 0.0 1 1 0.001 0.000 0.627 0.636

predict

sklearn_profiling sklearnex_profiling function n_samples_train n_samples n_features mean_duration_sklearn std_duration_sklearn iteration_throughput latency n_jobs n_neighbors mean_duration_sklearnex std_duration_sklearnex speedup std_speedup
1 Download Download predict 1000000 1000 10 0.468 0.006 0.000 0.000 -1 1 0.112 0.002 4.163 4.164
2 Download Download predict 1000000 1 10 0.003 0.001 0.000 0.003 -1 1 0.000 0.000 9.499 10.642
4 Download Download predict 1000000 1000 10 0.814 0.013 0.000 0.001 -1 5 0.199 0.003 4.087 4.088
5 Download Download predict 1000000 1 10 0.003 0.001 0.000 0.003 -1 5 0.000 0.000 9.355 10.331
7 Download Download predict 1000000 1000 10 4.909 0.038 0.000 0.005 1 100 0.591 0.004 8.307 8.307
8 Download Download predict 1000000 1 10 0.002 0.001 0.000 0.002 1 100 0.001 0.000 4.208 4.515
10 Download Download predict 1000000 1000 10 2.663 0.017 0.000 0.003 -1 100 0.583 0.005 4.567 4.567
11 Download Download predict 1000000 1 10 0.005 0.001 0.000 0.005 -1 100 0.001 0.000 7.857 8.425
13 Download Download predict 1000000 1000 10 1.507 0.017 0.000 0.002 1 5 0.199 0.002 7.557 7.558
14 Download Download predict 1000000 1 10 0.001 0.000 0.000 0.001 1 5 0.000 0.000 3.611 3.934
16 Download Download predict 1000000 1000 10 0.780 0.007 0.000 0.001 1 1 0.111 0.002 6.997 6.998
17 Download Download predict 1000000 1 10 0.001 0.000 0.000 0.001 1 1 0.000 0.000 3.586 3.997
19 Download Download predict 1000 1000 2 0.022 0.001 0.001 0.000 -1 1 0.001 0.000 42.246 43.256
20 Download Download predict 1000 1 2 0.003 0.000 0.000 0.003 -1 1 0.000 0.000 17.055 19.135
22 Download Download predict 1000 1000 2 0.024 0.002 0.001 0.000 -1 5 0.001 0.000 30.638 31.333
23 Download Download predict 1000 1 2 0.002 0.000 0.000 0.002 -1 5 0.000 0.000 14.543 17.747
25 Download Download predict 1000 1000 2 0.036 0.003 0.000 0.000 1 100 0.005 0.000 7.533 7.554
26 Download Download predict 1000 1 2 0.001 0.000 0.000 0.001 1 100 0.000 0.000 3.579 4.330
28 Download Download predict 1000 1000 2 0.034 0.000 0.000 0.000 -1 100 0.005 0.000 7.267 7.280
29 Download Download predict 1000 1 2 0.002 0.000 0.000 0.002 -1 100 0.000 0.000 14.097 16.852
31 Download Download predict 1000 1000 2 0.021 0.000 0.001 0.000 1 5 0.001 0.000 25.936 26.460
32 Download Download predict 1000 1 2 0.001 0.000 0.000 0.001 1 5 0.000 0.000 3.699 4.585
34 Download Download predict 1000 1000 2 0.020 0.000 0.001 0.000 1 1 0.000 0.000 40.148 41.164
35 Download Download predict 1000 1 2 0.001 0.000 0.000 0.001 1 1 0.000 0.000 3.977 4.638

Profiling traces can be visualized using Perfetto UI.

KMeans (tall)

scikit-learn-intelex (2021.20220207.123530) vs. scikit-learn (1.0.2)

Speedup barplots

All estimators share the following parameters: algorithm=full, n_clusters=3, max_iter=30, n_init=1, tol=1e-16.

Raw results

fit

sklearn_profiling sklearnex_profiling function n_samples_train n_samples n_features mean_duration_sklearn std_duration_sklearn iteration_throughput latency n_iter init mean_duration_sklearnex std_duration_sklearnex speedup std_speedup
0 Download Download fit 1000000 1000000 2 0.495 0.009 0.032 0.0 30 random 0.383 0.021 1.291 1.293
3 Download Download fit 1000000 1000000 2 0.569 0.008 0.028 0.0 30 k-means++ 0.416 0.015 1.368 1.369
6 Download Download fit 1000000 1000000 100 4.735 0.286 0.169 0.0 30 random 5.076 0.066 0.933 0.933
9 Download Download fit 1000000 1000000 100 4.938 0.087 0.162 0.0 30 k-means++ 5.417 0.070 0.912 0.912

predict

sklearn_profiling sklearnex_profiling function n_samples_train n_samples n_features mean_duration_sklearn std_duration_sklearn iteration_throughput latency n_iter init mean_duration_sklearnex std_duration_sklearnex speedup std_speedup
1 Download Download predict 1000000 1000 2 0.0 0.0 0.066 0.0 30 random 0.000 0.0 1.020 1.148
2 Download Download predict 1000000 1 2 0.0 0.0 0.000 0.0 30 random 0.000 0.0 1.210 1.467
4 Download Download predict 1000000 1000 2 0.0 0.0 0.064 0.0 30 k-means++ 0.000 0.0 1.057 1.195
5 Download Download predict 1000000 1 2 0.0 0.0 0.000 0.0 30 k-means++ 0.000 0.0 1.259 1.504
7 Download Download predict 1000000 1000 100 0.0 0.0 1.824 0.0 30 random 0.001 0.0 0.581 0.598
8 Download Download predict 1000000 1 100 0.0 0.0 0.004 0.0 30 random 0.000 0.0 0.466 0.493
10 Download Download predict 1000000 1000 100 0.0 0.0 1.702 0.0 30 k-means++ 0.001 0.0 0.624 0.644
11 Download Download predict 1000000 1 100 0.0 0.0 0.004 0.0 30 k-means++ 0.000 0.0 0.482 0.518

Profiling traces can be visualized using Perfetto UI.

KMeans (short)

scikit-learn-intelex (2021.20220207.123530) vs. scikit-learn (1.0.2)

Speedup barplots

All estimators share the following parameters: algorithm=full, n_clusters=300, max_iter=20, n_init=1, tol=1e-16.

Mismatches between validation scores

WARNING! Mismatch between validation scores for 2 predictions (25.0%).
The observed differences can be found in the diff_adjusted_rand_scores column.
The chosen difference threshold is 0.01 for adjusted_rand_score.
The biggest difference is 0.077 for adjusted_rand_score.
See details in the dataframe below.
estimator library diff_adjusted_rand_scores function n_samples_train n_samples n_features mean_duration_sklearn std_duration_sklearn iteration_throughput latency n_iter algorithm init max_iter n_clusters n_init tol adjusted_rand_score_sklearn mean_duration_sklearnex std_duration_sklearnex adjusted_rand_score_sklearnex speedup std_speedup
7 sklearn_KMeans_short sklearn 0.074768 predict 10000 1000 100 0.003560 0.000206 0.224743 0.000004 20 full random 20 300 1 1.000000e-16 0.222701 0.001569 0.000277 0.297469 2.268107 2.303240
10 sklearn_KMeans_short sklearn 0.076616 predict 10000 1000 100 0.002886 0.000325 0.277240 0.000003 20 full k-means++ 20 300 1 1.000000e-16 0.408030 0.002307 0.000170 0.331414 1.250995 1.254393

Raw results

fit

sklearn_profiling sklearnex_profiling function n_samples_train n_samples n_features mean_duration_sklearn std_duration_sklearn iteration_throughput latency n_iter init mean_duration_sklearnex std_duration_sklearnex speedup std_speedup
0 Download Download fit 10000 10000 2 0.228 0.001 0.001 0.0 20 random 0.076 0.001 3.018 3.018
3 Download Download fit 10000 10000 2 0.565 0.001 0.000 0.0 20 k-means++ 0.160 0.001 3.539 3.539
6 Download Download fit 10000 10000 100 0.559 0.001 0.014 0.0 20 random 0.333 0.002 1.677 1.677
9 Download Download fit 10000 10000 100 1.178 0.066 0.007 0.0 20 k-means++ 0.635 0.006 1.857 1.857

predict

sklearn_profiling sklearnex_profiling function n_samples_train n_samples n_features mean_duration_sklearn std_duration_sklearn iteration_throughput latency n_iter init mean_duration_sklearnex std_duration_sklearnex speedup std_speedup
1 Download Download predict 10000 1000 2 0.002 0.0 0.009 0.000 20 random 0.001 0.0 1.759 1.790
2 Download Download predict 10000 1 2 0.001 0.0 0.000 0.001 20 random 0.000 0.0 3.271 3.971
4 Download Download predict 10000 1000 2 0.002 0.0 0.009 0.000 20 k-means++ 0.001 0.0 1.901 1.934
5 Download Download predict 10000 1 2 0.001 0.0 0.000 0.001 20 k-means++ 0.000 0.0 3.380 4.080
7 Download Download predict 10000 1000 100 0.004 0.0 0.225 0.000 20 random 0.002 0.0 2.268 2.303
8 Download Download predict 10000 1 100 0.001 0.0 0.001 0.001 20 random 0.000 0.0 2.920 3.325
10 Download Download predict 10000 1000 100 0.003 0.0 0.277 0.000 20 k-means++ 0.002 0.0 1.251 1.254
11 Download Download predict 10000 1 100 0.000 0.0 0.003 0.000 20 k-means++ 0.001 0.0 0.518 0.546

Profiling traces can be visualized using Perfetto UI.

Logistic Regression

scikit-learn-intelex (2021.20220207.123530) vs. scikit-learn (1.0.2)

Speedup barplots

All estimators share the following parameters: penalty=l2, dual=False, tol=0.0001, C=1.0, fit_intercept=True, intercept_scaling=1.0, class_weight=nan, random_state=nan, solver=lbfgs, max_iter=100, multi_class=auto, verbose=0, warm_start=False, n_jobs=nan, l1_ratio=nan.

Raw results

fit

sklearn_profiling sklearnex_profiling function n_samples_train n_samples n_features mean_duration_sklearn std_duration_sklearn iteration_throughput latency n_iter mean_duration_sklearnex std_duration_sklearnex speedup std_speedup
0 Download Download fit 1000000 1000000 100 22.550 0.034 0.035 0.000 [20] 1.964 0.008 11.481 11.481
3 Download Download fit 1000 1000 10000 0.967 0.256 0.083 0.001 [27] 0.910 0.069 1.062 1.065

predict

sklearn_profiling sklearnex_profiling function n_samples_train n_samples n_features mean_duration_sklearn std_duration_sklearn iteration_throughput latency n_iter mean_duration_sklearnex std_duration_sklearnex speedup std_speedup
1 Download Download predict 1000000 1000 100 0.001 0.0 1.206 0.0 [20] 0.000 0.0 1.597 1.766
2 Download Download predict 1000000 1 100 0.000 0.0 0.004 0.0 [20] 0.000 0.0 0.786 0.905
4 Download Download predict 1000 100 10000 0.002 0.0 5.174 0.0 [27] 0.003 0.0 0.516 0.522
5 Download Download predict 1000 1 10000 0.000 0.0 0.833 0.0 [27] 0.001 0.0 0.126 0.130

Profiling traces can be visualized using Perfetto UI.

LinearRegression

scikit-learn-intelex (2021.20220207.123530) vs. scikit-learn (1.0.2)

Speedup barplots

All estimators share the following parameters:

Raw results

fit

sklearn_profiling sklearnex_profiling function n_samples_train n_samples n_features mean_duration_sklearn std_duration_sklearn iteration_throughput latency copy_X fit_intercept normalize positive mean_duration_sklearnex std_duration_sklearnex speedup std_speedup
0 Download Download fit 1000 1000 10000 1.370 0.015 0.058 0.001 True True deprecated False 1.387 0.023 0.988 0.988
3 Download Download fit 1000000 1000000 100 8.924 0.039 0.090 0.000 True True deprecated False 0.193 0.002 46.352 46.355

predict

sklearn_profiling sklearnex_profiling function n_samples_train n_samples n_features mean_duration_sklearn std_duration_sklearn iteration_throughput latency copy_X fit_intercept normalize positive mean_duration_sklearnex std_duration_sklearnex speedup std_speedup
1 Download Download predict 1000 1000 10000 0.013 0.0 6.354 0.0 True True deprecated False 0.019 0.0 0.673 0.673
2 Download Download predict 1000 10 10000 0.000 0.0 5.363 0.0 True True deprecated False 0.000 0.0 0.454 0.493
4 Download Download predict 1000000 1000 100 0.000 0.0 5.466 0.0 True True deprecated False 0.000 0.0 0.321 0.357
5 Download Download predict 1000000 10 100 0.000 0.0 0.116 0.0 True True deprecated False 0.000 0.0 0.430 0.509

Profiling traces can be visualized using Perfetto UI.

Ridge

scikit-learn-intelex (2021.20220207.123530) vs. scikit-learn (1.0.2)

Speedup barplots

All estimators share the following parameters: alpha=1e-06.

Raw results

fit

sklearn_profiling sklearnex_profiling function n_samples_train n_samples n_features mean_duration_sklearn std_duration_sklearn iteration_throughput latency mean_duration_sklearnex std_duration_sklearnex speedup std_speedup
0 Download Download fit 1000 1000 10000 0.176 0.001 0.453 0.0 0.170 0.003 1.038 1.038
3 Download Download fit 1000000 1000000 100 1.236 0.012 0.647 0.0 0.223 0.002 5.545 5.545

predict

sklearn_profiling sklearnex_profiling function n_samples_train n_samples n_features mean_duration_sklearn std_duration_sklearn iteration_throughput latency mean_duration_sklearnex std_duration_sklearnex speedup std_speedup
1 Download Download predict 1000 1000 10000 0.012 0.0 6.751 0.0 0.019 0.0 0.616 0.616
2 Download Download predict 1000 10 10000 0.000 0.0 4.427 0.0 0.000 0.0 0.516 0.560
4 Download Download predict 1000000 1000 100 0.000 0.0 4.485 0.0 0.000 0.0 0.541 0.596
5 Download Download predict 1000000 10 100 0.000 0.0 0.110 0.0 0.000 0.0 0.457 0.547

Profiling traces can be visualized using Perfetto UI.

TSNE

scikit-learn-intelex (2021.20220207.123530) vs. scikit-learn (1.0.2)

Speedup barplots

All estimators share the following parameters:

Raw results

fit

sklearn_profiling sklearnex_profiling function n_samples_train n_samples n_features mean_duration_sklearn std_duration_sklearn iteration_throughput latency n_iter angle early_exaggeration init learning_rate method metric min_grad_norm n_components n_iter_without_progress perplexity square_distances verbose mean_duration_sklearnex std_duration_sklearnex speedup std_speedup
0 Download Download fit 1000 1000 3 3.493 0.17 0.0 0.003 1000 0.5 12.0 warn warn barnes_hut euclidean 0.0 2 300 30.0 legacy 0 3.484 0.213 1.003 1.005

Profiling traces can be visualized using Perfetto UI.

PCA

scikit-learn-intelex (2021.20220207.123530) vs. scikit-learn (1.0.2)

Speedup barplots

All estimators share the following parameters: n_components=10.

Raw results

fit

sklearn_profiling sklearnex_profiling function n_samples_train n_samples n_features mean_duration_sklearn std_duration_sklearn iteration_throughput latency mean_duration_sklearnex std_duration_sklearnex speedup std_speedup
0 Download Download fit 100000 100000 100 0.472 0.004 0.169 0.0 0.026 0.001 18.117 18.122
1 Download Download fit 10000 10000 1000 0.433 0.017 0.185 0.0 0.181 0.001 2.390 2.390

Profiling traces can be visualized using Perfetto UI.

Benchmark environment information

System

python 3.8.12 | packaged by conda-forge | (default, Jan 30 2022, 23:42:07) [GCC 9.4.0]
executable /usr/share/miniconda/envs/sklbench/bin/python
machine Linux-5.11.0-1028-azure-x86_64-with-glibc2.10

Dependencies

pip 22.0.4
setuptools 60.10.0
sklearn 1.0.2
numpy 1.22.3
scipy 1.8.0
Cython None
pandas 1.4.1
matplotlib 3.5.1
joblib 1.1.0
threadpoolctl 3.1.0

Threadpool

user_api internal_api prefix filepath version threading_layer architecture num_threads
0 blas openblas libopenblas /usr/share/miniconda/envs/sklbench/lib/libopenblasp-r0.3.18.so 0.3.18 pthreads SkylakeX 2
1 openmp openmp libgomp /usr/share/miniconda/envs/sklbench/lib/libgomp.so.1.0.0 None NaN NaN 2

Cpu_count

cpu_count 2
physical_cpu_count 2