Slashdot is powered by your submissions, so send in your scoop


Forgot your password?

Comment: Re:Ordinary Mortals (Score 1) 40

by Eladith (#38773934) Attached to: Book Review: OpenCL Programming Guide
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

by Eladith (#34305194) Attached to: Intel Talks 1000-Core Processors

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

by Eladith (#33751610) Attached to: Linux May Need a Rewrite Beyond 48 Cores

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

by Eladith (#33531586) Attached to: HDR Video a Reality
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

by Eladith (#31588322) Attached to: Does This Headline Know You're Reading It?
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

by Eladith (#31076896) Attached to: KDE 4.4 Released Alongside Website Redesign

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

by Eladith (#25027713) Attached to: Twilight of the GPU — an Interview With Tim Sweeney
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.

Modeling paged and segmented memories is tricky business. -- P.J. Denning