本文整理汇总了C#中ManagedCuda.BasicTypes.SizeT类的典型用法代码示例。如果您正苦于以下问题:C# SizeT类的具体用法?C# SizeT怎么用?C# SizeT使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
SizeT类属于ManagedCuda.BasicTypes命名空间,在下文中一共展示了SizeT类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: CudaSurface
/// <summary>
/// Creates a new surface from array memory. Allocates new array.
/// </summary>
/// <param name="kernel"></param>
/// <param name="surfName"></param>
/// <param name="flags"></param>
/// <param name="format"></param>
/// <param name="width">In elements</param>
/// <param name="height">In elements</param>
/// <param name="depth">In elements</param>
/// <param name="numChannels"></param>
/// <param name="arrayFlags"></param>
public CudaSurface(CudaKernel kernel, string surfName, CUSurfRefSetFlags flags, CUArrayFormat format, SizeT width, SizeT height, SizeT depth, CudaArray3DNumChannels numChannels, CUDAArray3DFlags arrayFlags)
{
_surfref = new CUsurfref();
res = DriverAPINativeMethods.ModuleManagement.cuModuleGetSurfRef(ref _surfref, kernel.CUModule, surfName);
Debug.WriteLine(String.Format("{0:G}, {1}: {2}, Surface name: {3}", DateTime.Now, "cuModuleGetSurfRef", res, surfName));
if (res != CUResult.Success) throw new CudaException(res);
_flags = flags;
_format = format;
_height = height;
_width = width;
_depth = depth;
_numChannels = (int)numChannels;
_name = surfName;
_module = kernel.CUModule;
_cufunction = kernel.CUFunction;
_channelSize = CudaHelperMethods.GetChannelSize(format);
_dataSize = height * width * depth * _numChannels * _channelSize;
_array = new CudaArray3D(format, width, height, depth, numChannels, arrayFlags);
res = DriverAPINativeMethods.SurfaceReferenceManagement.cuSurfRefSetArray(_surfref, _array.CUArray, flags);
Debug.WriteLine(String.Format("{0:G}, {1}: {2}", DateTime.Now, "cuSurfRefSetArray", res));
if (res != CUResult.Success) throw new CudaException(res);
}
示例2: CudaRegisteredHostMemory_byte
/// <summary>
/// Creates a new CudaRegisteredHostMemory_byte from an existing IntPtr. IntPtr must be page size aligned (4KBytes)!
/// </summary>
/// <param name="hostPointer">must be page size aligned (4KBytes)</param>
/// <param name="size">In elements</param>
public CudaRegisteredHostMemory_byte(IntPtr hostPointer, SizeT size)
{
_intPtr = hostPointer;
_size = size;
_typeSize = (SizeT)Marshal.SizeOf(typeof(byte));
_ptr = (byte*)_intPtr;
}
示例3: MyInputLayer
public MyInputLayer(MyAbstractFeedForwardNode network, MyMemoryBlock<float> input, SizeT offset, SizeT nb, SizeT width, SizeT height, SizeT nbSamplesPerStep)
: base(network)
{
m_inputBlock = input;
m_inputOffset = offset;
m_output.Nb = nb;
m_output.Width = width;
m_output.Height = height;
m_nbSamplesPerStep = nbSamplesPerStep;
}
示例4: CudaTextureArray2D
/// <summary>
/// Creates a new 2D texture from array memory. Allocates a new 2D array.
/// </summary>
/// <param name="kernel"></param>
/// <param name="texName"></param>
/// <param name="addressMode0"></param>
/// <param name="addressMode1"></param>
/// <param name="filterMode"></param>
/// <param name="flags"></param>
/// <param name="format"></param>
/// <param name="height">In elements</param>
/// <param name="width">In elements</param>
/// <param name="numChannels">1,2 or 4</param>
public CudaTextureArray2D(CudaKernel kernel, string texName, CUAddressMode addressMode0, CUAddressMode addressMode1, CUFilterMode filterMode, CUTexRefSetFlags flags, CUArrayFormat format, SizeT width, SizeT height, CudaArray2DNumChannels numChannels)
{
_texref = new CUtexref();
res = DriverAPINativeMethods.ModuleManagement.cuModuleGetTexRef(ref _texref, kernel.CUModule, texName);
Debug.WriteLine(String.Format("{0:G}, {1}: {2}, Texture name: {3}", DateTime.Now, "cuModuleGetTexRef", res, texName));
if (res != CUResult.Success) throw new CudaException(res);
res = DriverAPINativeMethods.TextureReferenceManagement.cuTexRefSetAddressMode(_texref, 0, addressMode0);
Debug.WriteLine(String.Format("{0:G}, {1}: {2}", DateTime.Now, "cuTexRefSetAddressMode", res));
if (res != CUResult.Success) throw new CudaException(res);
res = DriverAPINativeMethods.TextureReferenceManagement.cuTexRefSetAddressMode(_texref, 1, addressMode1);
Debug.WriteLine(String.Format("{0:G}, {1}: {2}", DateTime.Now, "cuTexRefSetAddressMode", res));
if (res != CUResult.Success) throw new CudaException(res);
res = DriverAPINativeMethods.TextureReferenceManagement.cuTexRefSetFilterMode(_texref, filterMode);
Debug.WriteLine(String.Format("{0:G}, {1}: {2}", DateTime.Now, "cuTexRefSetFilterMode", res));
if (res != CUResult.Success) throw new CudaException(res);
res = DriverAPINativeMethods.TextureReferenceManagement.cuTexRefSetFlags(_texref, flags);
Debug.WriteLine(String.Format("{0:G}, {1}: {2}", DateTime.Now, "cuTexRefSetFlags", res));
if (res != CUResult.Success) throw new CudaException(res);
res = DriverAPINativeMethods.TextureReferenceManagement.cuTexRefSetFormat(_texref, format, (int)numChannels);
Debug.WriteLine(String.Format("{0:G}, {1}: {2}", DateTime.Now, "cuTexRefSetFormat", res));
if (res != CUResult.Success) throw new CudaException(res);
_filtermode = filterMode;
_flags = flags;
_addressMode0 = addressMode0;
_addressMode1 = addressMode1;
_format = format;
_height = height;
_width = width;
_numChannels = (int)numChannels;
_name = texName;
_module = kernel.CUModule;
_cufunction = kernel.CUFunction;
_channelSize = CudaHelperMethods.GetChannelSize(format);
_dataSize = height * width * _numChannels * _channelSize;
_array = new CudaArray2D(format, width, height, numChannels);
res = DriverAPINativeMethods.TextureReferenceManagement.cuTexRefSetArray(_texref, _array.CUArray, CUTexRefSetArrayFlags.OverrideFormat);
Debug.WriteLine(String.Format("{0:G}, {1}: {2}", DateTime.Now, "cuTexRefSetArray", res));
if (res != CUResult.Success) throw new CudaException(res);
//res = DriverAPINativeMethods.ParameterManagement.cuParamSetTexRef(kernel.CUFunction, CUParameterTexRef.Default, _texref);
//Debug.WriteLine("{0:G}, {1}: {2}", DateTime.Now, "cuParamSetTexRef", res);
//if (res != CUResult.Success) throw new CudaException(res);
}
示例5: CudaFFTPlanMany64
/// <summary>
/// Creates a FFT plan configuration of dimension rank, with sizes
/// specified in the array <c>n</c>. The <c>batch</c> input parameter tells CUFFT how
/// many transforms to configure in parallel. With this function, batched
/// plans of any dimension may be created. (new API)
/// </summary>
/// <param name="handle">cufftHandle object</param>
/// <param name="rank">Dimensionality of the transform (1, 2, or 3)</param>
/// <param name="n">An array of size rank, describing the size of each dimension</param>
/// <param name="batch">Batch size for this transform</param>
/// <param name="type">Transform data type (e.g., C2C, as per other CUFFT calls)</param>
/// <param name="size"></param>
public CudaFFTPlanMany64(cufftHandle handle, int rank, long[] n, long batch, cufftType type, ref SizeT size)
{
_handle = handle;
_rank = rank;
_n = n;
_batch = batch;
_type = type;
//optional:
_inembed = null;
_istride = 1;
_idist = 0;
_onembed = null;
_ostride = 1;
_odist = 0;
res = CudaFFTNativeMethods.cufftMakePlanMany64(_handle, _rank, _n, _inembed, _istride, _idist, _onembed, _ostride, _odist, _type, _batch, ref size);
Debug.WriteLine(String.Format("{0:G}, {1}: {2}", DateTime.Now, "cufftMakePlanMany64", res));
if (res != cufftResult.Success)
throw new CudaFFTException(res);
}
示例6: cuGraphicsResourceGetMappedPointer_v2
public static extern CUResult cuGraphicsResourceGetMappedPointer_v2(ref CUdeviceptr pDevPtr, ref SizeT pSize, CUgraphicsResource resource);
示例7: cuMemAlloc_v2
public static extern CUResult cuMemAlloc_v2(ref CUdeviceptr dptr, SizeT bytesize);
示例8: cuMemGetInfo_v2
public static extern CUResult cuMemGetInfo_v2(ref SizeT free, ref SizeT total);
示例9: cuLinkComplete
public static extern CUResult cuLinkComplete(CUlinkState state, ref IntPtr cubinOut, ref SizeT sizeOut);
示例10: cusparseZbsrsv2_bufferSizeExt
public static extern cusparseStatus cusparseZbsrsv2_bufferSizeExt(cusparseContext handle,
cusparseDirection dirA,
cusparseOperation transA,
int mb,
int nnzb,
cusparseMatDescr descrA,
CUdeviceptr bsrVal,
CUdeviceptr bsrRowPtr,
CUdeviceptr bsrColInd,
int blockDim,
bsrsv2Info info,
ref SizeT pBufferSize);
示例11: cusparseZcsru2csr_bufferSizeExt
public static extern cusparseStatus cusparseZcsru2csr_bufferSizeExt(cusparseContext handle,
int m,
int n,
int nnz,
CUdeviceptr csrVal,
CUdeviceptr csrRowPtr,
CUdeviceptr csrColInd,
csru2csrInfo info,
ref SizeT pBufferSizeInBytes);
示例12: cusparseXcoosort_bufferSizeExt
public static extern cusparseStatus cusparseXcoosort_bufferSizeExt(cusparseContext handle,
int m,
int n,
int nnz,
CUdeviceptr cooRowsA,
CUdeviceptr cooColsA,
ref SizeT pBufferSizeInBytes);
示例13: cusparseZgebsr2gebsc_bufferSizeExt
public static extern cusparseStatus cusparseZgebsr2gebsc_bufferSizeExt(cusparseContext handle,
int mb,
int nb,
int nnzb,
CUdeviceptr bsrVal,
CUdeviceptr bsrRowPtr,
CUdeviceptr bsrColInd,
int rowBlockDim,
int colBlockDim,
ref SizeT pBufferSize);
示例14: cusparseDcsrilu02_bufferSizeExt
public static extern cusparseStatus cusparseDcsrilu02_bufferSizeExt(cusparseContext handle,
int m,
int nnz,
cusparseMatDescr descrA,
CUdeviceptr csrValA,
CUdeviceptr csrRowPtrA,
CUdeviceptr csrColIndA,
csrilu02Info info,
ref SizeT pBufferSize);
示例15: cuStreamAttachMemAsync
public static extern CUResult cuStreamAttachMemAsync(CUstream hStream, CUdeviceptr dptr, SizeT length, CUmemAttach_flags flags);