Подпись метода ядра Renderscript

Я пишу вопрос, в основном ожидая, что Тим Мюррей или Стивен Хайнс увидят и передадут нам некоторые знания.

Начиная с Honeycomb, в Renderscript было немало изменений, начиная с устаревания реального рендеринга и продвижения к общим вычислениям, некоторых прагм и изменений ядра, и из-за них я запутался в том, что является последним "официальным способом" написания ядра.

Существует два основных способа использования Интернета в виде примеров: пост в блоге или презентации ввода-вывода Google:

void root(const uchar4 *v_in, uchar4 *v_out, const void *usrData, uint32_t x, uint32_t y) {

а также

uchar4 __attribute__((kernel)) root(uchar4 v_in, uint32_t x, uint32_t y) {

будучи отличиями от сети вторая подпись вы должны return выходное значение. Также есть варианты, где вы можете использовать другое имя метода (вместо root).

Итак, главный вопрос:

каков последний "правильный" способ определения ядер?

1 ответ

Решение

2-й является предпочтительной подписью. Передача по значению позволяет компилятору оптимизировать работу. Вы можете использовать любое имя для ядра. "root" - это наследие графики, которое всегда вызывало бы ее, чтобы обновить экран.

Параметры координат являются необязательными. Вы можете опустить X & Y, если они вам не нужны.

Другие вопросы по тегам