Hi Jean-Sebastien,

if you like I could take a look at LLVM/clang. From my point of view
it not only integrates more nicely with Xcode but you would as well
get rid of dynamically linking against things like libgcc* which
sometimes triggers licensing discussions if talking to attorneys.

If you think it would make sense I could also have a look at replacing
the autotools stuff (automake) by CMake. The latter would generate IDE
project setups such as that for Xcode on the fly and Xcode provides
the same level of abstraction like you would get it from GNU autotools
et al.

PS: I am on vacation till Aug. 15th and wanted to do some C/C++ coding
anyway so maybe that's a nice match and additional excercise I could
have.

Cheers
Daniel

On Sat, Aug 6, 2011 at 7:55 AM, Jean-Sebastien Delfino
<jsdelf...@apache.org> wrote:
> Hi all,
>
> I'm on vacation for a few days and I'm going to have a little bit of
> free time to hack around Tuscany C++. I've been thinking about the
> following:
>
> a) Integrate LevelDB [1] as a key-value store component. I've been
> experimenting with LevelDB and I think it'll be a useful complement to
> the TinyCDB based store (best for constant data) and the PostgreSQL
> based store (best for flexible query).
>
> b) Use the LLVM based Clang compiler [2] as an alternative to GCC,
> useful on MacOS as it'll enable building without anything extra on top
> of Xcode 4.1.
>
> c) More challenging and interesting too, analyze a composite and
> transform it into a set of OpenCL [3][4][5][6] kernel functions
> running on a mix of CPUs and GPUs (giving you a lot of cheap computing
> power to run your SCA compositions). In particular convert a graph of
> synchronous service invocations into chained asynchronous tasks and
> determine the optimum partition of the composite into OpenCL kernels,
> work groups and work items while minimizing the data transfers between
> OpenCL kernels.
>
> I only have a few days to bootstrap these projects and will probably
> spend most of my energy on the OpenCL one as I want to try a few
> innovative ideas (including a functional programming monad based
> approach to model the interactions around composites and help the sync
> to async transformation, and another idea to have the component
> implementations do meta-programming and return their computations as
> kernel programs instead of the actual computation results) so if
> anybody is interested in working with me on this stuff ping me on
> gtalk jsdelfino, the #tuscany IRC channel or even better post a
> message here...
>
> [1] http://code.google.com/p/leveldb/
> [2] http://clang.llvm.org/
> [3] http://www.khronos.org/opencl/
> [4] 
> http://developer.apple.com/library/mac/#documentation/Performance/Conceptual/OpenCL_MacProgGuide/Introduction/Introduction.html
> [5] http://developer.nvidia.com/opencl
> [6] http://developer.amd.com/zones/OpenCLZone/Pages/default.aspx
> --
> Jean-Sebastien
>

Reply via email to