在Dart / Flutter中使用GPU,而不是图形

时间:2019-03-25 08:09:17

标签: multithreading dart flutter gpu

是的,好的人,

如果我可以“使用”(“调用”,“线程”?),我一直在徘徊

带有Dart和Flutter的GPU。

documentation状态

  

GPU线程从Flutter Engine执行图形代码。这个   线程获取层树并通过与GPU对话来显示它   (图形处理单元)。您无法直接访问GPU线程   或其数据,但是如果该线程运行缓慢,则是由于某种原因   您已经在Dart代码中完成了操作。图形库Skia在此之上运行   线程,有时也称为光栅化程序线程。[...]更多   可以在Flutter.dev中找到有关分析GPU线程的信息。   (不会增加多少)

但是如果我不想将其用于图形怎么办?

例如,假设我要使用Monte carlo method, 进行计算

我可以打电话或向GPU发送线程吗?

感谢您的关注

1 个答案:

答案 0 :(得分:4)

“ GPU线程”是一个令人困惑的名称,因此我们将其重命名为“光栅线程”。该线程实际上在CPU内核上运行,其功能是栅格化要发送到GPU的图形。许多人认为线程正在GPU本身上运行,但事实并非如此。因此,重命名。

(我们最近重新命名了它。您最初的问题当时使用了正确的术语。)

例如,您无法编译要在GPU(例如CUDA)上运行的Dart代码,例如,with C++的实现方式。

一种选择是用C ++之类的代码编写Monte Carlo例程,然后使用Dart的FFI从Dart代码中调用该例程。这将同步运行,并尽可能快地使C ++代码运行。