Live data from Hacker News

Proposal For An Interactive Introduction to Graphics Programming

pixelshaders.com

1–10 of 44 posts

Re: Proposal For An Interactive Introduction to Graphics Programming

#6
I am a little confused, it seems like you are proposing an interactive CUDA guide, but there is no mention of CUDA at all. Having spent a lot of time in graphics, I feel like better test environments for GPU programming will go a long way towards higher market adoption, it's a nightmare debugging sometimes

Re: Proposal For An Interactive Introduction to Graphics Programming

#8
> New ways of programming

If you wanna be sincere about this, I think you should have a section dedicated to Gezira, and not only the more traditional imperative styles of graphics programming. The style of GUI that came out of PARC is no longer "modern", and has problems with modern development styles (e.g, single-threaded global event loops makes writing concurrent programs difficult).

If you're not familiar with it, Gezira is a full vector graphics API, including compositing, written in less than a thousand lines of Nile - a small flow-based programming language. It does its magic by treating quadratic bezier curves as the main primitive, where the author has developed an algorithm to calculate the pixel coverage of a given bezier, with anti-aliasing.. Because most operations can be treated independently, it lends itself nicely to concurrency - each operation in a data flow can run independently, and many operations can be parallelised if given sufficient inputs.

Gezira/Nile was created by Dan Amelang while working for VPRI (the research institute headed by Alan Kay). A demo of it in action can be seen here: (http://tinlizzie.org/~bert/Gezira.ogv), where it's worth noting that the entire Editor UI in this example (after first 5 seconds), including font rendering, is written with Gezira itself.

Re: Proposal For An Interactive Introduction to Graphics Programming

#9

I am a little confused, it seems like you are proposing an interactive CUDA guide, but there is no mention of CUDA at all. Having spent a lot of time in graphics, I feel like better test environments for GPU programming will go a long way towards higher market adoption, it's a nightmare debugging sometimes

I posted this, but I didn't create it. I came across it while learning OpenGL and thought it was an interesting way to learn more about how pixel (fragment) shaders worked.

That said, I definitely agree that an interactive CUDA guide would be useful! And although my experience with graphics programming is limited to the past few weeks I've certainly experienced some of what you mentioned with regards to debugging. One of the most frustrating things starting out with OpenGL was how forgetting a specific function call would cause nothing to render at all with no hint as to what was going wrong.

Re: Proposal For An Interactive Introduction to Graphics Programming

#10
Possibly naive question: will there ever be a C for GPUs? That is, a minimal, portable "assembly language"? Or will there continue to be heterogeneity?

I think that's what OpenCL and such are trying to be, but I know it is nascent and has competitors. I don't know enough about the hardware to tell if languages will eventually consolidated like C (with basically all higher level languages built on top of C), or if there is some fundamental heterogeneity or evolutionary divergence that means there can't be one language.

Post reply on HN