Performance Test: Difference between revisions

From Yocto Project
Jump to navigationJump to search
 
(13 intermediate revisions by the same user not shown)
Line 8: Line 8:
Two identical test systems are used for the results, with all updates available installed. Extra packages installed (besides what's by the default in the distro) are the ones in the Quick Start guide.
Two identical test systems are used for the results, with all updates available installed. Extra packages installed (besides what's by the default in the distro) are the ones in the Quick Start guide.


Romania Setup 1.6 - 2.1
Configuration of the GDC Setup 2.1 - Current master
 
* Ubuntu 12.04 (uname -nr: ubuntu12 3.8.0-31-generic) and
* Fedora 19 (uname -nr: fedora19 3.11.3-201.fc19.x86_64)
 
GDC Setup 2.1 - Current master
 
* Ubuntu 15.10 (Wily Werewolf)" -->  4.2.0-16-generic
* Ubuntu 15.10 (Wily Werewolf)" -->  4.2.0-16-generic
* Fedora release 23 (Twenty Three) --> 4.7.10-100.fc23.x86_64
* Fedora release 23 (Twenty Three) --> 4.7.10-100.fc23.x86_64
* HW configuration: Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz, 16GB RAM,  1 x 600 GB SDD, 1 x 2 TB HDD


All system/distro settings are '''distro's defaults''', that includes:
All system/distro settings are '''distro's defaults''', that includes:
Line 23: Line 18:


- IO scheduler: cfq and CPU governer: ondemand
- IO scheduler: cfq and CPU governer: ondemand
Romania Setup 1.6 - 2.1
*HW config is: SandyBridge i7-2600 CPU @ 3.40GHz (4 cores/8 threads),  8GB RAM,  1 x 500 GB HDD
GDC Setup 2.1 - Current master
*HW config is: Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz, 16GB RAM,  1 x 600 GB SDD, 1 x 2 TB HDD


local.conf it's the default one (the script doesn't touch it except for changing DL_DIR if necessary).
local.conf it's the default one (the script doesn't touch it except for changing DL_DIR if necessary).
Line 36: Line 25:
PARALLEL_MAKE = "-j 8"
PARALLEL_MAKE = "-j 8"
MACHINE = "qemux86"</nowiki>
MACHINE = "qemux86"</nowiki>
In the tables below, unless otherwise noted, sizes are in kilobytes.
Note:
*Master builds are run daily on whatever commit there is when the cron kicks in.
*This page holds a re-run of milestone/RCs builds only for the 1.5 (dora) cycle + 1.4.1/1.4.2 (dylan).
*[https://wiki.yoctoproject.org/wiki/Performance_Test_Weekly_1.5 This page] has the old weekly results ran during the 1.5 cycle. The results differ because the test sytems used there are a bit different than those here (so don't cross compare results).


FAQ:
FAQ:
Line 50: Line 32:




----
== Daily Test Results ==
Build performance test suite is run multiple times per day. Latest test reports for master branch can found here:
* [https://wiki.yoctoproject.org/charts/build_perf/latest/ypperf-ubuntu16_master_qemux86.html Ubuntu 16.04]
* [https://wiki.yoctoproject.org/charts/build_perf/latest/ypperf-ubuntu16-xeon_master_qemux86.html Ubuntu 16.04 (Intel® Xeon® HW)]
* [https://wiki.yoctoproject.org/charts/build_perf/latest/ypperf-centos7_master_qemux86.html CentOS 7]
* [https://wiki.yoctoproject.org/charts/build_perf/latest/ypperf-opensuse422_master_qemux86.html OpenSUSE Leap 42.2] (retired)
* [https://wiki.yoctoproject.org/charts/build_perf/latest/ypperf-fedora25_master_qemux86.html Fedora 25] (retired)
* [https://wiki.yoctoproject.org/charts/build_perf/latest/ypperf01_master_qemux86.html Fedora 23] (retired)
* [https://wiki.yoctoproject.org/charts/build_perf/latest/ypperf02_master_qemux86.html Ubuntu 15.10] (retired)


Ubuntu has the default system shell (/bin/sh -> /bin/dash) and Fedora has the default SELinux policy (enabled). (Some quick tests showed that switching to bash or disabling SELinux had an minimal impact on the total build time).
== Milestone Test results ==
Guadalajara Setup from 2.1 M4 to actual master


# sh -> dash (default)
* [https://wiki.yoctoproject.org/charts/perf_milestone_GDC/performance_test.html GDC Charts]
ubuntu12,master:ea92671d9823e3667d6ced7ac2af20f991da404d,poky-10.0.0.final-426-gea92671,1:14:02,12:03.51,1:09:57,4:49.58,0:26.57,0:13.32,0:01.72,25446936,4810304
ubuntu12,master:ea92671d9823e3667d6ced7ac2af20f991da404d,poky-10.0.0.final-426-gea92671,1:14:10,12:06.96,1:10:22,4:52.66,0:26.31,0:13.35,0:01.66,25425188,4815440
ubuntu12,master:ea92671d9823e3667d6ced7ac2af20f991da404d,poky-10.0.0.final-426-gea92671,1:14:16,12:09.09,1:10:34,4:47.50,0:26.10,0:13.51,0:01.57,25425852,4810240
# sh -> bash
ubuntu12,master:ea92671d9823e3667d6ced7ac2af20f991da404d,poky-10.0.0.final-426-gea92671,1:12:56,12:03.28,1:10:25,4:57.96,0:26.19,0:13.36,0:01.59,25426624,4810376
ubuntu12,master:ea92671d9823e3667d6ced7ac2af20f991da404d,poky-10.0.0.final-426-gea92671,1:13:36,12:04.68,1:10:30,5:04.22,0:26.15,0:13.34,0:01.64,25425332,4815348
ubuntu12,master:ea92671d9823e3667d6ced7ac2af20f991da404d,poky-10.0.0.final-426-gea92671,1:14:21,12:08.91,1:10:41,5:01.82,0:26.39,0:13.39,0:01.83,25426632,4815256
# selinux=1 (default)
fedora19,master:ea92671d9823e3667d6ced7ac2af20f991da404d,poky-10.0.0.final-426-gea92671,1:15:22,10:40.98,1:13:21,4:05.22,0:32.10,0:15.63,0:01.63,25831032,4898552
fedora19,master:ea92671d9823e3667d6ced7ac2af20f991da404d,poky-10.0.0.final-426-gea92671,1:16:28,10:40.84,1:14:15,4:04.72,0:31.64,0:15.79,0:01.63,25831752,4898616
fedora19,master:ea92671d9823e3667d6ced7ac2af20f991da404d,poky-10.0.0.final-426-gea92671,1:17:04,10:32.56,1:14:18,4:04.11,0:31.74,0:15.75,0:01.59,25831972,4898692
# selinux=0
fedora19,master:ea92671d9823e3667d6ced7ac2af20f991da404d,poky-10.0.0.final-426-gea92671,1:16:22,10:14.86,1:13:09,3:55.77,0:31.72,0:15.58,0:01.60,25832104,4898672
fedora19,master:ea92671d9823e3667d6ced7ac2af20f991da404d,poky-10.0.0.final-426-gea92671,1:16:45,10:24.95,1:13:25,4:04.07,0:31.64,0:15.64,0:01.60,25831380,4898616
fedora19,master:ea92671d9823e3667d6ced7ac2af20f991da404d,poky-10.0.0.final-426-gea92671,1:17:28,10:16.52,1:12:42,4:02.91,0:31.70,0:15.53,0:01.59,25834384,4898748


----
== Old Test results ==


== Milestone Test results ==
Milestone test results from the retired Romania Setup (Yocto 1.6 2.1) can be found from here:
The results are split in tow different phases as below
 
Romania Setup from 1.6 to 2.1 releases


* [https://wiki.yoctoproject.org/charts/perf_milestone/performance_test.html RO Charts]
* [https://wiki.yoctoproject.org/charts/perf_milestone/performance_test.html RO Charts]
Guadalajara Setup from 2.1 M4 to actual master


* [https://wiki.yoctoproject.org/charts/perf_milestone_GDC/performance_test.html GDC Charts]
Raw test data from the retired Romania test setup has been moved to
* [[Performance_Test_Old_Results]]
* [[Performance_Test_Weekly_1.5]] has the old weekly results ran during the 1.5 cycle.


== 1.4.1 & 1.4.2 & 1.4.3 Build Time results ==
Configuration for the Romania Setup 1.6 - 2.1:


<tab class=wikitable sep=comma head=top>
* Ubuntu 12.04 (uname -nr: ubuntu12 3.8.0-31-generic) and
hostname,branch:commit,git describe,bitbake core-image-sato,bitbake virtual/kernel,bitbake core-image-sato (rm_work),bitbake core-image-sato -c rootfs,bitbake -p (rm -rf cache/ tmp/cache/), bitbake -p (rm -rf tmp/cache/),bitbake -p,size of tmp dir, size of tmp dir (rm_work)
* Fedora 19 (uname -nr: fedora19 3.11.3-201.fc19.x86_64)
ubuntu12,dylan:789b2b7e0cca404ff8ba8ed5ba823d215e6ba5b4,dylan-9.0.0,1:15:10,11:51.45,1:06:52,5:15.66,0:26.08,0:14.64,0:01.95,28104788,4693596
* HW configuration: SandyBridge i7-2600 CPU @ 3.40GHz (4 cores/8 threads), 8GB RAM, 1 x 500 GB HDD
ubuntu12,dylan:73f103bf9b2cdf985464dc53bf4f1cfd71d4531f,yocto-1.4.1,1:16:41,11:32.41,1:06:51,5:14.78,0:26.75,0:14.81,0:01.96,28213628,4743912
ubuntu12,dylan:73f103bf9b2cdf985464dc53bf4f1cfd71d4531f,yocto-1.4.1,1:14:31,11:34.66,1:06:41,5:12.70,0:26.54,0:14.74,0:01.92,28213772,4743844
ubuntu12,dylan:73f103bf9b2cdf985464dc53bf4f1cfd71d4531f,yocto-1.4.1,1:12:39,11:35.99,1:06:59,5:16.48,0:26.77,0:14.71,0:01.96,28217808,4743800
ubuntu12,dylan:d734ab491a30078d43dee5440c03acce2d251425,yocto-1.4.2,1:12:58,12:56.22,1:07:45,4:54.36,0:26.78,0:14.73,0:01.95,25349116,4767324
ubuntu12,dylan:d734ab491a30078d43dee5440c03acce2d251425,yocto-1.4.2,1:13:33,12:44.85,1:08:10,5:01.71,0:26.87,0:14.80,0:01.99,25349708,4767348
ubuntu12,dylan:d734ab491a30078d43dee5440c03acce2d251425,yocto-1.4.2,1:13:00,12:59.19,1:08:13,5:07.04,0:26.83,0:14.73,0:01.97,25363408,4767380
ubuntu12,dylan:7ab82abcad9ede847c42c01d2a4f4c2c18877e6f,yocto-1.4.2-64-g7ab82ab,1:09:23,12:58.26,1:07:54,4:57.79,0:26.79,0:14.88,0:01.96,25365532,4767572
ubuntu12,dylan:7ab82abcad9ede847c42c01d2a4f4c2c18877e6f,yocto-1.4.2-64-g7ab82ab,1:09:33,13:00.44,1:07:48,5:01.62,0:27.07,0:14.91,0:02.11,25366496,4767568
ubuntu12,dylan:7ab82abcad9ede847c42c01d2a4f4c2c18877e6f,yocto-1.4.2-64-g7ab82ab,1:12:25,13:05.14,1:09:17,4:58.21,0:26.99,0:14.87,0:01.95,25351352,4767496
</tab>
 
 
<tab class=wikitable sep=comma head=top>
hostname,branch:commit,git describe,bitbake core-image-sato,bitbake virtual/kernel,bitbake core-image-sato (rm_work),bitbake core-image-sato -c rootfs,bitbake -p (rm -rf cache/ tmp/cache/), bitbake -p (rm -rf tmp/cache/),bitbake -p,size of tmp dir, size of tmp dir (rm_work)
fedora19,dylan:73f103bf9b2cdf985464dc53bf4f1cfd71d4531f,yocto-1.4.1,1:14:55,10:11.74,1:10:35,4:06.95,0:34.06,0:17.79,0:01.99,28710092,4835464
fedora19,dylan:73f103bf9b2cdf985464dc53bf4f1cfd71d4531f,yocto-1.4.1,1:12:34,10:09.63,1:10:30,4:03.92,0:33.53,0:17.84,0:01.92,28713992,4835460
fedora19,dylan:73f103bf9b2cdf985464dc53bf4f1cfd71d4531f,yocto-1.4.1,1:17:15,10:11.67,1:11:47,4:45.40,0:33.90,0:17.31,0:01.97,28710884,4835484
fedora19,dylan:d734ab491a30078d43dee5440c03acce2d251425,yocto-1.4.2,1:14:50,10:53.97,1:15:47,4:19.85,0:34.18,0:17.92,0:01.92,25778860,4858892
fedora19,dylan:d734ab491a30078d43dee5440c03acce2d251425,yocto-1.4.2,1:14:58,10:43.16,1:12:00,4:07.15,0:33.93,0:17.88,0:01.98,25776164,4858920
fedora19,dylan:d734ab491a30078d43dee5440c03acce2d251425,yocto-1.4.2,1:16:11,11:23.14,1:12:31,4:08.25,0:33.64,0:18.03,0:01.95,25775976,4858876
fedora19,dylan:7ab82abcad9ede847c42c01d2a4f4c2c18877e6f,yocto-1.4.2-64-g7ab82ab,1:12:05,10:26.20,1:15:21,4:19.49,0:34.25,0:18.12,0:01.95,25774008,4858772
fedora19,dylan:7ab82abcad9ede847c42c01d2a4f4c2c18877e6f,yocto-1.4.2-64-g7ab82ab,1:11:50,10:30.01,1:11:48,4:16.69,0:33.99,0:18.03,0:01.94,25775640,4858692
fedora19,dylan:7ab82abcad9ede847c42c01d2a4f4c2c18877e6f,yocto-1.4.2-64-g7ab82ab,1:11:51,10:25.89,1:11:56,4:42.52,0:34.19,0:17.97,0:01.94,25776076,4858728
</tab>

Latest revision as of 14:17, 28 January 2019

Build time tracking

Script used for running the builds:

  • Before morty: poky/scripts/contrib/build-perf-test.sh
  • After morty: poky/scripts/oe-build-perf-test

Two identical test systems are used for the results, with all updates available installed. Extra packages installed (besides what's by the default in the distro) are the ones in the Quick Start guide.

Configuration of the GDC Setup 2.1 - Current master

  • Ubuntu 15.10 (Wily Werewolf)" --> 4.2.0-16-generic
  • Fedora release 23 (Twenty Three) --> 4.7.10-100.fc23.x86_64
  • HW configuration: Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz, 16GB RAM, 1 x 600 GB SDD, 1 x 2 TB HDD

All system/distro settings are distro's defaults, that includes:

- FS mount options: ext4 rw,relatime,data=ordered

- IO scheduler: cfq and CPU governer: ondemand

local.conf it's the default one (the script doesn't touch it except for changing DL_DIR if necessary).

It however exports these in the enviroment:

BB_NUMBER_THREADS = "8"
PARALLEL_MAKE = "-j 8"
MACHINE = "qemux86"

FAQ:

  • Q: Where is 1.5_M2? It's there but it's called: 1.5_M1.final-412-geaa5df3 The M2 build wasn't released hence no git tag
  • Q: What's with the different number of RCs? See Yocto_Project_Release_Process#Milestone_Releases
  • Q: Why are there more results for some commits? The script is ran from a cron job multiple times a day, sometimes master changes daily sometimes it doesn't, hence more results for one commit (ie weekends)


Daily Test Results

Build performance test suite is run multiple times per day. Latest test reports for master branch can found here:

Milestone Test results

Guadalajara Setup from 2.1 M4 to actual master

Old Test results

Milestone test results from the retired Romania Setup (Yocto 1.6 – 2.1) can be found from here:

Raw test data from the retired Romania test setup has been moved to

Configuration for the Romania Setup 1.6 - 2.1:

  • Ubuntu 12.04 (uname -nr: ubuntu12 3.8.0-31-generic) and
  • Fedora 19 (uname -nr: fedora19 3.11.3-201.fc19.x86_64)
  • HW configuration: SandyBridge i7-2600 CPU @ 3.40GHz (4 cores/8 threads), 8GB RAM, 1 x 500 GB HDD