Hi Derek,
I figure out a new solution for –hash cache as below. Please try it again.
https://github.com/shijunjing/edk2/tree/hashcache_v2
It is based on latest edk2 master branch, and what you need porting are below files. Let me know if you need me to create a patch based on edk2-stable201908.
$ git status
On branch hashcache_v2
$ git show HEAD --name-only
BaseTools/Conf/build_rule.template
BaseTools/Conf/tools_def.template
BaseTools/Source/Python/AutoGen/AutoGenWorker.py
BaseTools/Source/Python/AutoGen/DataPipe.py
BaseTools/Source/Python/AutoGen/GenMake.py
BaseTools/Source/Python/AutoGen/IncludesAutoGen.py
BaseTools/Source/Python/AutoGen/ModuleAutoGen.py
BaseTools/Source/Python/AutoGen/WorkspaceAutoGen.py
BaseTools/Source/Python/Common/GlobalData.py
BaseTools/Source/Python/build/build.py
Thanks
Steven Shi
Intel\SSG\SFE\FIE Firmware Infrastructure
Hi Derek,
Thank you for the data. I will continue to enhance the –hash performance, and will let you know after I figure out new solution.
Thanks
Steven Shi
Intel\SSG\SFE\FIE Firmware Infrastructure
From: Lin, Derek (HPS SW) [mailto:derek.lin2@hpe.com]
Sent: Friday, September 27, 2019 3:57 PM
To: Shi, Steven <steven.shi@intel.com>;
devel@edk2.groups.io
Subject: Re: [edk2-devel] BaseTools --hash malfunction after migrate from stable201905 to stable201908
Hi Steven,
Thanks for the fix!
I've tried your patch with a minor fix as attached.
1 2 3 4
Build Duration: 00:05:51 00:03:47 00:05:15 00:04:31
AutoGen Duration: 00:03:32 00:03:08 00:03:14 00:03:16
Make Duration: 00:01:50 00:00:16 00:01:29 00:00:50
GenFds Duration: 00:00:30 00:00:22 00:00:31 00:00:23
1: clean build with patch and --hash
2: incremental build
3. clean build without patch and without --hash
4. incremental build
BTW, this data cannot compare with previous data I provided because they are built in different environment.
In general, the result is as you said that it fix --hash functionality, but not as quick as before.
Also the cost of --hash in clean build is increased.