[foreign-memaccess] RFR 8219852: Create a set of standard benchmarks
Maurizio Cimadamore
maurizio.cimadamore at oracle.com
Thu Jan 9 23:56:38 UTC 2020
And here's a new revision - I realized that I was not using the BB API
correctly and was not multiplying the index of the getInt by the carrier
size.
http://cr.openjdk.java.net/~mcimadamore/panama/8219852_part2_v3/
Maurizio
On 09/01/2020 21:31, Maurizio Cimadamore wrote:
> I have uploaded a new revision of the benchmark. I've now changed both
> LoopOverConstant and LoopOverNonConstant to use int instead of byte as
> a carrier, as the byte case is specialized in the BB API (bound check
> is intrinsified), so I think int is a more representative and complex
> case.
>
> I also added baseline cases for unsafe in the LoopOverNonConstant as
> well.
>
> http://cr.openjdk.java.net/~mcimadamore/panama/8219852_part2_v2/
>
> Maurizio
>
> On 09/01/2020 17:41, Maurizio Cimadamore wrote:
>> Here's the benchmark which tests constant segments.
>>
>> http://cr.openjdk.java.net/~mcimadamore/panama/8219852_part2/
>>
>> I've also tweaked your benchmark to test both loop case and single
>> access case. To do that, I slightly changed the benchmark so that the
>> benchmark state keeps track of the address, rather than the segment
>> (to avoid calls to baseAddress() - which is not there in the other
>> benchmark).
>>
>> Maurizio
>>
>> On 09/01/2020 15:37, Maurizio Cimadamore wrote:
>>> Looks good!
>>>
>>> Maurizio
>>>
>>> On 09/01/2020 15:21, Jorn Vernee wrote:
>>>> On 09/01/2020 15:58, Maurizio Cimadamore wrote:
>>>>> Looks good and works on my machine.
>>>>>
>>>>> I'd suggest a couple of changes:
>>>>>
>>>>> * benchmarks are java/foreign, shouldn't they be
>>>>> jdk.incubator.foreign, for consistency with module/package name?
>>>> Good point. (I copied what I had from a while back before we
>>>> switched to the incubator module)
>>>>>
>>>>> * Hoisting seems general as a name - I think what you want to test
>>>>> here is hoisting when segment is non-final, non-static variable -
>>>>> I have a similar benchmark for true constant segments that I'd
>>>>> like to upload, so we need slightly more precise names :-)
>>>>
>>>> Could do LoopOverNonConstant?
>>>>
>>>> Updated webrev:
>>>> http://cr.openjdk.java.net/~jvernee/panama/webrevs/8219852/webrev.01/
>>>>
>>>> Jorn
>>>>
>>>>>
>>>>> Cheers
>>>>> Maurizio
>>>>>
>>>>> On 09/01/2020 14:32, Jorn Vernee wrote:
>>>>>> make test TEST="micro:java.foreign"
>>>>>> MICRO="VM_OPTIONS=--add-modules jdk.incubator.foreign"
More information about the panama-dev
mailing list