Possible API for vector operations: did you seen ForwardCompatible Arhitecture?
Vladimir Ivanov
vladimir.x.ivanov at oracle.com
Fri Sep 16 10:35:15 UTC 2016
Lev,
There are scenarios when fixed-width or variable-width vectors are more
convenient and Vector API sketch [1] nicely generalizes both of them.
Overall, the idea you refer to is not new. Though x86 & ARM have
fixed-width vector extensions, variable-width vector extensions have
been present for a long time in vector machines (e.g, long vectors in Cray).
Nowadays, ARMv8-A SVE [2] features vector-length agnostic (VLA)
programming model and RISC-V [3] chose variable width vectors as well.
There's a nice comparison of different approaches [4] including SIMT & VT:
"Exploring the Tradeoffs between Programmability and Efficiency in
Data-Parallel Accelerators"
Best regards,
Vladimir Ivanov
[1] http://cr.openjdk.java.net/~jrose/arrays/vector/Vector.java
[2]
https://community.arm.com/groups/processors/blog/2016/08/22/technology-update-the-scalable-vector-extension-sve-for-the-armv8-a-architecture
[3] https://en.wikipedia.org/wiki/RISC-V
[4] http://cseweb.ucsd.edu/~marora/cse290/sp11/papers/batten2011.pdf
On 9/15/16 5:41 PM, Lev Serebryakov wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA512
>
>
> I've watched Ian Graves' talk
> (https://www.youtube.com/watch?v=Z2XgO1H6xPM) about all these problems
> how to express vector operations in Java platform-agnostic (different
> length of vectors, for example).
>
> And one thing jump to my mind: here is proposal of new ISA from Agner
> Fog (very well-known expert at x86 platform and all x86
> implementations). And this ISA has very elegant solution for forward-
> and backward- compatible vector operations, where native vector length
> could be different from chip to chip, but same binary code will use
> given vector unit effectively without additional branches, checks, etc.
>
> I don't say, that Java Vector API should mimic some "hardware"
> architecture, but this idea about abstracting-out vector length is
> very elegant and could be useful.
>
> Latest version of ISA:
> http://www.agner.org/optimize/instructionset.pdf, looks at paragraphs
> 2.4-2.6
>
> - --
> // Black Lion AKA Lev Serebryakov
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v2
>
> iQJ8BAEBCgBmBQJX2rM1XxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
> ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXRGOTZEMUNBMEI1RjQzMThCNjc0QjMzMEFF
> QUIwM0M1OEJGREM0NzhGAAoJEOqwPFi/3EePFwUQAIPbdBQkFvi7v0SV8jlwOGM+
> 24f4zn7HoxseuUaYkcGKs+oCAND8JsRCorswd0o9GI/uVQyXFB8FI9qHWaFzoJ11
> guFwXsVySX2NVTx+/6Bg2DMaZDPoxLGOr8zP1s2MvjJy4M4IhB/+bp2O7CDVGOTX
> CN2innAcPqC32XqXAO8t9nHtKlihuqKwZ0GAdMB02vWuoEsgarZyd59DE5Q5IgTT
> KoP2iiqhfEcMRj2zOs9Iqe/MF8KCeDAyUV2InwiJ3ul4g/o+TMbjiGNHl0W6wpg2
> iLHnhW5jGOG92237SwoXAkt2PE9aViXBRjjCSLkLnudFIk23HXNotg6gw2VgYExb
> UdKlieVJhno9BHEq/hi0WXgnb9P7Ri6VrBoelkRjR7sSNuf6qFWmztEH0n++s/ls
> b8wmAePb7JVQ1DbOSYOg4QxBwE7kMFUNhIRDJan6lYNljANzwNVlRNyzFdbnjb3a
> lEyqkfDrSPuDYLQIWmxm9dKBg/Q0rc3NNV79lRCCRu5e/EnVMjF5K8WEDQn2XKtN
> I1dEFlzOBJ3fZ7/wt5tI/GbQRtzOuQrMBG+dK08k2y6Fg5WgaXFAUjOCGqVVfbyS
> XClRaegPnAMKo1+wSYHzXhtrHK1OpNbzgmt8DjaevmtXrBa7eDBGPjn9H8ZM50qQ
> tBQpP4PHng9qYul+MbzJ
> =ihHI
> -----END PGP SIGNATURE-----
>
More information about the panama-dev
mailing list