2012-06-10 3 views

ответ

9

Начиная с JellyBean 4.2 существует прямая интеграция с GPU для renderscript. См. this и this.

+0

Более подробную информацию можно найти здесь: http://android-developers.blogspot.com/2013/01/evolution-of-renderscript-performance.html – keaukraine

+0

Конкретно, в Android 4.2 новая концепция FilterScript была представил. FilterScripts более ограничены RenderScripts и могут работать на GPU. Однако, независимо от того, будет ли он фактически выполняться на графическом процессоре, будет решена поддержка поставщика. –

3

Я не могу подтвердить официальную документацию для Google, но я работаю с RenderScript весь день каждый день, и каждый раз, когда я его запускаю, я вижу, что отчет logcat загружает драйверы для графических чипов на моих устройствах, в первую очередь Tegra 2. Google действительно отставал в документировании RenderScript, и я бы не удивился, если бы они просто не исправили это упущение в своей дискуссии.

+0

Спасибо, могу я спросить, над чем вы работаете (просто любопытство)? – fhucho

+1

У нас есть Motorola Xoom (Tegra 2), Samsung Galaxy Tab 7.0+ (Mali-400MP), Galaxy Nexus (SGX540) и Galaxy S (Snapdragon), на которых мы тестируем код RenderScript, хотя Xoom - это то, что я больше всего часто проверяют, потому что это, как правило, ограничивающий фактор из-за некоторых проблем с sprite с Tegra 2. Если вы имели в виду проект, это графический движок общего назначения для некоторых наших проектов в доме. – Jared

+0

Спасибо, удачи в проекте! – fhucho

1

Дизайн RenderScript так, что он работает на графическом процессоре. Это была основная цель добавления нового языка. Я предполагаю, что есть устройства, где он работает на процессоре из-за отсутствия поддержки, но на большинстве устройств он работает на GPU.

+0

Это неверно. Начиная с Ice Cream Sandwich и Jelly Bean, Renderscript работает только на процессоре. Google не добавил поддержку GPU. Но да, намерение состоит в том, чтобы выполнить код Renderscript на GPU и CPU. – codetwiddler

1

Я думаю, это может зависеть от того, выполняете ли вы графику или вычисляете операции. Графические операции, скорее всего, будут выполнены на графическом процессоре, но вычислительные операции не будут, насколько я понимаю.

Когда вы используете конструкцию forEach, вычисление будет выполняться в нескольких потоках на ЦПУ, а не на графическом процессоре (это можно увидеть в исходном коде ICS). В будущих версиях это может измениться (см. https://events.linuxfoundation.org/slides/2011/lfcs/lfcs2011_llvm_liao.pdf), но я не видел никаких объявлений.

2

В настоящее время вычислителя сторона Renderscript будет работать только на CPU:

В настоящем время, вычислить Renderscripts может воспользоваться только ядрами процессора, но в будущем, они потенциально могут работать на других типах процессоров таких как графические процессоры и DSP.

Взятый с Renderscript dev guide.

Графическая сторона Renderscript находится поверх OpenGL ES, поэтому шейдеры будут работать на графическом процессоре.

ARM's Mali-T604 GPU предоставит вам цель для вычислительной стороны Renderscript (в будущем выпуске Android?) (См. ARM Blog entry).

1

В настоящее время вычисляется только графический процессор Nexus 10 seems to support.

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