使用ManagedCUDA查询GPU规范

时间:2016-12-07 10:50:56

标签: c# cuda gpgpu

我实际上是想在使用ManagedCUDA的C#应用​​程序中查询我的GPU规范。

所以我查看了文档,我看到有一个名为" CudaDeviceProperties"有很多变量设置为从GPU存储日期。

但我不知道如何使用它。我试着像下面这样创建变量:

CudaDeviceProperties prop = new CudaDeviceProperties();

尝试打印例如:prop.MaxGridDim.x始终返回0

我没有看到像#"真实" CUDA用类似cudaGetDeviceProperties(*prop, int device)

之类的东西来设置类变量

所以我做了一些关于查询我想用系统命名空间得到的数据的方法的研究..但是没有找到一种方法来获得我想要的maxGridDim和maxBlockDim,我得到了内存,实际上是个好点。

我想得到什么:

  • 最大网格尺寸(x,y,z)
  • 最大块尺寸(x,y,z)
  • 记忆量(总计)
  • 记忆量(左)
  • 每个块我可以使用多少内存?

感谢您的回复,提示或其他任何内容!

1 个答案:

答案 0 :(得分:1)

ManagedCUDA名称空间中有一个名为cudaGetDeviceProperties的方法,该方法应返回由本地CUDA中 import React from 'react'; export default class Comment extends React.Component { constructor(props){ super(props); } handleCommentChange(text){ // do something with the text } render() { const comment = this.props.comment.map((commentForm, index) => { return <CommentForm key={index} {...commentForm} handleCommentChange = {this.handleCommentChange.bind(this)}/> }); return ( <div className="media-body">{comment}<br></br></div> ); } } import React from 'react'; export default class CommentForm extends React.Component { constructor(props){ super(props); this.state = { text: '' }; this.updateState = this.updateState.bind(this); } updateState(e){ this.setState({text: e.target.value}); } render() { return ( <div><textarea value={this.state.text} className="form-control" onChange={this.updateState()} rows="3"></textarea><br></br> <button type="submit" className="btn btn-primary" onClick={this.props.handleCommentChange(this.state.text)}>Submit</button></div> ); } } 返回的设备信息。