Campy. is an API for GPGPU programming for C#, and modeled after Microsoft’s C++ AMP. Campy uses unattributed, anonymous C# lambda functions for GPU code, providing a solution to the problem of locality of declaration of GPU kernel and caller. In other words, GPU and CPU code can be co-mingled, and there is no tagging of GPU code. The goal will be to use a unified memory model in order to provide automatic synchronization/shared GPU/CPU memory data structures, with an interface similar to the System.Threading.Tasks.Parallel class.
Campy uses LLVM for code generation, targeting 64-bit Windows with NVIDIA Maxwell or newer GPUs. The product also includes a NET language Base Class Library (BCL) that runs on the GPU. There are pre-releases, but only for demonstration. It is under active development, with an initial release sometime in early 2018.
Campy is under GIT version control in https://github.com/kaby76/campy.