Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cross build debug and split drivers #2033

Merged
merged 2 commits into from
Oct 5, 2017
Merged

Cross build debug and split drivers #2033

merged 2 commits into from
Oct 5, 2017

Conversation

r2d4
Copy link
Contributor

@r2d4 r2d4 commented Oct 4, 2017

This will help us figure out why the cross builds suddenly are taking so long

Also fixes #2030 by splitting out the drivers from the cross rule

@k8s-ci-robot k8s-ci-robot added cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/S Denotes a PR that changes 10-29 lines, ignoring generated files. labels Oct 4, 2017
@codecov-io
Copy link

codecov-io commented Oct 4, 2017

Codecov Report

Merging #2033 into master will increase coverage by 0.03%.
The diff coverage is n/a.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #2033      +/-   ##
==========================================
+ Coverage   28.59%   28.62%   +0.03%     
==========================================
  Files          80       80              
  Lines        5243     5243              
==========================================
+ Hits         1499     1501       +2     
+ Misses       3551     3550       -1     
+ Partials      193      192       -1
Impacted Files Coverage Δ
pkg/util/kubeconfig/config.go 48.29% <0%> (+1.36%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 8dbe63d...b7ec12a. Read the comment docs.

@r2d4
Copy link
Contributor Author

r2d4 commented Oct 5, 2017

Results from the first run

**cross**
real	65m23.803s
user	0m18.712s
sys	0m1.812s

**e2e-cross**
real	2m22.322s
user	5m12.224s
sys	0m23.304s

**hyperkit**
real	4m37.194s
user	0m7.188s
sys	0m1.452s

**kvm2**
real	0m54.967s
user	2m0.928s
sys	0m11.108s

**localkube-image**
real	0m52.210s
user	0m11.840s
sys	0m2.880s

**localkube-dind**
real	1m36.258s
user	0m11.972s
sys	0m2.660s

**localkube-dind-devshell**
real	0m25.418s
user	0m12.032s
sys	0m2.780s

@r2d4
Copy link
Contributor Author

r2d4 commented Oct 5, 2017

Clearly, the cross build shouldn't take an hour. I'm going to add a commit that splits these up to see which binary is taking the majority of the time.

@k8s-ci-robot k8s-ci-robot added size/M Denotes a PR that changes 30-99 lines, ignoring generated files. and removed size/S Denotes a PR that changes 10-29 lines, ignoring generated files. labels Oct 5, 2017
@r2d4
Copy link
Contributor Author

r2d4 commented Oct 5, 2017

Second run - looks like localkube is the culprit

**localkube-image**
real	40m22.878s
user	0m1.264s
sys	0m0.840s

**localkube-dind-image**
real	1m10.984s
user	0m1.240s
sys	0m0.808s

**localkube-dind-image-devshell**

real	0m7.050s
user	0m1.164s
sys	0m0.824s

**minikube-windows-amd64.exe**
real	8m36.257s
user	0m17.644s
sys	0m1.752s

**minikube-darwin-amd64**
real	8m38.824s
user	0m10.940s
sys	0m1.480s

**minikube-linux-amd64**
real	8m29.699s
user	0m11.008s
sys	0m1.452s

**e2e-cross**
real	2m22.522s
user	5m10.292s
sys	0m24.056s

**hyperkit**

real	4m37.339s
user	0m7.228s
sys	0m1.408s

**kvm2**
real	0m55.313s
user	2m0.452s
sys	0m10.872s

@r2d4
Copy link
Contributor Author

r2d4 commented Oct 5, 2017

Running the makefile rules in parallel gives us about a 14-15x speedup

Well in my unscientific benchmark, I tested j=8,16,32

j = 8
real    5m22.462s
user    7m14.392s
sys    0m37.332s

j = 16
real    5m20.009s
user    7m20.228s
sys    0m37.168s

j = 32
real    5m20.038s
user    7m20.184s
sys    0m36.808s

Copy link
Contributor

@aaron-prindle aaron-prindle left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Nice!

@r2d4 r2d4 merged commit 96fd28e into kubernetes:master Oct 5, 2017
@r2d4 r2d4 deleted the xbuild branch October 5, 2017 20:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/M Denotes a PR that changes 30-99 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Cross-platform build broken?
4 participants