vs code jupyter连gpu结点kernel

学校的服务器 1 分登录结点和计算结点。以往想在 jupyter notebook 调用 GPU 跑程序,是用 ssh tunnel 转发到自己电脑,然后用浏览器打开。

现发现直接在 VS Code 中用 jupyter notebook 更好用,但遇到一个问题:在给 notebook 选 kernel 时,如果用 Jupyter Kernel...,则会选中登录结点的 kernel,从而无法使用计算结点的 GPU:

Fig. 1

因为我 vs code 是连去登录结点,而不是直接连计算结点。此时正确的选法是用 Existing Jupyter Server... 指定用从计算结点启动的 jupyter lab server。

Steps

假设已装好 python、jupyterlab,配过 jupyter 密码,且配好一个虚拟环境叫 env1

  1. 注测 kernel

    shell 复制代码
    conda activate env1
    pip install ipykernel # 如之前未装过
    python -m ipykernel install --user --name=env1 --display-name="超人 (迪迦)"

    此时如果按图 1 点 Jupyter Kernel...,应能看见刚创建的这个「超人 (迪迦)」kernel(可能要 vs code 重连才刷新出来)。但选这个 kernel 会用登录结点的 python。

  2. 在计算结点启动 jupyter lab server:

    shell 复制代码
    # 在计算结点上
    conda activate env1 # 激活 jupyter lab 所在虚拟环境
    jupyter lab # 启动

    一串输出中包含:

    复制代码
    (...其它...)
    [I 2025-11-09 16:10:21.531 ServerApp] Jupyter Server 2.14.1 is running at:
    [I 2025-11-09 16:10:21.531 ServerApp] http://localhost:8888/lab
    (...其它...)

    表明 jupyter lab 的端口是 8888

  3. vs code 创建 notebook:此时 vs code 是远程连去学校登录结点(中某个代码目录)的,在 vs code 界面中 Ctrl + Shift + P 呼出命令界面,打 Create: New Jupyter Notebook 就能创建;再 Ctrl + S 保存、顺便给 notebook 起名。

  4. 选 kernel:在 notebook 界面,如图 1,「Select Kernel」->「Existing Jupyter Server...」(而不是「Jupyte Kernel...」),然后就让输入 server 的 URL(图 2),写:http://1.2.3.4:8888,其中 1.2.3.4 是计算结点的 IP,8888 是 jupyter 端口。回车让输 jupyter 密码(图 3);再回车让输 display name,随意;又回车,让选 kernel,此时应该也能看到刚才注册的「超人 (迪迦)」,选它。

Fig. 2
Fig. 3

这个 kernel 就可以用计算结点的 GPU 了。可在 notebook 内执行:

  • !nvidia-smi
  • import torch; torch.cuda_is_available()

验证。

References

  1. 用UTS gpu集群
  2. Save Remote Server Password #13671
相关推荐
weixin_446260858 小时前
HACO:面向动态部署环境的对冲式智能计算可靠多智能体调度框架
后端·python·flask
我的xiaodoujiao8 小时前
API 接口自动化测试详细图文教程学习系列32--Allure测试报告2
python·学习·测试工具·pytest
qetfw9 小时前
MXU:Tauri 2 + React 的 MaaFramework 跨平台 GUI 源码
前端·python·react.js·前端框架·开源项目·效率工具
用户8356290780519 小时前
Python 实现 Excel 页面布局与打印设置自动化
后端·python
GPUStack10 小时前
怎么优雅地在GPUStack上使用minerU?
ai·大模型·llm·gpu·vllm·gpu集群·gpustack
一次旅行10 小时前
Python+大模型端到端自动化日报系统
开发语言·python·自动化
天天爱吃肉821810 小时前
【电源拆解:跟着问答逐一认识开关适配器PCB元器件】
大数据·人工智能·python·功能测试·嵌入式硬件·汽车
_Jimmy_10 小时前
AI应用开发工程师面试题库
人工智能·python·深度学习·机器学习·知识图谱
用户83562907805110 小时前
Python 实现 Excel 命名范围(Named Range)的创建与管理
后端·python
dreamer_839910 小时前
AI智能合同比对系统:从零搭建实战教程
人工智能·python