营销型的物流网站模板下载,阳江公司网站建设,建立一个小型网站多少钱,公司做的局域网网站怎么登陆前言
深度学习跑代码的时候#xff0c;需要跑很多个对比实验#xff0c;要么开多个窗口并行执行代码#xff0c;要么就写在一个 .sh 文件里面顺序执行#xff0c;前面一种并行执行多个任务出结果很慢#xff0c;而后一种如果想添加任务或者删除某个任务就得全部停止…前言
深度学习跑代码的时候需要跑很多个对比实验要么开多个窗口并行执行代码要么就写在一个 .sh 文件里面顺序执行前面一种并行执行多个任务出结果很慢而后一种如果想添加任务或者删除某个任务就得全部停止查了一圈发现市面上似乎没有队列执行代码的工具。
LucQ
用一晚上和一早上折腾写出了这个软件 githubLinux User Command Queue.
Linux user command queueUsage: lucq [OPTIONS]Options:-m, --mode MODE Run mode (cli or exec) [default: cli]-a, --add ADD Add one command [default: null]-r, --remove REMOVE Remove one command [default: null]-l, --list List all commands-c, --clean Clean database-h, --help Print help-V, --version Print version准备
需要两个窗口可以是独立的两个 terminal也可以是两个 tmux。
第一个窗口
在第一个窗口执行命令
lucq --mode exec这就会启动一个程序等待用户提交任务并执行
第二个窗口
和前面一样我们的所有操作都是基于 lucq 这个程序的这里我们做测试提交一个 ls 命令
lucq --add ls或者长一点的 python 文件命令用双引号扩起来
lucq --add test.py -a 1如果需要使用特定的 python 虚拟环境或者其他任何环境可以使用 --executor 选项
lucq --add test.py --executor /home/test/venv/bin/python查看进度
命令提交完成后第一个窗口中的程序自动会按照我们提交的顺序开始执行命令并记录运行时间我们可以通过 --list 命令查看
lucq --listS | Jobs
o | id[1], user[test], add_time[2023-10-14 15:41:21], used_time[00:00:10], command[test.py]
o | id[2], user[test], add_time[2023-10-14 15:41:22], used_time[00:00:10], command[test.py]
o | id[3], user[test], add_time[2023-10-14 15:41:22], used_time[00:00:10], command[test.py]
o | id[4], user[test], add_time[2023-10-14 15:46:45], used_time[00:00:10], command[test.py -a 1]
o | id[5], user[test], add_time[2023-10-14 15:47:29], used_time[00:00:10], command[test.py -a 1]
o | id[6], user[test], add_time[2023-10-14 15:47:35], used_time[00:00:10], command[test.py -a 1]
r | id[7], user[test], add_time[2023-10-14 15:47:36], used_time[00:00:00], command[test.py -a 1]
x | id[8], user[test], add_time[2023-10-14 15:48:48], used_time[00:00:00], command[test.py -a 1]
x | id[9], user[test], add_time[2023-10-14 15:49:01], used_time[00:00:00], command[test.py -a 1]其中 o 代表执行完毕r 代表正在执行x 代表未执行e 代表执行错误。
删除任务
如果我们发现某个代码有错误需要从队列中删除可以使用命令
lucq --remove 9这个 9 通过 --list 命令查询获得 id 写入即可
清除数据库
lucq 使用了 sqlite 作为数据库后台有时候历史命令太长可以使用命令重置数据库
lucq --clean