Running micro benchmark results in 'Error: Unable to access jarfile'
Claes Redestad
claes.redestad at oracle.com
Tue Feb 19 22:04:45 UTC 2019
Looks good.
I filed https://bugs.openjdk.java.net/browse/JDK-8219394 for this bug.
Thanks!
/Claes
On 2019-02-19 18:04, Erik Joelsson wrote:
> The problem with the jarfile looks to be a missing $(FIXPATH) when
> running microbenchmarks. The java process is simply unable to understand
> cygwin paths. Does this patch solve the issue for you, Jorn?
>
> diff -r 7c17199fa37d make/RunTests.gmk
> --- a/make/RunTests.gmk
> +++ b/make/RunTests.gmk
> @@ -690,7 +690,7 @@
> $$(call LogWarn, Running test '$$($1_TEST)')
> $$(call MakeDir, $$($1_TEST_RESULTS_DIR) $$($1_TEST_SUPPORT_DIR))
> $$(call ExecuteWithLog, $$($1_TEST_SUPPORT_DIR)/micro, \
> - $$($1_MICRO_TEST_JDK)/bin/java $$($1_MICRO_JAVA_OPTIONS) -jar
> $$($1_MICRO_BENCHMARKS_JAR) \
> + $$(FIXPATH) $$($1_MICRO_TEST_JDK)/bin/java
> $$($1_MICRO_JAVA_OPTIONS) -jar $$($1_MICRO_BENCHMARKS_JAR) \
> $$($1_MICRO_ITER) $$($1_MICRO_FORK) $$($1_MICRO_TIME) \
> $$($1_MICRO_WARMUP_ITER) $$($1_MICRO_WARMUP_TIME) \
> $$($1_MICRO_VM_OPTIONS) $$($1_MICRO_BASIC_OPTIONS)
> $$(MICRO_OPTIONS) \
>
> /Erik
>
> On 2019-02-18 14:20, Claes Redestad wrote:
>> <moved to build-dev@ from jdk-dev at ..., original thread here:
>> http://mail.openjdk.java.net/pipermail/jdk-dev/2019-February/002624.html>
>>
>> Hi,
>>
>> On 2019-02-18 22:34, Jorn Vernee wrote:
>>> Hi Claes,
>>>
>>>> 1. Does running make test rather than make test-only work?
>>>
>>> No. Same error there. Sorry, I tried that first and then re-ran with
>>> `test-only`. I also tried with a clean build FWIW.
>>>
>>>> 2. Can you run the benchmarks.jar directly?
>>>
>>> Yes, this is working, thanks. This way I can also pass extra flags to
>>> JMH, which is nice :)
>>>
>>> ---
>>>
>>> FWIW, I also had some problems when running configure.
>>>
>>> 1.) I did not get a warning when I was missing --with-jmh for
>>> configure, although it looks like there is supposed to be one
>>> (without --with-jmh I got the same access error, but the
>>> benchmarks.jar did not exist).
>>
>> --with-jmh is an optional configure flag, not sure what we could do to
>> warn here. Perhaps there's some way to ensure certain make targets
>> depend on the configure having been run with the necessary prerequistes.
>> Sounds like a fine enhancement.
>>
>>> 2.) My path to the --with-jmh folder had spaces in it, which was
>>> causing an error in make/autoconf/lib-tests.m4 on line 76 [1].
>>
>> Sounds like a bug.
>>
>>>
>>> But those both had obvious workarounds.
>>>
>>> ---
>>>
>>> I was hoping to use the framework for Panama, so I'd likely have some
>>> native library as dependency of the benchmark. Is there currently any
>>> support for building (native) dependencies automatically?
>>
>> There should be support in the build system _somewhere_, but adding a
>> native library to a microbenchmark might still be a non-trivial
>> enhancement to the current implementation. It'd be a great addition,
>> though. I might have time to help out sometime soon, but I've got my
>> hands full right now. Perhaps someone else on this list could advice?
>>
>> Thanks!
>>
>> /Claes
>>
>>>
>>> Thanks,
>>> Jorn
>>>
>>> [1] :
>>> http://hg.openjdk.java.net/jdk/jdk/file/bec6c8739833/make/autoconf/lib-tests.m4#l76
>>>
More information about the build-dev
mailing list