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

Simple server optimizations #166

Merged
merged 6 commits into from
Dec 5, 2017
Merged

Conversation

qubesuser
Copy link
Contributor

This is a set of optimizations consisting of the changes in the "speed up qvm-ls" branch that don't make architectural or API changes.

The default pool change is particularly impactful since it stops spending 100ms+ with subprocess spawning every time we want to find out what the default pool is.

@codecov
Copy link

codecov bot commented Nov 10, 2017

Codecov Report

Merging #166 into master will increase coverage by 0.11%.
The diff coverage is 76.31%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #166      +/-   ##
==========================================
+ Coverage   53.93%   54.05%   +0.11%     
==========================================
  Files          55       55              
  Lines        8452     8495      +43     
==========================================
+ Hits         4559     4592      +33     
- Misses       3893     3903      +10
Flag Coverage Δ
#unittests 54.05% <76.31%> (+0.11%) ⬆️
Impacted Files Coverage Δ
qubes/vm/mix/net.py 56.14% <ø> (ø) ⬆️
qubes/config.py 100% <ø> (ø) ⬆️
qubes/vm/adminvm.py 72.13% <ø> (ø) ⬆️
qubes/app.py 68.18% <63.41%> (-0.17%) ⬇️
qubes/__init__.py 92.9% <91.42%> (-0.17%) ⬇️

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 682d950...edae7a1. Read the comment docs.

@marmarek
Copy link
Member

Oh, you've already did this. See comments on #165.

@qubesuser qubesuser force-pushed the optimizations branch 4 times, most recently from 7559bb9 to 311b8f2 Compare November 11, 2017 00:57
it's unused and has a netid property with name different than key
that would cause issues in the next commit
currently it takes 100ms+ to determine the default pool every time,
including subprocess spawning (!), which is unacceptable since
finding out the default value of properties should be instantaneous

instead of checking every thin pool to see if the root device is in
it, find and cache the name of the root device thin pool and see if
there is a configured pool with that name
@qubesuser
Copy link
Contributor Author

Finally got the tests to pass...

@marmarek marmarek merged commit edae7a1 into QubesOS:master Dec 5, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants