type
status
date
slug
summary
tags
category
icon
password
深度学习任务中由于各种依赖,为每个项目创建一个合理的环境非常重要。下面是我workflow 的常用命令。
  1. 要查看所有的 Conda 环境
conda env list
  1. 创建Conda环境
conda create -n env_name python=python版本 -y
比如我在复现ConvNeXt,我的命名方式是:ConvNext_python3.8_torch1.8_cuda11.1
-n--name 后面跟随的是创建的新环境的名称
-y 是一个确认参数,它告诉 Conda 在进行任何更改之前不要询问用户的确认
  1. 激活环境
推荐conda activate 来激活 Conda 环境,它适用于较新版本的 Conda。而 source activate 是旧版本 Conda 的命令。
  1. 删除某一conda环境(这会删除原始的环境及其所有包)
conda remove --name env_name --all
  1. 有时间环境命名不满意,可以先克隆环境
conda create --name new_env_name --clone old_env_name (这条命令会创建一个新的环境,其中包含与旧环境相同的所有包。)
然后在删除旧的环境
conda remove --name old_env_name --all
💡
有时我们会遇到想将整个虚拟环境保存到制定目录来共享,比如在局域网内,或者在团队开发机间共享。此时我们可以把conda的虚拟环境创建到指定目录下。
只需要在创建环境时使用--prefix参数制定环境所在的文件夹即可,比如我们想在/root/envs/路径下创建刚刚我们创建过得myenv(只做演示,不用操作)。
conda create --prefix /root/envs/myenv python=3.9
想要激活保存在制定目录下的conda虚拟环境也十分简单,直接将环境名替换成所在文件夹就行。
conda activate /root/envs/myenv
换源
安装包如: conda install tqdm
 
 
python代码debug的方法(jupyer)
pdb(Python Debugger)是Python的官方调试器,用于帮助开发者逐步执行代码,检查变量值,评估表达式,以及调试程序
.下面列出了一些常用的pdb命令及其举例说明:
  1. l(ist): 显示当前的代码。
      • 使用方法: 当你在调试会话中时,键入l来查看当前行的代码上下文。
  1. n(ext): 执行下一行代码。
      • 使用方法: 当你想继续执行下一行代码时,键入n
  1. c(ontinue): 继续执行,直到遇到下一个断点。
      • 使用方法: 如果你想继续执行到下一个断点或程序结束,键入c
  1. b(reak): 在指定的行号或函数上设置断点。
      • 使用方法: 要在第10行设置断点,键入b 10。要在函数my_func上设置断点,键入b my_func
  1. s(tep): 步入函数或方法。
      • 使用方法: 如果当前行调用了某个函数,并且你想进入那个函数内部查看,键入s
  1. p(rint): 打印变量的值。
      • 使用方法: 要查看变量var的值,键入p var
  1. q(uit): 退出调试器。
      • 使用方法: 当你想结束调试会话时,键入q
  1. a(rgs): 打印当前函数的参数。
      • 使用方法: 当你在函数内部并想查看传递给该函数的参数时,键入a
  1. r(eturn): 继续执行,直到当前函数返回。
      • 使用方法: 如果你想快速运行到当前函数的结束点,键入r
  1. j(ump): 将当前行跳转到指定的行号。
      • 使用方法: 要跳转到第15行,键入j 15
  1. h(elp): 查看命令的帮助文档。
      • 使用方法: 要查看特定命令的帮助,例如break,键入h break。要查看所有命令的帮助,键入h
要开始使用pdb,你需要在你的代码中导入它并在希望开始调试的地方调用pdb.set_trace()。这样,当Python执行到这一行时,它会自动进入pdb调试环境。例如:
在这个过程中,你可能会发现由于列表中包含了一个字符串,所以在计算乘积时出错了。通过使用上述pdb命令,你可以逐步检查和理解代码的执行流程,从而找到并解决问题
在实际的开发环境中,你可能会使用更高级的工具,比如IDE内置的调试器,它们通常也是基于pdb。但是了解pdb的基本命令对于快速调试或在没有IDE的环境中调试非常有用。
 
 
 
 
Ubuntu20.04配置CUDA、cuDNN、TensorRT现代C++新特性(局部梳理)