haskell – 是否有在GPU上运行的函数式编程语言?

栏目: 编程语言 · 发布时间: 5年前

内容简介:翻译自:https://stackoverflow.com/questions/21583480/are-there-functional-programming-languages-that-run-on-the-gpu

使用传统的顺序缩减方法,下面的图表减少为:

(+ (+ 1 2) (+ 3 4)) ->
(+ 3 (+ 3 4)) ->
(+ 3 7) ->
10

但是,图形缩减本质上是平行的.相反,人们可以将其减少为:

(+ (+ 1 2) (+ 3 4)) ->
(+ 3 7) ->
10

据我所知,每种函数式编程语言都使用第一种方法.我相信这主要是因为在CPU上,调度线程过度补偿了并行减少的好处.不过,最近我们开始使用GPU而不是CPU用于并行应用程序.如果一种语言完全在GPU上运行,那么这些通信成本就会消失.

是否有功能语言利用这个想法?

是什么让你想到GPU调度会不会过分包含这些好处?

实际上,GPU中使用的那种并行性要难以安排:它是 SIMD 并行性,即整批流处理器一次完全基本相同,除了每一个都压碎不同的数字.因此,您不仅需要安排子任务,还需要保持它们的同步.自动执行一般计算几乎是不可能的.

为特定任务执行此操作非常好,并已嵌入到函数式语言中;看看 Accelerate project .

翻译自:https://stackoverflow.com/questions/21583480/are-there-functional-programming-languages-that-run-on-the-gpu


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Data Structures and Algorithms

Data Structures and Algorithms

Alfred V. Aho、Jeffrey D. Ullman、John E. Hopcroft / Addison Wesley / 1983-1-11 / USD 74.20

The authors' treatment of data structures in Data Structures and Algorithms is unified by an informal notion of "abstract data types," allowing readers to compare different implementations of the same......一起来看看 《Data Structures and Algorithms》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

随机密码生成器
随机密码生成器

多种字符组合密码

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具