Android и c ++ возвращают значения из JNI в java и хиты производительности, работающие с массивами - PullRequest
1 голос
/ 29 декабря 2011

У меня есть код, который я конвертирую из java в c ++ ради повышения скорости.Все, что я смотрю на преобразование, основано на матричной или векторной арифметике, и поэтому мне было интересно, если я возвращаю значения обратно в Java, если я отрицаю преимущества всего нативного кода, возвращая мои значения обратно в виде примитивных массивов с плавающей точкой.То, как все написано в Java, где я должен подключить значения обратно, требует, чтобы я извлек все из массива, возвращающегося из jni, и вставил его обратно в отдельные поплавки.Это не проблема, но когда все будет сказано и сделано, я убью свою полученную производительность, извлекая значения и сохраняя их в отдельных числах.Я мог бы пройти и изменить все, чтобы использовать массивы, но для простоты программирования Id, скорее оставив весь существующий код на месте, где это возможно.

Итак, я хотел бы знать, принимаете ли вы снижение производительности, когда вы имеете дело с извлечением значений из массивов, возвращаемых из методов JNI в c ++, и если да, то каков будет размер попадания.

...