Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
What's the story with these ads on Slashdot? Check out our new blog post to find out. ×

Comment Re:Ordinary Mortals (Score 1) 40

From "Building Domain Specific Embedded Languages" by Paul Hudak, 1996:

Although generality is good, we might ask what the "ideal" abstraction for a particular application is. In my opinion, it is a programming language that is designed precisely for that application: one in which a person can quickly and effectively develop a complete software system. It is not general at all; it should capture precisely the semantics of the application domain - no more and no less. In my opinion, a domain-specific language is the "ultimate abstraction".

One approach is not to directly program the GPU, but to use library provided (domain-specific) high-level parallel primitives (map,fold,reduce,..) to describe the computation. The library in question then compiles the final low-level code. These libraries are often implemented as domain-specific embedded languages. Topic is a subject for active research, but some more or less mature implementations already exist, some of which are:

  • thrust provides STL-like algorithms for C++ while targeting CUDA and OpenMP as backends.
  • ArBB implements a parallel array programming library for C++ built on a general purpose virtual machine targeting SSE, AVX and possibly MIC in the future.
  • accelerate is an embedded language for array computations in Haskell and at the moment implements backends for CUDA and ArBB.

Comment Re:Imagine (Score 1) 326

Erlang with it's CSP-style message passing would seem to fit this chip perfectly, as well as Go for example. Atleast if thread-like constructs of those languages would run across the separate operating system instances on each SCC core.

Distributed Plan 9 system sounds like a good match also. Communication with pipes from core to another should be quite fast and programs can still be built as serial filters. Work on Barrelfish is somewhat interesting too.

Comment Re:Barrelfish (Score 1) 462

From what I remember (hopefully correctly) engineering cache coherent shared memory architectures is increasingly difficult as core counts go up. Intel built a experimental processor that utilizes low latency message passing instead of shared, coherent cache. Nvidia and Ati have quite capable vector architectures as processors do not have shared cache, just as IBM Cell SPU's are somewhat capable as well. Distributed memory and message passing seem to have a bright future. Didn't SMP systems these days look and act internally like distributed systems?

When we get to 48 cores same programming models might not be available at all. Barrelfish seems as quite sensible and interesting preparation for the future. Or perhaps Plan 9 will finally get to rise. I think I'll learn Go in the meanwhile, it has this interesting concept of "sharing memory by communicating".

Comment Re:This is not HDR (Score 1) 287

Available HDR displays would be wonderful indeed. Regardless of level of ambient lightning, it feels terribly limiting to clamp image brighteness to 256 steps supported by 8-bit color channels of most displays. I'd love if my display would offer similar image as the window next to it, having my eyes doing the tone mapping has a certain feel to it.

Comment Re:In Soviet Russia Webpage reads you? (Score 3, Insightful) 140

Text that can understand the intentions of the reader and respond accordingly could be quite useful, for example by explaining some portion of text in more detail. Unfortunately intelligent enough content production system required for such is probably way harder to implement than ads that follow the reader's gaze.

Comment Re:Come a long way (Score 1) 368

I must say, it is beautiful now.

I have to agree, the feature set feels solid and the whole package a lot more mature.

One minor thing though, it seems to me that a lot of inspiration for UI look comes from the most recent Windows version at the time and inspiration for functionality from OS X. Nothing wrong implementing already working concepts but it would be nice to see what would come out from thinking more out of the box.
--
xmonad user

Comment Re:Wrong summary (Score 1) 286

Indeed, the summary however sounds pretty accurate to me.

...a stifling array of possibilities...

Software rendering has gone quite far in terms of image quality in the last two decades. The images artists can create with modeling applications coupled with mental ray for example are absolutely stunning. It will be interesting to follow these techniques to find their way into real-time applications.

Pixar's Renderman has proven quite succesful for rendering somewhat complex sequences of moving images. I'll be waiting to see real-time implementations of REYES-style micropolygon approaches in the coming years. Few advantages would be high-order surfaces, high quality sampling and shading, displacements, motion blur and depth of field. Like said in the article:

So it sounds like right now is a really good time to be a graphics programmer.

If builders built buildings the way programmers wrote programs, then the first woodpecker to come along would destroy civilization.

Working...