Описание тега project-panama
Project Panama - это проект OpenJDK, целью которого является создание нового способа взаимодействия с Java в нативном режиме.
0
ответов
Не могу использовать классы jdk.incubator.vector в BigInteger
Я пытаюсь использовать Java Vector API из панамского проекта, чтобы добавить SIMD-код в java.math.BigInteger учебный класс. Я клонировал панамское репо и создал JDK: hg clone http://hg.openjdk.java.net/panama/dev/ cd dev/ hg checkout vectorIntrinsic…
03 мар '19 в 20:01
0
ответов
Как получить доступ к pthread api с помощью проекта Панама
Я экспериментировал с ранними сборками проекта Панама и успешно запустил некоторые примеры. К сожалению, я не могу взаимодействовать с нативным API pthread из-за внутренних исключений. Вот что я попробовал: jextract \ --exclude-symbols "PTHREAD_CREA…
09 июн '19 в 21:57
1
ответ
Неустранимая ошибка "файл 'stdlib.h' не найден" при запуске jextract с привязкой C для проекта Rust.
Я хочу использовать Project Panama jextractинструмент для создания привязки Java к библиотеке Rust. При выполнении следующей команды я получаю сообщение об ошибке: jextract -C -x -C c++ -I /Library/Developer/CommandLineTools/usr/include/c++/v1 -t ad…
07 июл '20 в 16:20
0
ответов
Как преобразовать IntBuffer в ByteBuffer без копирования данных
Мой код Scala/Java имеет большие (несколько сотен мегабайт) целочисленные массивы. Я бы отправил их как можно быстрее (без копирования содержимого) из этогоint[] с помощью java.nio. Кроме того, когда я получаю какие-либо данные о моемnio каналы соке…
26 май '20 в 00:39
1
ответ
OpenJDK Panama Vector API jdk.incubator.vector не дает улучшенных результатов для векторного точечного произведения
Я тестирую OpenJDK Panama Vector API jdk.incubator.vector, и я выполнил тесты на экземпляре amazon c5.4xlarge. Но в каждом случае простой развернутый векторный скалярный продукт не выполняет код Vector API. Мой вопрос: почему я не могу повысить прои…
05 май '20 в 14:42
1
ответ
"cstdarg file not found" при запуске jextract на привязке C для проекта Rust
Я пытаюсь получить простую функцию сложения целых чисел, написанную на Rust, работающую с Java Project Panama. Создав привязки с помощьюcbindgen crate, при запуске jextract появляется следующая ошибка: jextract -t org.adder -L . -l adder-java --reco…
06 июл '20 в 19:13
1
ответ
Как получить доступ к C_POINTER в MemoryLayout с помощью Java Panama FFI
Используя предварительный просмотр FFI в JDK 16, у меня есть такой макет памяти: class FfiTest { static GroupLayout layout = MemoryLayout.ofStruct( C_INT.withName("someInt"), MemoryLayout.ofPaddingBits(32), // So the following pointer is aligned at …
19 мар '21 в 13:37
1
ответ
Как сохранить объект-массив в собственной памяти с помощью Java Panama
Я хочу реализовать структуру данных в собственной памяти с помощью API доступа к внешней памяти Project Panama. Для этого мне нужен базовый массив объектов ( Object[]) для записей. Во всех примерах API доступа к внешней памяти MemorySegments использ…
11 июн '21 в 23:27
1
ответ
Java Panama: хранить несколько байтовых массивов в собственной памяти
У меня есть фиксированное количество байтовых массивов ( byte[]) фиксированной длины, которую я хочу сохранить в собственной памяти (а затем получить). Однако я не слишком уверен, как я могу напрямую хранить несколько массивов в MemorySegment. Я зна…
15 июн '21 в 21:36
0
ответов
Репликация внутреннего _mm256_shuffle_epi8 с помощью Java Vector API Shuffle?
Я (в основном для развлечения) пытаюсь написать дайджест-функцию SHA-256 с использованием Java Vector API. Я использую следующую реализацию AVX2 из биткойна в качестве ссылки: https://github.com/bitcoin/bitcoin/blob/7fcf53f7b4524572d1d0c9a5fdc388e87…
25 июн '21 в 21:22
1
ответ
Панама: отступы не предотвращают ложное совместное использование
Я пытаюсь оценить влияние ложного совместного использования на производительность программы. В этом примере: https://github.com/lexburner/JMH-samples/blob/master/src/main/java/org/openjdk/jmh/samples/JMHSample_22_FalseSharing.java , заполнение строк…
21 авг '21 в 20:42
1
ответ
JEP 412: передать массив байтов в куче в собственный код, получив исключение UnsupportedOperationException: не собственный адрес
Все это с новым JDK 17. Я пытаюсь превратить массив байтов в куче в MemorySegment и передать его собственной функции. Я создал простой пример кода, который показывает это: final CLinker cLinker = CLinker.getInstance(); // int strlen(const char *str)…
11 окт '21 в 08:09
1
ответ
Как передать указатель значения через API внешней памяти Java
Я хочу вызвать следующий метод в C: heif_image_handle* handle; heif_context_get_primary_image_handle(ctx, &handle); У меня проблема в том, что у меня нет доступа через C-API к структуре 'heif_image_handle'. Что я пробовал: MemorySegment.allocate…
22 янв '22 в 22:17
0
ответов
JDK 17 - Панама - предотвратить сбой библиотеки [закрыто]
Я перенес родную библиотеку (libheif) на java/javafx. Проблема в том, что иногда библиотека нестабильна и дает сбой. Если это происходит, вся JVM также дает сбой, что также означает сбой приложения, использующего мою библиотеку. Кажется, что есть ра…
30 янв '22 в 18:23
1
ответ
Eclipse Content Assist не предлагает классы jdk.*
Я настроил свой проект для использования Project Panama EA JDK, я могу использовать jdk.incubator.foreign.* вручную, но Content Assist и Quick Fix ничего не предлагают и не исправляют из этого пакета. Есть ли способ настроить Content Assist или что-…
06 фев '22 в 08:20
1
ответ
Шаблоны для эффективного чтения из Java MemorySegment
Я работаю над использованием Java для чтения (потенциально) больших объемов данных из (потенциально) больших файлов - сценарий представляет собой несжатые изображения из формата файла, такого как HEIF. Скорее всего больше 2G. Письмо — это будущая по…
11 ноя '21 в 21:59
1
ответ
Java, панама проекта и как работать с результатом «предложения» Hunspell
Я экспериментирую с Hunspell и взаимодействую с ним с помощью Java Project Panama (сборка 19-panama+1-13 (2022/1/18)). Мне удалось провести начальное тестирование, например, при создании и впоследствии использовать это для проверки орфографии. Тепер…
24 фев '22 в 10:02
1
ответ
Не удается найти библиотеки в панаме проекта на macOs
Я пытаюсь запустить код cpp через Java, используя Project Panama, и получаю сообщение об ошибке, потому что моя библиотека не загружается. СРР-код: // MyRectangle.cpp #include <iostream> #include <cstring> class Rectangle { int width, he…
01 май '22 в 08:33
1
ответ
JDK-18 Внешние функции: как вызывать нестатические функции?
Я играл с материал в JDK-18. Это очень мило. НАМНОГО быстрее, чем JNI. На порядок быстрее. Материал внешней памяти лучше (и, возможно, немного быстрее), чем вещи. Не могу дождаться, когда это отправят. Одна вещь, которую я не могу понять: как исполь…
18 апр '22 в 06:53
0
ответов
Замена CLinker.toCString в Java 18
Java 16, как часть пакета инкубации jdk.incubator.foreign, используемый для предоставления удобного способа преобразования строк Java в строки C произвольного набора символов с использованием MemorySegment CLingker.toCString(String str, Charset cha…
03 апр '22 в 20:24