BLAS and Vector API

Maurizio Cimadamore maurizio.cimadamore at oracle.com
Tue Jan 5 11:14:12 UTC 2021


On 05/01/2021 00:56, Samuel Audet wrote:
> Hi, Maurizio,
>
> On 1/5/21 1:22 AM, Maurizio Cimadamore wrote:
>>
>> On 04/01/2021 14:52, Samuel Audet wrote:
>>> Hi, Ludovic,
>>>
>>> On 1/4/21 10:48 PM, Ludovic Henry wrote:
>>>> I’ll also explore using the Foreign Linker API to wrap the OpenBLAS 
>>>> library without going through JNI. I’m curious whether it’s going 
>>>> to lead to performance improvements.
>>>
>>> No, not yet, it won't, since that still uses JNI:
>>> https://urldefense.com/v3/__https://github.com/microsoft/onnxruntime/pull/4329*issuecomment-673848183__;Iw!!GqivPVa7Brio!JCrsAOkabZFThFCF13q2PkJSZmSiDf-RjGxfF0lDhGtmau_Zvo_cujZeQ6nqjchAEcVh-1c$ 
>>
>>
>> Where did you get this information from? The comment you quote shows 
>> my reply and then you somehow (erroneously) inferring that the linker 
>> API is based on JNI.
>>
>> The Foreign Linker API support has very little to do with JNI 
>> support. Of course, since some of the stuff the VM has to do to go 
>> from Java to native are the same, performances might not be too 
>> different (unless state transitions are removed, which is possible 
>> with the linker API).
>
> OpenJDK hasn't been providing a lot of updates about the status of the 
> various Panama APIs for a year or so now, so I can only assume that 
> things had not changed. Also, since you're not replying to messages 
> containing information about what you said of the state of things in 
> the past (that the foreign API was using JNI, I can dig up the 
> specific message if you want), I simply assumed that things had not 
> changed! Sorry about that
>
> I'll say it again: Keeping all this information "internal" isn't 
> helping the community. I understand that you probably don't have any 
> say in this, that it's all about policies at Oracle, so please don't 
> take it personally. As usual, thanks for updating us with the 
> information you can provide.

I think there has been plenty of information available during 2020:

https://inside.java/tag/panama

There are public talks linked in the page above - unfortunately, they 
only cover the memory access part - since that's where we were back in 
February (when we still could do conferences - or attend them :-) ).

Jorn and I recorded a podcast (also linked above) last December, also 
covering both APIs (it's in two parts).

Several writeups on the current status of the APIs (both memory access 
AND linker) have been live on github for the past few months. Jorn also 
wrote a more technical writeup on the status of the VM intrinsics for 
downcall support, which helped the review process quite a bit.

Speaking of reviews, both PRs for memory access and linker API are 
public and contain tons of info as well:

https://github.com/openjdk/jdk/pull/548

https://git.openjdk.java.net/jdk/pull/634

If you follow the links, you will find comprehensive JEP documents, CSRs 
- all info has been available to see (as for any other changes to the 
Java platform).


Should be enough at least to understand where we are at and where we're 
going?

Cheers
Maurizio



>
> Samuel


More information about the panama-dev mailing list