CUDA 安装完成以后如何判断安装是否成功
最近在家里过寒假,可能这是还在学校里带着最大的福利了,无意之中翻出了多年前买的几本关于CUDA编程的书,于是随便在自己电脑上配置了一下环境,试试能不能把当年没有看完的书给看完了,于是有了今天这个判断CUDA是否安装成功的一个博客。
原本按照自己以前的安装法子来配置环境,无奈开机后总是不成功,于是采用了Ubuntu默认的安装方式,即 apt-get nvidia-cuda-toolkit , 安装好以后本打算着用CUDA自带的测试sample 来试试是否安装成功,无奈此种安装方式是不带sample的,于是采用如下步骤测试。
nvidia-setting

有了上图后可以确认NVIDIA的驱动已经安装好。
但是,这时出现了个比较神奇的事情,就是如下命令的失败:
nvidia-detector

该命令显示 显卡并没有被识别,而这恰恰和上图出现的结果相反,十分令人费解,于是继续探索。
lspci | grep -i vga

该命令证明 NVIDIA 显卡也没有被识别,但这也是与第一个命令结果相反的,于是继续在网上搜索。
最后在无意中发现了这个 帖子:https://www.ubuntukylin.com/ukylin/forum.php?mod=viewthread&tid=14898
该帖子最后的一个回答解答了我的疑虑:

lspci | egrep 'VGA|3D'

该结果清楚的显示我的电脑上的NVIDIA显卡已经被识别,验证了一个命令的驱动安装成功的结果。
由于此种安装方式并不会有自带的sample因此需要我自己去编写测试,这时在网上找到了这么一个demo,感觉不错,如下:
#include <stdio.h>
#include <stdlib.h>
#include <cuda_runtime.h> //初始化CUDA
int count=; bool InitCUDA()
{
printf("Start to detecte devices.........\n");//显示检测到的设备数 cudaGetDeviceCount(&count);//检测计算能力大于等于1.0 的设备数 if(count == )
{
fprintf(stderr, "There is no device.\n");
return false;
} printf("%d device/s detected.\n",count);//显示检测到的设备数 int i;
for(i = ; i < count; i++)
{//依次验证检测到的设备是否支持CUDA
cudaDeviceProp prop;
if(cudaGetDeviceProperties(&prop, i) == cudaSuccess)
{//获得设备属性并验证是否正确
if(prop.major >= )//验证主计算能力,即计算能力的第一位数是否大于1
{
printf("Device %d: %s supportsCUDA %d.%d.\n",i+,prop.name,prop.major,prop.minor);//显示检测到的设备支持的CUDA 版本
break;
}
}
} if(i == count)
{//没有支持CUDA1.x 的设备
fprintf(stderr, "There is no device supporting CUDA 1.x.\n");
return false;
} cudaSetDevice(i);//设置设备为主叫线程的当前设备
return true;
} int main()
{
if(!InitCUDA())
{//初始化失败返回系统int argc, char** argv
return ;
} printf("Hello GPU! CUDA has been initialized.\n"); //exit(argc ? EXIT_SUCCESS : EXIT_FAILURE);
return ;//返回系统
}

其中需要注意的一个问题是运行编译好的程序时需要使用 sudo , 即使用管理员权限, 可能是在安装NVIDIA驱动和CUDA的时候本身就是安装使用管理员权限的,所以要调用它们的时候也是需要使用sudo来操作的。
CUDA 安装完成以后如何判断安装是否成功的更多相关文章
- caffe2+cuda+Ubuntu16.04(u盘安装)
安装caffe2 预先准备.安装gflags及autoconf及GLOG https://github.com/caffe2/caffe2/issues/1810 一.下载源代码通过网盘 https: ...
- Mac下CUDA开启及Tensorflow-gpu 1.4 安装
本文由@ray 出品,转载请注明出处. 文章链接:http://www.cnblogs.com/wolfray/p/8040694.html 在之前的文章中,笔者介绍了在Mac下安装Tensorfl ...
- shell脚本安装python、pip--这种写法是错误的---每一个命令执行完都要判断是否执行成功,否则无法进行下一步
shell脚本安装python.pip--不需要选择安装项目--不管用总报错,必须带上判断符号,while没有这种用法,写在这里为了以后少走弯路,所以不要用下面的执行了 首先把pip-.tgz 安装包 ...
- 安装配置环境 CUDA以及CUDNN tensorflow pytorch pip安装 虚拟环境
1. 在win10中利用Anaconda直接安装tensorflow-gpu 不需要另行安装cuda cudnn 但是不知道电脑会自动适配所需的版本吗,不过把电脑显卡驱动更新一下,就都也可以了吧. ...
- node安装express时找不到pakage.json文件;判断安装成功?
正常安装命令:express install express --save 报错如下:no such file or directory,open 'C:\Users\Administrator\pa ...
- ubuntu14.04安装、NVIDIA显卡驱动安装及CUDA8.0、Cudnn5.1的环境搭建
安装环境:hp-Z440工作站.64位Ubuntu14.04(64位Ubuntu16.04).Cuda8.0.Cudnn5.1.Nvidia GeForce GT 705.Tesla K40c 本文可 ...
- Anaconda安装Graphviz, mac下Graphviz安装, pcharm中调用pycharm, Graphviz典型例子
mac下的Graphviz安装及使用 2017年10月13日 13:30:07 阅读数:7495 一.安装 Graphviz http://www.graphviz.org/ mac用户建议直接用ho ...
- 解决Bash On Ubuntu On Window安装Zsh无效问题附安装说明
前言 Zsh是一款非常棒的Shell,使用Linux和Mac系统的人,基本上都知道zsh的存在. 问题 在安装完Zsh后,zsh是可以使用的,但是重启之后,又恢复至默认的bash. 我在安装好之后,使 ...
- centos 安装pip,使用pip安装django
python版本要2.7.x以上版本,若未安装python执行以下命令安装: wget https://www.python.org/ftp/python/2.7.8/Python-2.7.8.tgz ...
随机推荐
- CentOS7系统上部署.net core程序
一.准备工作 首先安装 xshell 和 xftp ,前者用于SSH连接Linux服务器,后者用于FTP上传下载文件. xshell和xftp个人使用是免费的,下载地址 之后分别输入用户名和密码登录主 ...
- httpclient接口测试完整用例以及获取信息的方法
原文地址https://blog.csdn.net/fhaohaizi/article/details/78088075 原文地址https://blog.csdn.net/fhaohaizi/art ...
- 前端基础(JavaScript)
JavaScript概述 JavaScript的历史 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言(最初绑定在CEnvi软件中).后将其改名ScriptEase.( ...
- cocos代码研究(9)ProgressTimer类学习笔记
理论部分 ProgressTimer是Node的子类. 该类根据百分比来渲染显示内部的Sprite对象. 变化方向包括径向,水平或者垂直方向. 代码部分 Type getType () const获取 ...
- OAuth 白话简明教程 5.其他模式
转自:http://www.cftea.com/c/2016/11/6706.asp OAuth 白话简明教程 1.简述 OAuth 白话简明教程 2.授权码模式(Authorization Code ...
- Spring整合Mybatis 之分页插件使用
[分页插件项目中的正式代码一共有个5个Java文件,这5个文件的说明如下] Page<E>[必须]:分页参数类,该类继承ArrayList,虽然分页查询返回的结果实际类型是Page< ...
- Python3.x:os.mkdir与 os.makedirs(创建目录方法)区别
Python3.x:os.mkdir与 os.makedirs区别 1,os.mkdir mkdir( path [,mode] ) 说明: 创建一个目录,可以是相对或者绝对路径,mode的默认模式是 ...
- Two Sum(II和IV)
本文包含leetcode上的Two Sum(Python实现).Two Sum II - Input array is sorted(Python实现).Two Sum IV - Input is a ...
- Ubuntu下录制屏幕并转换成gif【转】
本文转载自:https://blog.csdn.net/u012964944/article/details/50464263 *录制屏幕 1)打开Ubuntu软件中心,安装RecordMyDeskt ...
- 编译 Tensorflow 1.10 + CUDA9.2 + MKL【转】
本文转自:https://www.solarck.com/compile-tensorflow-gpu.html 我的电脑系统是基于 Archlinux 的 Manjaro,软件包更新的比较激进,很早 ...