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 From: Shi, Steven Sent: Sunday, September 29, 2019 10:32 AM To: Lin, Derek (HPS SW) ; devel@edk2.groups.io Subject: RE: [edk2-devel] BaseTools --hash malfunction after migrate from stable201905 to stable201908 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 >; 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.