Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

Ultimate /prog/ challenge

Name: Anonymous 2012-11-08 11:36

Now that SPIR has been standardized for OpenCL, your goal is to create a high-performance Lisp-like language compiler specialized for stream-processing that targets the OpenCL stack. Think S-expression syntax with semantics compatible with OpenCL.

Some things to keep in mind:

• No recursion. Current GPU hardware can't support it.
• No garbage-collection, at least outside of your compiler, you can use GC inside for your lexer/parser/codegen if you want, but the final output must compile down to SPIR assembly and host language C code. Therefore, the language must be lexically scoped.
• No bignums/bigfloats. The language should expose access to all underlying fundamental OpenCL integer and floating point types, as well as all vector types and associated operations.
• Should expose access to OpenCL buffer/texture-map data types and operations, offering both manual memory management and automatic region-based allocation of these OpenCL objects. OpenCL buffers are arrays optimized for sequential access, and OpenCL texture maps are arrays optimized for random access and hardware filtering.
• Should build up a task dependency graph at compile-time and automatically insert synchronization barriers were required into the command buffer.
• Should be implemented as a library that can be easily embedded into any C/C++ program.

References:
http://www.khronos.org/opencl/
http://www.khronos.org/registry/cl/specs/spir_spec-1.0-provisional.pdf
http://www.khronos.org/registry/cl/specs/opencl-1.2.pdf

Name: Anonymous 2012-11-08 12:50

>>1
How does one become as well versed in these subjects as you?  I'll be awaiting your reply kind Sir.

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List