You can take a look at Dryad , a parallel approach to Microsoft programming, where C # is actually a first-class citizen. Apparently, Microsoft uses it for Bing and trains body tracking algorithms for Kinect [ 2 ]. It uses coarser parallelism data than OpenMP. This is more like processes with channels than threads with shared memory.
I am afraid that installing it on a Mono / Linux / Cray system will probably be hard to say at least. However, C # is not your typical HPC language. As a rule, it is very difficult to effectively run C # on this scale / type of system. I would recommend evaluating the migration of your software to HPC "first class" language, for example. C, Fortran.
Also as a note: OpenMP does not scale across the full Cray XT6M machine (or any HPC cluster, for that matter), you can use this form of parallelism (shared memory). For communication between nodes, you need another form of parallelism, usually MPI. You can also use MPI in node.
source share