在windows中下载wsl

首先:点击控制面板–>启用或关闭windows功能 ==> 勾选图中的两个选项:适用于linux的windows子系统以及虚拟机平台

在微软商店下载wsl 系统-Ubuntu 18.04 并升级到wsl2

因为子系统调用gpu只支持wsl2。先查看wsl版本:

wsl -l -v
  • 输出如下:其中虚拟机的名称为Ubuntu-18.04
PS C:\Users\Administrator> wsl -l -vNAME            STATE           VERSION
* Ubuntu-18.04    Running         1
  • 对wsl进行升级:
wsl --set-version Ubuntu-18.04 2
  • 重新启动,之后输出结果应为:
PS C:\Users\Administrator> wsl -l -vNAME            STATE           VERSION
* Ubuntu-18.04    Running         2

在windows主系统下,下载cuda驱动:

  • 手动在官网上选择对应独显(e.g. RTX1080)的驱动:https://www.nvidia.com/Download/index.aspx?lang=en-us

  • 检测是否安装成功:
nvidia-smi

安装gcc依赖项

sudo apt-get update
sudo apt-get upgrade
sudo apt install gcc
gcc –v
ls /usr/bin/gcc*
sudo apt-get install make
make -v
sudo apt install vim

根据tf程序的信号对应手动安装cuda:

  • 使用tf-gpu== 2.5.0:对应要下载CUDA版本为11.2
  • 下载对应的驱动:https://developer.nvidia.com/cuda-11.2.0-download-archive?target_os=Linux&target_arch=x86_64&target_distro=WSLUbuntu&target_version=20&target_type=runfilelocal
  • 执行代码:
sudo wget https://developer.download.nvidia.com/compute/cuda/11.2.0/local_installers/cuda_11.2.0_460.27.04_linux.run
sudo sh cuda_11.2.0_460.27.04_linux.run
  • 配置环境
sudo vim ~/.bashrc
  • 在后面添加:
export PATH=/usr/local/cuda-11.2/bin/${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-11.2/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
  • 生效
source ~/.bashrc

安装cudnn

  • 下载并解压:
sudo wget https://developer.nvidia.com/compute/machine-learning/cudnn/secure/8.0.4/11.1_20200923/cudnn-11.1-linux-x64-v8.0.4.30.tgz
sudo tar zxvf ./cudnn-11.1-linux-x64-v8.0.4.30.tgz -C ./
  • 拷贝到对应cuda驱动的特定位置:
cd cuda
sudo cp ./include/* /usr/local/cuda-11.2/include/
sudo cp ./lib/* /usr/local/cuda-11.2/lib64/
  • 测试:
import tensorflow as tf
print(tf.test.is_gpu_available)
WARNING:tensorflow:From <ipython-input-3-fbc346170d61>:1: is_gpu_available (from tensorflow.python.framework.test_util) is deprecated and will be removed in a future version.
Instructions for updating:
Use `tf.config.list_physical_devices('GPU')` instead.
2022-07-10 22:05:12.272233: I tensorflow/core/platform/cpu_feature_guard.cc:142] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations:  AVX2 FMA
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
2022-07-10 22:05:12.292230: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library libcuda.so.1
2022-07-10 22:05:12.595858: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:923] could not open file to read NUMA node: /sys/bus/pci/devices/0000:01:00.0/numa_node
Your kernel may have been built without NUMA support.
2022-07-10 22:05:12.595919: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1733] Found device 0 with properties:
pciBusID: 0000:01:00.0 name: NVIDIA GeForce GTX 1080 computeCapability: 6.1
coreClock: 1.7335GHz coreCount: 20 deviceMemorySize: 8.00GiB deviceMemoryBandwidth: 298.32GiB/s
2022-07-10 22:05:12.595943: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library libcudart.so.11.0
2022-07-10 22:05:12.599380: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library libcublas.so.11
2022-07-10 22:05:12.599510: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library libcublasLt.so.11
2022-07-10 22:05:12.600670: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library libcufft.so.10
2022-07-10 22:05:12.601375: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library libcurand.so.10
2022-07-10 22:05:12.605063: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library libcusolver.so.11
2022-07-10 22:05:12.606022: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library libcusparse.so.11
2022-07-10 22:05:12.606149: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library libcudnn.so.8
2022-07-10 22:05:12.606835: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:923] could not open file to read NUMA node: /sys/bus/pci/devices/0000:01:00.0/numa_node
Your kernel may have been built without NUMA support.
2022-07-10 22:05:12.607424: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:923] could not open file to read NUMA node: /sys/bus/pci/devices/0000:01:00.0/numa_node
Your kernel may have been built without NUMA support.
2022-07-10 22:05:12.607467: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1871] Adding visible gpu devices: 0
2022-07-10 22:05:12.607501: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library libcudart.so.11.0
2022-07-10 22:07:05.377901: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1258] Device interconnect StreamExecutor with strength 1 edge matrix:
2022-07-10 22:07:05.377952: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1264]      0
2022-07-10 22:07:05.377962: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1277] 0:   N
2022-07-10 22:07:05.379881: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:923] could not open file to read NUMA node: /sys/bus/pci/devices/0000:01:00.0/numa_node
Your kernel may have been built without NUMA support.
2022-07-10 22:07:05.380483: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:923] could not open file to read NUMA node: /sys/bus/pci/devices/0000:01:00.0/numa_node
Your kernel may have been built without NUMA support.
2022-07-10 22:07:05.380519: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1501] Could not identify NUMA node of platform GPU id 0, defaulting to 0.  Your kernel may not have been built with NUMA support.
2022-07-10 22:07:05.381023: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:923] could not open file to read NUMA node: /sys/bus/pci/devices/0000:01:00.0/numa_node
Your kernel may have been built without NUMA support.
2022-07-10 22:07:05.381084: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1418] Created TensorFlow device (/device:GPU:0 with 6585 MB memory) -> physical GPU (device: 0, name: NVIDIA GeForce GTX 1080, pci bus id: 0000:01:00.0, compute capability: 6.1)
Out[3]: True

因为报错,所以需要重新安装驱动cuda 11.2:https://developer.nvidia.com/compute/machine-learning/cudnn/secure/8.1.0.77/11.2_20210127/cudnn-11.2-linux-x64-v8.1.0.77.tgz

cd cuda
sudo cp ./include/* /usr/local/cuda-11.2/include/
sudo cp ./lib64/* /usr/local/cuda-11.2/lib64/

参考[^1]: https://www.jianshu.com/p/be669d9359e2

windows10子系统wsl下使用tensorflow2.5.0调用gpu进行训练相关推荐

  1. python无法使用1号gpu_详解tensorflow2.x版本无法调用gpu的一种解决方法

    最近学校给了一个服务器账号用来训练神经网络使用,服务器本身配置是十路titan V,然后在上面装了tensorflow2.2,对应的python版本是3.6.2,装好之后用tf.test.is_gpu ...

  2. 在wsl下运行c语言,在Windows10通过WSL架设linux/gcc c语言学习环境

    在Windows10通过WSL架设linux/gcc c语言学习环境 零:简单介绍与先决条件 中国一般的大学C课程中都使用很过时的编译器来进行教授--比如说什么visual studio 6.0啊,d ...

  3. Win10与Ubuntu双系统下安装tensorflow2.0全流程备忘录

    Win10与Ubuntu双系统下安装tensorflow2.0个人备忘录 全部流程 安装Windows10 安装Ubuntu18.04 安装nVidia驱动 禁用nouveau 安装nVidia驱动 ...

  4. win10基于anaconda下的tensorflow2.0.0及cuda10.0、cudnn安装成功

    anaconda下安装tensorflow2.0.0 cuda10.0下载安装 安装cudnn 安装tensorflow2.0.0 cuda10.0下载安装 CUDA Toolkit 10.0 Dow ...

  5. 【Linux】在Windows 10环境下安装适用于 Linux 的子系统 (WSL安装指南)

    更多教程:https://docs.microsoft.com/zh-cn/windows/wsl/install-win10 安装适用于 Linux 的 Windows 子系统 (WSL) 时有两个 ...

  6. window命令行 linux,Windows命令行:起源 直到引入Windows下的linux子系统(WSL)

    本文从Windows命令行的起源及终端的演变,到我们在未来Windows发行版中对Windows控制台及命令行进行全面更新,引入Windows下的linux子系统(WSL).在本文中,我们将对命令行最 ...

  7. 在WSL下安装MYSQL的实验报告_Linux(wsl)安装docker和mysql主从搭建

    开始安装 参考文档:https://www.jianshu.com/p/3eb1e178f51b (最后使用windows本地docker,wsl中代理,因为当前版本不支持,最新版本据说支持了,没有尝 ...

  8. WSL下安装ubuntu 18.04 +meep进行FDTD仿真计算

    WSL下安装ubuntu 18.04 +meep进行FDTD仿真计算 前言 WSL 安装过程 打开虚拟环境 下载Ubuntu并修改安装路径 更改软件源 Meep VScode远程访问 测试程序 前言 ...

  9. CUDA安装、配置Anaconda下的Tensorflow2.x环境、Windows Terminal添加Anaconda Prompt教程

    CUDA安装.配置Anaconda下的Tensorflow2.x环境.Windows Terminal添加Anaconda Prompt教程 时间: 2022/7/22 作者: Libra Jiang ...

最新文章

  1. Java中++i和i++的区别
  2. 在js中为图片的src赋值时,src的值不能在开头用 破浪号~
  3. 【学习笔记】21、随机数模快
  4. 12.04 深圳站 | Serverless Developer Meetup 开放报名
  5. 怎样理解 MVVM ( Model-View-ViewModel ) ?
  6. Eclipse中使用自己的makefile管理工程
  7. @RequiresPermissionss是否可以填写多种权限标识,只要满足其一就可以访问?
  8. L1-006. 连续因子-PAT团体程序设计天梯赛
  9. 不用js也能创建silverlight
  10. 如何在Android中获取当前时间和日期
  11. PowerShell Format-Table的细节(AutoSize和Wrap参数)
  12. linux用megacli看raid信息,Linux中使用MegaCli工具查看、管理Raid卡信息
  13. 【事件驱动】【蓝牙控制车锁或电灯】初步方案
  14. iOS 使用pods报错问题 pod --version
  15. 轻松下载网易云音乐中的歌曲
  16. Mimics 21安装
  17. 什么是DOS操作系统
  18. 未来规划——北京大学数院432应用统计备考攻略
  19. CVR预估论文阅读笔记:一次性解决三大难题
  20. 精密仪器及机械类毕业论文文献包含哪些?

热门文章

  1. live555源代码概述
  2. java毕业设计诊所信息管理系统Mybatis+系统+数据库+调试部署
  3. oracle ora-01403
  4. VMware Horizon 8 2012 -- 用于管理虚拟桌面 (VDI)、应用和在线服务的领先平台
  5. AES加密算法及演示程序(GO-算法核心实现+Python-前端演示系统)
  6. 【物联网那些事儿】18 大物联网操作系统,Raspbian Pi、Ubuntu Core、Windows 10 IoT、Micropython、OpenWrt ....你用过哪几个?
  7. 华为 openlab 鸿蒙,华为OpenLab与工业互联网联盟成立联合生态实验室
  8. ipad和android平板应用程序,安卓平板相比iPad有哪些优势和劣势?
  9. 西南科技大学数电FPGA第一次实验报告
  10. xxl-job学习,基本测试1