用学校服务器远程编写运行CUDA代码
0 前言
关于如何用xshell连学校服务器,我在之前的博客中已经详细介绍了,不会的可以去看看。
VScode/Xshell连接学校服务器
学校服务器安装anaconda并配置pytorch环境
1 检查当前系统是否支持CUDA
conda activate pytorch # 激活pytorch环境 python # 进入python环境 import torch # 导入torch torch.cuda.is_available() # 检查当前系统是否支持CUDA
如果最后是True
即可,如果是False
则需看0小节前言
中的博客如何安装cuda在学校服务器上
2 在 Jupyter 中编写和执行代码
在 Jupyter 中编写和执行代码的主要目的是进行数据分析、数据可视化、实验计算、机器学习模型训练等任务。我们可以分步执行代码块,实时查看结果,并进行实验和调试。
首先要先了解实验室服务器的jupyter端口号是什么
网页地址为:http://服务器ip地址:jupyter端口号
比如:
服务器ip地址为:172.21.252.145
jupyter端口号:8887
网页地址为:http://172.21.252.145:8887
Terminal(终端):Terminal 可以让用户直接在 Jupyter Notebook 界面中打开一个终端窗口,并在其中执行命令行操作。
Text File(文本文件):Text File 功能允许用户创建、编辑和查看文本文件。
Markdown File:Markdown File 功能允许用户创建和编辑 Markdown 格式的文档。
Tensorboard:Tensorboard 是 TensorFlow 深度学习框架提供的可视化工具,用于帮助用户可视化训练过程中的模型指标、参数、图表等。
Contextual Help(上下文帮助):Contextual Help 功能提供了代码提示和文档查看功能,用户可以在编辑代码时方便地查阅相关函数、模块的文档和帮助信息。
3 打开终端 激活pytorch环境
conda activate pytorch
4 创建新文件(.cu格式)
在launch启动器Text File中创建
我们可以尝试运行这段代码:
我是参考博客中的代码:CUDA 编程——Vector Addition
#include <stdio.h> #include <time.h> #include <math.h> #include "cuda_runtime.h" #include "device_launch_parameters.h" int main() { cudaDeviceProp deviceProp; cudaGetDeviceProperties(&deviceProp, 0); printf("设备名称与型号: %s\n", deviceProp.name); printf("显存大小: %d MB\n", (int)(deviceProp.totalGlobalMem / 1024 / 1024)); printf("含有的SM数量: %d\n", deviceProp.multiProcessorCount); printf("CUDA CORE数量: %d\n", deviceProp.multiProcessorCount * 192); printf("计算能力: %d.%d\n", deviceProp.major, deviceProp.minor); }
将文件改为.cu
后缀格式
5 执行代码
在终端terminal
中输入
nvcc test.cu -o test.out
这个命令nvcc test.cu -o test.out
是用于使用 NVIDIA 的 CUDA 编译器(nvcc)编译 CUDA 源代码文件test.cu
,并将生成的可执行文件命名为test.out
运行当前目录下名为test.out
的可执行文件,输入下面这段代码
./test.out