From: Richard Purdie <richard.purdie@linuxfoundation.org>
To: bitbake-devel@lists.openembedded.org
Subject: [PATCH 00/16] Various performance improvements to parsing
Date: Mon, 16 Sep 2013 22:57:05 +0100 [thread overview]
Message-ID: <1379368625.32201.89.camel@ted> (raw)
This patch series fixes up profiling of the parsing processes and then
uses that to find some performance improvements in parsing speed. What
follows is a quick overview of what each patch is worth using "time".
The data was confirmed in the actual profiles through a reduction in
function calls, this is really just an interesting side by side
comparison of the significance of each change:
real 0m31.700s
user 1m49.140s
sys 0m2.272s
#### Baseline ####
real 0m31.498s
user 1m48.448s
sys 0m2.380s
#### data: Be explicit in data_db check
real 0m31.079s
user 1m47.420s
sys 0m2.400s
#### siggen: Use lookup cache exclusively
real 0m30.890s
user 1m46.684s
sys 0m2.492s
#### data_smart: Improve variable expansion regexp
real 0m30.547s
user 1m44.124s
sys 0m2.292s
#### data_smart: use the expand_cache in VariableParse
real 0m29.750s
user 1m41.240s
sys 0m2.536s
#### data: Use direct iteration, not keys()
real 0m28.610s
user 1m38.096s
sys 0m2.304s
#### data: Cache an list of export variables
real 0m28.718s
user 1m38.080s
sys 0m2.344s
### data_smart: Add explict None checks
real 0m28.726s
user 1m37.924s
sys 0m2.568s
### data_smart: Allow expansion of flags in getVarFlags
real 0m28.947s
user 1m38.564s
sys 0m2.644s
### data_smart: Allow flags to use the expand cache
real 0m29.135s
user 1m38.816s
sys 0m2.280s
### data_smart: Cache the fact a variable accesses another even if its
unset
real 0m28.250s
user 1m36.132s
sys 0m2.340s
### data: Optimise flag exclusion list handling
real 0m28.584s
user 1m36.116s
sys 0m2.376s
### data: Optimise flag lookup in build_dependencies
real 0m26.662s
user 1m28.952s
sys 0m2.296s
### data: Optimise build_dependencies a little
Cheers,
Richard
reply other threads:[~2013-09-16 21:57 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1379368625.32201.89.camel@ted \
--to=richard.purdie@linuxfoundation.org \
--cc=bitbake-devel@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox