y450 archlinux cuda6.5
y450 archlinux cuda6.5
January 28, 2018 4:11 PM
archlinux是最新更新版本,gcc版本到了7.几,太新了。
[qiangge@lqspc ~]$ gcc --version
gcc (GCC) 7.2.1 20180116
Copyright © 2017 Free Software Foundation, Inc.
本程序是自由软件;请参看源代码的版权声明。本软件没有任何担保;
包括没有适销性和某一专用目的下的适用性担保。
这系统对中文翻译的不太习惯哈。
总体步骤
- 确认安装的archlinux比较新,不想降级gcc等。
- 确认y450的笔记本显卡型号,g 110M。
- 确定可以安装的cuda版本。这个地方走过弯路,开始直接
pa cuda,结果就给我装了个9.1的版本。反复测试发现安装失败。经过查询显卡型号(上一步)支持的计算能力(compute capability?希望没拼错)只是支持1.2以下,后来安装完发现是1.1.而1.2以下的最多安装cuda-6.5以前的版本。 yaourt cuda找到相关版本安装(上一步),安装过程中遇到/tmp不够用,新建个目录挂载到/tmp,冲掉了内存挂载的/tmp,这样可以充分利用硬盘空间来操作。之所以不够用因为内存只有8G,这样默认/tmp就只有4G,废话了。- 安装完后测试
/opt/cuda/samples的devicequery例子,最好拷贝到自己的/home目录吧。 - 开始不能编译任何例子,有两个错误。主要参考cuda社区解决。
(1)Here is a patch to /usr/include/bits/floatn.h for avoiding __FLOAT128 only when compiling via NVCC
(2)Here is how to use other GCC compiing via NVCC
- 第一个错误是floatn.h错误。参考论坛解决,本质上是判断条件里面添加一个条件,就是
不编译cuda代码的意思。 - 第二个错误是默认的gcc版本太新了,cuda65不支持,那就采用5试试看(参考下一步方法),发现这只能编译devicequery。于是经过google,知道必须4.7左右。本机yaourt编译4.7失败,当然依然要/tmp,编译个编译器真的很容易失败,浪费了好几天的电费哈。上海电费蛮贵的,尤其是租房,呜呜。那么总有解决办法吧,参考资料在archlinux的yaourt源里面。作者提到了要动态库加上软连接,
sudo ln -s /usr/lib/libisl.so /usr/lib/libisl.so.10 && sudo ldconfig
不然会失败,当然作为折腾专家,我必须先不加看看效果,果然不行
/usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.4/cc1plus: error while loading shared libraries: libisl.so.10: cannot open shared object file: No such file or directory
make: *** [Makefile:196:bandwidthTest.o] 错误 1
加上还提示另外一个错误,这个是作者没考虑的吧,哈哈
/usr/lib/gcc/x86_64-unknown-linux-gnu/4.7.4/cc1plus: error while loading shared libraries: libmpfr.so.4: cannot open shared object file: No such file or directory
解决办法是相同的思路,相似的代码,读者自行思考哈。
9. 解决gcc问题的方法有两个,本质是一个事情,请看参考1和参考2。最后的效果
[qiangge@lqspc ~]$ ll /opt/cuda/
bin/ jre/ libnvvp/ samples/
doc/ lib/ NVIDIA_SLA_cuDNN_Support.txt share/
extras/ lib64/ nvvm/ src/
include/ libnsight/ open64/ tools/
[qiangge@lqspc ~]$ ll /opt/cuda/bin/gcc/
总用量 8.0K
drwxr-xr-x 2 root 4.0K 1月 28 22:52 .
lrwxrwxrwx 1 root 16 1月 28 22:52 gcc -> /usr/bin/gcc-4.7
lrwxrwxrwx 1 root 16 1月 28 22:52 cpp -> /usr/bin/cpp-4.7
lrwxrwxrwx 1 root 16 1月 28 22:52 g++ -> /usr/bin/g++-4.7
drwxr-xr-x 4 root 4.0K 1月 22 09:45 ..
[qiangge@lqspc ~]$
[qiangge@lqspc 1_Utilities]$ cd bandwidthTest/
[qiangge@lqspc bandwidthTest]$ nvidia-smi
Mon Jan 29 00:01:22 2018
+------------------------------------------------------+
| NVIDIA-SMI 340.106 Driver Version: 340.106 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce G 110M Off | 0000:01:00.0 N/A | N/A |
| N/A 52C P12 N/A / N/A | 50MiB / 255MiB | N/A Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Compute processes: GPU Memory |
| GPU PID Process name Usage |
|=============================================================================|
| 0 Not Supported |
+-----------------------------------------------------------------------------+
[qiangge@lqspc bandwidthTest]$
[qiangge@lqspc bandwidthTest]$ ./bandwidthTest
[CUDA Bandwidth Test] - Starting...
Running on...
Device 0: GeForce G 110M
Quick Mode
Host to Device Bandwidth, 1 Device(s)
PINNED Memory Transfers
Transfer Size (Bytes) Bandwidth(MB/s)
33554432 2551.5
Device to Host Bandwidth, 1 Device(s)
PINNED Memory Transfers
Transfer Size (Bytes) Bandwidth(MB/s)
33554432 1675.0
Device to Device Bandwidth, 1 Device(s)
PINNED Memory Transfers
Transfer Size (Bytes) Bandwidth(MB/s)
33554432 6319.8
Result = PASS
[qiangge@lqspc bandwidthTest]$
[qiangge@lqspc 1_Utilities]$ cd deviceQuery
[qiangge@lqspc deviceQuery]$ ls
deviceQuery deviceQuery.cpp deviceQuery.o Makefile NsightEclipse.xml readme.txt
[qiangge@lqspc deviceQuery]$ ./deviceQuery
./deviceQuery Starting...
CUDA Device Query (Runtime API) version (CUDART static linking)
Detected 1 CUDA Capable device(s)
Device 0: "GeForce G 110M"
CUDA Driver Version / Runtime Version 6.5 / 6.5
CUDA Capability Major/Minor version number: 1.1
Total amount of global memory: 256 MBytes (268107776 bytes)
( 2) Multiprocessors, ( 8) CUDA Cores/MP: 16 CUDA Cores
GPU Clock rate: 1000 MHz (1.00 GHz)
Memory Clock rate: 700 Mhz
Memory Bus Width: 64-bit
Maximum Texture Dimension Size (x,y,z) 1D=(8192), 2D=(65536, 32768), 3D=(2048, 2048, 2048)
Maximum Layered 1D Texture Size, (num) layers 1D=(8192), 512 layers
Maximum Layered 2D Texture Size, (num) layers 2D=(8192, 8192), 512 layers
Total amount of constant memory: 65536 bytes
Total amount of shared memory per block: 16384 bytes
Total number of registers available per block: 8192
Warp size: 32
Maximum number of threads per multiprocessor: 768
Maximum number of threads per block: 512
Max dimension size of a thread block (x,y,z): (512, 512, 64)
Max dimension size of a grid size (x,y,z): (65535, 65535, 1)
Maximum memory pitch: 2147483647 bytes
Texture alignment: 256 bytes
Concurrent copy and kernel execution: Yes with 1 copy engine(s)
Run time limit on kernels: Yes
Integrated GPU sharing Host Memory: No
Support host page-locked memory mapping: Yes
Alignment requirement for Surfaces: Yes
Device has ECC support: Disabled
Device supports Unified Addressing (UVA): No
Device PCI Bus ID / PCI location ID: 1 / 0
Compute Mode:
< Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >
deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 6.5, CUDA Runtime Version = 6.5, NumDevs = 1, Device0 = GeForce G 110M
Result = PASS
[qiangge@lqspc deviceQuery]$
配置虽然低,学习可能够用吧,不行就去买个新点的台式二手显卡?二手是不是抠门了呢?的确是,但是其实自己不用买,公司有1080TI显卡,可以加班学习用就行了。这里只是想自己安装一次,并且可以简单用来学习、练习和测试。同时帮朋友解决了y550上cuda65,那个显卡是g 240m的样子,最多也是1.2的计算能力。但是他用的Ubuntu。臃肿的Ubuntu还不是我的菜。之后又发现自己硬盘快满了,原来是需要pacman -Sc一下了。回头考虑配置一下自动清除不安装的包吧。
y450 archlinux cuda6.5的更多相关文章
- 【Linux】虚拟机安装Archlinux
参考:https://wiki.archlinux.org/index.php/Installation_guide_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87) 安装 ...
- archlinux安裝手记(Win10+Arch、GPT+UEFI、lvm)
准备工具和设置制作启动盘连接网络硬盘分区规划分区LVM方案创建文件系统分区挂载激活lvm2钩子基础安装和配置配置镜像源基础系统安装fstab进入系统initramfs引导程序网络搭建使用环境用户管理用 ...
- Install ArchLinux(draft)
1.# dd bs=4M if=/path/to/archlinux.iso of=/dev/sdx status=progress && sync 2. # timedatectl ...
- ArchLinux+Win10双系统的Grub配置
解决:ArchLinux+Win10双系统,Grub设置 原装的Win10,装完ArchLinux后,要进入Win10一段时间只能通过boot选择. Grub的菜单里并没有.Grub安装过程是参考wi ...
- ArchLinux安装指南
将ArchLinux作为进阶Linux发行版,主要看重滚动更新和深入理解Linux的安装过程. 由于是新手,所以先选择在公司电脑上用VMware来安装.然后渐进到借助U盘在win10笔记本上安装双系统 ...
- Snort 安装 配置 - Archlinux
About Snort Snort是一套开放源代码(OpenSource and free)的网络入侵预防软件(NIPS)与网络入侵检测软件(NIDS).Snort使用了以侦测签名(signature ...
- 个人Win10 +archlinux安装笔记
win10+archlinux 1.查看磁盘并分区并挂载1.1 分区/dev/sda1 WIN10 保留分区/dev/sda2 WIN10 ESP分区(EFI)/dev/sda3 WIN10 MSR分 ...
- [archlinux][hardware] ThankPad T450自带SSD做bcache之后的使用寿命分析
这个分析的起因,是由于我之前干了这两个事: [troubleshoot][archlinux][bcache] 修改linux文件系统 / 分区方案 / 做混合硬盘 / 系统转生大!手!术!(调整底层 ...
- archlinux中c语言的rpc编程
参考:http://www.cs.rutgers.edu/~pxk/rutgers/notes/rpc/ 启动rpc服务端会出现 unable to register 这个错误,据说是要启用 port ...
随机推荐
- Android 加载网络图片设置到ImageView
下载图片后显示在ImageView中 //1.定义全局变量 private Handler handler; private String image_url; private Bitmap bitm ...
- Spring Boot 使用IntelliJ IDEA创建一个web开发实例(四)
多环境配置 1. 在springBoot多环境配置文件名需要满足application-{profile}.properties的格式,其中{profile}对应你的环境标识,例如: (1)appli ...
- TED_Topic2:My desperate journey with a human smuggler
My desperate journey with a human smuggler By Barat Ali Batoor When I was a child there was a toy wh ...
- 【POJ】3070 Fibonacci
[算法]矩阵快速幂 [题解] 根据f[n]=f[n-1]+f[n-2],可以构造递推矩阵: $$\begin{vmatrix}1 & 1\\ 1 & 0\end{vmatrix} \t ...
- [BZOJ2809&1455&1367]解题报告|可并堆
其实非常好理解..就是可以可以合并起来的两个堆嘛>< 2809: [Apio2012]dispatching Description 在一个忍者的帮派里,一些忍者们被选中派遣给顾客,然后依 ...
- 64_p1
PEGTL-devel-1.3.1-2.fc26.i686.rpm 13-Feb-2017 22:10 64086 PEGTL-devel-1.3.1-2.fc26.x86_64.rpm 13-Feb ...
- git-定制属于你的log格式
软件版本: 操作系统:ubuntu10.04 内核版本:Linux version 2.6.32-36-generic git 版本:git version 1.7.0.4 1. ...
- 152.Maximum Product Subarray---dp---连续子数组的最大乘积---《编程之美》2.13子数组的最大乘积
题目链接:https://leetcode.com/problems/maximum-product-subarray/description/ 题目大意:给出一串数组,找出连续子数组中乘积最大的子数 ...
- ActiveMQ-Prefetch机制和constantPendingMessageLimitStrategy
首先简要介绍一下prefetch机制.ActiveMQ通过prefetch机制来提高性能,这意味这 客户端的内存里可能会缓存一定数量的消息.缓存消息的数量由prefetch limit来控 制.当某个 ...
- slf4j中的Logger 使用占位符{} 来传入参数记录日志信息
首先要导入 slf4j包中的2个类 import org.slf4j.Logger;import org.slf4j.LoggerFactory; 再定义如下 private final static ...