public void Test() { IntPtr pInputDesc = IntPtr.Zero; IntPtr pOutputDesc = IntPtr.Zero; IntPtr pFilterDesc = IntPtr.Zero; IntPtr pConvDesc = IntPtr.Zero; cudnnDataType dataType = cudnnDataType.CUDNN_DATA_FLOAT; int n_in = 64; // Number of images - originally 128 int c_in = 96; // Number of feature maps per image - originally 96 int h_in = 221; // Height of each feature map - originally 221 int w_in = 221; // Width of each feature map - originally 221 cuDNN6 dnn = new cuDNN6(); pInputDesc = dnn.CreateTensorDescriptor(); pOutputDesc = dnn.CreateTensorDescriptor(); pFilterDesc = dnn.CreateFilterDescriptor(); pConvDesc = dnn.CreateConvolutionDescriptor(); dnn.SetTensor4dDescriptor(pInputDesc, cudnnTensorFormat.CUDNN_TENSOR_NCHW, dataType, n_in, c_in, h_in, w_in); //dnn.Getten Console.WriteLine(pInputDesc); dnn.DestroyConvolutionDescriptor(pConvDesc); dnn.DestroyFilterDescriptor(pFilterDesc); dnn.DestroyTensorDescriptor(pOutputDesc); dnn.DestroyTensorDescriptor(pInputDesc); }
private void TestCuDNN() { cuDNN6 cudnn = new cuDNN6(); Console.WriteLine("cudnnGetVersion: {0}", cuDNN6.GetVersion()); Console.WriteLine("cudnnGetCudartVersion: {0}", cuDNN6.GetCudartVersion()); Console.WriteLine("cudnnGetErrorString: {0}", cuDNN6.GetErrorString(cudnnStatus.CUDNN_STATUS_SUCCESS)); var config = Runtime.DeviceGetCacheConfig(); Console.WriteLine(config); Console.WriteLine(Runtime.DeviceGetPCIBusId(0)); Console.WriteLine(Driver.DeviceGetPCIBusId(0)); int totalDevices = Runtime.GetDeviceCount(); for (int i = 0; i < totalDevices; i++) { cudaDeviceProp prop = Runtime.GetDeviceProperties(i); Console.WriteLine("device {0}, {1}", i, prop.name); Console.WriteLine("sms {0}", prop.multiProcessorCount); Console.WriteLine("Capabilities {0}.{1}", prop.major, prop.minor); Console.WriteLine("SmClock {0} Mhz", (float)prop.clockRate * 1e-3); Console.WriteLine("MemSize (Mb) {0}", (int)(prop.totalGlobalMem / (1024 * 1024))); Console.WriteLine("MemClock {0} Mhz", (float)prop.memoryClockRate * 1e-3); } //DNNTest test = new DNNTest(); //test.Test(); }