Scikit-Learn

Scikit-learn is a Python module for machine learning built on NumPy, SciPy, and is BSD-licensed.

To run this test with the Phoronix Test Suite, the basic command is: phoronix-test-suite benchmark scikit-learn.

Project Site

scikit-learn.org

Source Repository

github.com

Test Created

28 September 2016

Last Updated

10 May 2023

Test Maintainer

Michael Larabel 

Test Type

System

Average Install Time

2 Minutes, 26 Seconds

Average Run Time

2 Minutes, 6 Seconds

Test Dependencies

Python + C/C++ Compiler Toolchain + CMake + Fortran + Meson Build System

Accolades

100k+ Downloads

Supported Platforms


Public Result Uploads *Reported Installs **Reported Test Completions **Test Profile Page Views ***OpenBenchmarking.orgEventsScikit-Learn Popularity Statisticspts/scikit-learn2016.092016.122017.032017.062017.092017.122018.032018.062018.092018.122019.032019.062019.092019.122020.032020.062020.092020.122021.032021.062021.092021.122022.032022.062022.092022.122023.032023.062023.092023.122024.035K10K15K20K25K
* Uploading of benchmark result data to OpenBenchmarking.org is always optional (opt-in) via the Phoronix Test Suite for users wishing to share their results publicly.
** Data based on those opting to upload their test results to OpenBenchmarking.org and users enabling the opt-in anonymous statistics reporting while running benchmarks from an Internet-connected platform.
*** Test profile page view reporting began March 2021.
Data updated weekly as of 7 May 2024.
Benchmark Option PopularityOpenBenchmarking.org

Revision History

pts/scikit-learn-2.0.0   [View Source]   Wed, 10 May 2023 09:00:04 GMT
Update against SciKit-Learn 1.2.2 upstream, enable more tests.

pts/scikit-learn-1.2.0   [View Source]   Sun, 20 Nov 2022 14:33:40 GMT
Update test against upstream, add more benchmark options...

pts/scikit-learn-1.1.0   [View Source]   Fri, 10 Jan 2020 09:06:48 GMT
Update test profile per https://github.com/phoronix-test-suite/test-profiles/pull/124 but bump version to 1.1.0 due to scikit-learn version change. Also explicitly use python3 binary name.

pts/scikit-learn-1.0.1   [View Source]   Thu, 04 May 2017 10:41:34 GMT
Use unzip -o

pts/scikit-learn-1.0.0   [View Source]   Wed, 28 Sep 2016 09:45:52 GMT
Initial commit.

Suites Using This Test

Machine Learning

HPC - High Performance Computing

CPU Massive

Server CPU Tests

Python


Performance Metrics

Analyze Test Configuration:

Scikit-Learn 1.1.3

Benchmark: Sparse Random Projections, 100 Iterations

OpenBenchmarking.org metrics for this test profile configuration based on 142 public results since 20 November 2022 with the latest data as of 10 October 2023.

Below is an overview of the generalized performance for components where there is sufficient statistically significant data based upon user-uploaded results. It is important to keep in mind particularly in the Linux/open-source space there can be vastly different OS configurations, with this overview intended to offer just general guidance as to the performance expectations.

Component
Percentile Rank
# Compatible Public Results
Seconds (Average)
81st
3
144 +/- 2
Mid-Tier
75th
> 147
74th
4
150 +/- 1
72nd
4
152 +/- 16
56th
3
169 +/- 1
Median
50th
173
50th
3
173 +/- 1
47th
3
174 +/- 2
46th
3
177 +/- 6
43rd
3
186 +/- 1
42nd
3
188 +/- 3
41st
3
189 +/- 1
31st
3
227 +/- 3
29th
3
230 +/- 3
Low-Tier
25th
> 251
22nd
3
273 +/- 33
11th
4
2250 +/- 9
8th
4
2441 +/- 10
4th
3
3297 +/- 5
2nd
3
3423
OpenBenchmarking.orgDistribution Of Public Results - Benchmark: Sparse Random Projections, 100 Iterations142 Results Range From 85 To 3561 Seconds8515522529536543550557564571578585592599510651135120512751345141514851555162516951765183519051975204521152185225523252395246525352605267527452815288529553025309531653235330533753445351535851326395265

Based on OpenBenchmarking.org data, the selected test / test configuration (Scikit-Learn 1.1.3 - Benchmark: Sparse Random Projections, 100 Iterations) has an average run-time of 16 minutes. By default this test profile is set to run at least 3 times but may increase if the standard deviation exceeds pre-defined defaults or other calculations deem additional runs necessary for greater statistical accuracy of the result.

OpenBenchmarking.orgMinutesTime Required To Complete BenchmarkBenchmark: Sparse Random Projections, 100 IterationsRun-Time1530456075Min: 4 / Avg: 14.98 / Max: 77

Based on public OpenBenchmarking.org results, the selected test / test configuration has an average standard deviation of 0.1%.

OpenBenchmarking.orgPercent, Fewer Is BetterAverage Deviation Between RunsBenchmark: Sparse Random Projections, 100 IterationsDeviation246810Min: 0 / Avg: 0.08 / Max: 1

Tested CPU Architectures

This benchmark has been successfully tested on the below mentioned architectures. The CPU architectures listed is where successful OpenBenchmarking.org result uploads occurred, namely for helping to determine if a given test is compatible with various alternative CPU architectures.

CPU Architecture
Kernel Identifier
Verified On
Intel / AMD x86 64-bit
x86_64
(Many Processors)
ARMv8 64-bit
aarch64
ARMv8 Neoverse-N1, Apple, Apple M2, Rockchip ARMv8 Cortex-A76 6-Core