2014-02-13 3 views
-5

Мне нужно обработать элементы в большом массиве и из-за проблем с производительностью, я должен сделать это на GPU устройства Android. пожалуйста, дайте идею реализовать это.Выполняет вычисления массивов с использованием GPU android

+0

Поскольку вы отметили этот вопрос 'renderscript', когда вы читали [документацию по RenderScript Compute] (https://developer.android.com/guide/topics/renderscript/compute.html), что вы узнали? Какие * конкретные * вопросы у вас остались после чтения этой документации? – CommonsWare

+0

Благодарим вас за ответ. Основная проблема заключается в том, как передать массив байтов для визуализации скрипта и вернуть обработанный массив. У меня нет большого опыта работы на C, C++. – droidNDK

ответ

1

Пожалуйста, взгляните на http://developer.android.com/guide/topics/renderscript/compute.html. Существуют также некоторые примеры и примеры проектов с использованием RenderScript в Интернете. Обратите внимание, что нет надежного доступа к графическому процессору на Android, поскольку не все устройства Android имеют графические процессоры, способные выполнять вычислительные рабочие нагрузки. RS является предпочтительным методом ускорения параллельной работы.

+0

Спасибо за ответ. Я искал об этом, но я не смог найти помощь обработки массива в сети. – droidNDK

+0

Вам нужно скопировать массив байтов в ячейку, содержащую Element.I8 (значение I8 означает 8-разрядный целочисленный тип со знаком). Вы можете использовать Allocation.copyFrom/Allocation.copyTo для перемещения данных вперед и назад. –

+0

есть. как я могу получить доступ к массиву из выделения, в сценарии рендеринга? – droidNDK

Смежные вопросы