From: Laszlo Ersek <lersek@redhat.com>
To: "Gao, Liming" <liming.gao@intel.com>,
"edk2-devel@lists.01.org" <edk2-devel@lists.01.org>
Cc: "Kinney, Michael D" <michael.d.kinney@intel.com>
Subject: Re: [edk2-staging/BaseToolsOpt]: Add new branch BaseToolsOpt
Date: Wed, 31 May 2017 13:21:29 +0200 [thread overview]
Message-ID: <92b5bac9-cc46-4048-ad06-57787e87eedf@redhat.com> (raw)
In-Reply-To: <4A89E2EF3DFEDB4C8BFDE51014F606A14D742AB6@shsmsx102.ccr.corp.intel.com>
On 05/31/17 06:57, Gao, Liming wrote:
> Hi All,
> I would like to add new branch BaseToolsOpt in edk2-staging for BaseTools build performance optimization. Here is its Readme.MD. Please help review.
>
> Readme.MD:
> This branch is used to optimize BaseTools build performance. It bases on edk2 repo UDK2017 branch.
>
> The branch owner:
> Gao, Liming <liming.gao@intel.com>
> Zhu, Yonghong <yonghong.zhu@intel.com>
>
> ## Feature Introduction
> BaseTools supports more and more features. They will take more build time. To reduce build overhead, some points have been
> identified to be optimized. POC code will be added in this branch for evaluation.
> 1) Enable the multiple thread in GenFds phase.
> 2) Support to merge multiple drivers into one. It should save the link time. But, it doesn't save much in the multiple build.
> Besides, this feature can save the image size when the image is not compressed, such as PEI images.
> 3) Reduce the extra copy actions in build process.
> 4) Analyze cProfile data and enhance the parser logic. https://bugzilla.tianocore.org/show_bug.cgi?id=42
>
> ## Timeline
> Target for 2017 Q3
>
> ### NOTES
> Most changes in this branch are BaseTools. To apply them, user needs to run BaseTools
> from sources. In Linux, BaseTools run from source. In Windows, BaseTools can run from source. And, Reconfig option is also
> required to apply new config settings in BaseTools\Conf. The step is like below:
> 1. enter into edk2
> 2. set PYTHON_HOME=C:\Python27
> 3. type edksetup.bat --nt32 Reconfig
> 4. nmake -f BaseTools\Makefile
> 5. type build command to build platform.
This looks very valuable to me.
Another spot where "build" spends quite a bit of time is the initial
metadata parsing. Perhaps there are some gains to be made there. I guess
the profile data referenced under point (4) above, and in BZ#42, will
help analyze that step.
Thanks!
Laszlo
next prev parent reply other threads:[~2017-05-31 11:20 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-05-31 4:57 [edk2-staging/BaseToolsOpt]: Add new branch BaseToolsOpt Gao, Liming
2017-05-31 11:21 ` Laszlo Ersek [this message]
2017-06-01 8:56 ` Gao, Liming
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-list 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=92b5bac9-cc46-4048-ad06-57787e87eedf@redhat.com \
--to=devel@edk2.groups.io \
/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