1.1 基本版本
python 3.9
Anaconda3
cuda 11.6
conda 23.3.1
pyToach1.13
2.1 Python Anaconda 的环境的安装
官方下载地址
当前版本 https://www.anaconda.com/download/历史版本 https://repo.anaconda.com/archive/
镜像下载地址
清华镜像 https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
Anaconda与Python版本对应关系
Anaconda 可以用默认安装,右图两个选择框都勾上
2.2 CUDA下载与安装
在NVIDIA控制面板查看显卡驱动版本,选择合适的CUDA版本进行下载。 CUDA下载地址(清华镜像源):CUDA Toolkit 11.6 Downloads | NVIDIA Developer
下载完成后,点击exe执行文件,此处我选择了原始地址(这就是个临时的,安装完以后系统就给你删了,不用太管他)
开始安装
进入这个窗口后,选择自定义
接下来这一步可以全选(但是我全选以后安装失败了,我失败后的解决措施是:不勾选CUDA中的Nsight VSE和Visual Studio Integration)
这一步是选择安装位置:
1、如果你想装c盘你就直接下一步,不想装C盘的看2、
2、在对应盘中建立对应的文件
(1)D:\ProgramData\NVIDIA Corporation\CUDA Samples\v11.6
(2)D:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.6
3、之前是c盘的你就选d盘对应的就行
安装完成
然后就是 NVIDIA要登陆账号啥的,我之前没有账号我就开了一个,应该没啥影响吧,不想登陆的应该是可以不登陆。
后面一直向下,然后就是查看一下环境变量了。点击设置–>搜索高级系统设置–>查看环境变量
上面的环境变量是自己生成的,无需手动配置。之后在cmd下查看是否可以使用命令:注意是大写V哦
输入:nvcc -V
set cuda
2.3 Anaconda
之前装好的,我只进行了检查
输入:conda --version
python
可以看的正确的版本号以及python已托管至Anaconda。可以在电脑屏幕左下角的Windows徽标键这里,选择点击绿色圈圈Anaconda Navifator将其打开。
2.4 在Anaconda中安装pyToacn1.13
1、先新建一个环境,我随便起名为pyToach1113
2)命令行添加环境,进入cmd下,输入
conda env list 这句话就是显示所有环境名
activate pyToach1113 启动 pyToach1113这个环境
2.1) 使用官方推荐命令安装pyToach,进入网站pyToach官网,选择这个标签页:
拉到下面,使用这个命令,注意是11.6哦
conda install pytorch==1.13.1 torchvision==0.14.1 torchaudio==0.13.1 pytorch-cuda=11.6 -c pytorch -c nvidia
2.2) 等待漫长的命令执行完成,验证是否可以正常使用:
可以正常使用
2.5 在pycharm中尝试使用pyToach调用cuda
然后就基本上项目完成,然后尝试输入一些代码进行尝试:
以下是一些例子:
import numpy as np
# 1\创建一个长度为10的空向量
empty_vector = np.empty(10)
print("空向量:", empty_vector)
# 2\创建3*3且值从0到8的矩阵
matrix = np.arange(9).reshape(3,3)
print( "3x3矩阵:\n", matrix)
# 3\找到数组中非0的位置索引
matrix = np.array([[0, 1, 0],
[2, 0, 3],
[0, 4, 0]])
nonzero_indices = np.nonzero(matrix)
print("非零元素的位置索引: ", nonzero_indices)
# 4\编写一个函数,能够实现对一个N阶的二维数组进行如下计算:
# 函数的形参为一个N阶二阶数组,返回两个值,依次为该数组的主对角线元素之和、副对角线元素之和。
import numpy as np
matrix = np.array([[6, 1, 10],
[2, 4, 3],
[0, 4, 0]])
def calculate_diagonal_sums(array):
n = len(array)
main_diagonal_sum = np.trace(array)
flipped_array = np.fliplr(array)
anti_diagonal_sum = np.trace(flipped_array)
return main_diagonal_sum, anti_diagonal_sum
print(calculate_diagonal_sums(matrix))