-
Enhancement
-
Resolution: Fixed
-
P4
-
13
-
None
-
b15
With the new run-test test running framework, we introduced FindTests.gmk, which among other things, parses all the jtreg TEST.groups files to generate make targets for each group. While this is very nice, the current implementation in FindTests.gmk adds significant time to a simple "do nothing" make execution.
I have experimented with a different implementation, based on caching the expensive calculations in a makefile that automatically gets re-generated if any of the inputs change.
On my Linux workstation, running the very early make target "buildtools-langtools" with the old and new implementation gives the following times (real time as reported by the time command):
Old: 460-470ms
New (warm cache): 280-285ms
New (cold cache): 370-380ms
So, even with the cache cold, the new implementation is faster, and with the warm cache, 180ms is quite a lot. It can definitely be felt when running interactively in the shell.
I have experimented with a different implementation, based on caching the expensive calculations in a makefile that automatically gets re-generated if any of the inputs change.
On my Linux workstation, running the very early make target "buildtools-langtools" with the old and new implementation gives the following times (real time as reported by the time command):
Old: 460-470ms
New (warm cache): 280-285ms
New (cold cache): 370-380ms
So, even with the cache cold, the new implementation is faster, and with the warm cache, 180ms is quite a lot. It can definitely be felt when running interactively in the shell.
- relates to
-
JDK-8217729 Speed up incremental rerun of "make images"
- Closed
-
JDK-8213736 Build fails with LOG=debug on F28 after JDK-8210958
- Resolved