What is stream programming? (转载)

A stream is an array whose elements can be operated on in parallel, similar to SIMD computing. In stream programming, data is gathered from memory into a stream, operated on in the stream, and then scattered from the stream back into memory. Memory latency is thus minimized by accessing the data in chunks, similar in effect to caching.

 

This style of computing was popularized by Stanford’s Merrimac project, which featured the Brook programming language (an extension to C, actually). At least two start-ups have come from this work: Stream Processors, which will develop signal processors, and PeakStream, which has just released a software engineering tool known as “Platform” intended to simplify development on co-processors.

 

PeakStream’s Platform is a combination virtual machine (no kernel modification) and library (a standard C++ API). The VM includes a scheduler that directs operations to the best runtime system, whether it be a CPU, a GPU, or even the Cell processor. The library should be easy for anyone familiar with products like MATLAB. Ultimately the goal with Platform is that technical computing customers will obtain much better performance in so-called “heterogeneous” systems.

 

In a way, the combination of PeakStream + GPU resembles ClearSpeed’s own approach, though Advance uses standard BLAS rather than a proprietary library. It is interesting to note that programming solutions for both co-processors and multicore CPUs have appeared recently. Intel is now offering their Threading Building Blocks library and Mercury has released their MultiCore Plus SDK. The only thing left is better vendor-supported tools for distributed-memory programming.

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值