MC# с поддержкой GPU

Вышла версия 3.0 языка программирования MC# (www.mcsharp.net) с поддержкой GPU.
Например, программа сложения двух целочисленных векторов выглядит на MC# следующим образом:

  1. using System;
  2. using GpuDotNet.Cuda;
  3.  
  4. public static class VectorAddition {
  5.  
  6.  public static void Main ( String[] args )
  7. {
  8.  
  9.   int   N = Convert.ToInt32 ( args [ 0 ] );  
  10.   Console.WriteLine ( "N = " + N );
  11.  
  12.   int[]   A = new int [ N ];
  13.   int[]   B = new int [ N ];
  14.   int[]   C = new int [ N ];
  15.  
  16.   for ( int i = 0; i < N; i++ ) {
  17.    A [ i ] = i;
  18.    B [ i ] = i + 1;
  19.   }
  20.  
  21.   GpuConfig gpuconfig = new GpuConfig();
  22.   gpuconfig.SetBlockSize ( N );
  23.   gpuconfig.vecadd ( A, B, C );
  24.  
  25.   for ( int i = 0; i < N; i++ )
  26.    Console.WriteLine ( C [ i ] );
  27.  
  28.  }
  29.  
  30.  public static gpu vecadd ( int[] A, int[] B, int[] C ) {
  31.  
  32.   int   i = ThreadIndex.X;
  33.   C [ i ] = A [ i ] + B [ i ];
  34.  
  35.  }
  36. }

На сайте MC# есть форум и блог, где можно задавать соответствующие вопросы.

Forums: