跳转到主要内容

与Mila集群一起工作的工具

项目描述

milatools

milatools软件包提供了mila命令,旨在帮助连接和交互Mila集群。


警告

建议在本地机器上使用mila命令。在集群上运行它将因错误而失败


安装

要求Python >= 3.8

pip install milatools

或者,对于最新版本

pip install git+https://github.com/mila-iqia/milatools.git

安装milatools后,使用mila init开始

mila init

命令

mila init

交互式设置对Mila集群的访问。请准备好您的用户名和密码!

  • 为方便使用ssh mila设置SSH配置
  • 如果您还没有,设置公钥
  • 将您的公钥复制到集群以实现无密码认证
  • 在登录节点上设置公钥,以便能够ssh到计算节点
  • 新功能:添加一个特殊的SSH配置,以使用ssh mila-cpu直接连接到计算节点

mila docs/intranet

  • 使用mila docs <search terms>搜索Mila技术文档
  • 使用mila intranet <search terms>搜索Mila内部网

这两个命令都会打开一个浏览器窗口。如果没有给出搜索词,您将被带到主页。

mila 代码

将 VSCode 实例连接到计算节点。 mila 代码 首先使用 slurm 分配一个计算节点(您还可以使用 --alloc 传递 slurm 选项),然后使用适当的选项调用 code 命令以在分配的节点上启动远程编码会话。

您可以简单地按 Ctrl+C 终止进程以结束会话。

usage: mila code [-h] [--cluster {mila,cedar,narval,beluga,graham}] [--alloc ...]
                 [--command VALUE] [--job VALUE] [--node VALUE] [--persist]
                 PATH

positional arguments:
  PATH                  Path to open on the remote machine

options:
  -h, --help            show this help message and exit
  --alloc ...           Extra options to pass to slurm
  --cluster {mila,cedar,narval,beluga,graham}
                        Which cluster to connect to.
  --command VALUE       Command to use to start vscode (defaults to "code" or the value
                        of $MILATOOLS_CODE_COMMAND)
  --job VALUE           Job ID to connect to
  --node VALUE          Node to connect to
  --persist             Whether the server should persist or not

例如

mila code path/to/my/experiment

可以使用 --alloc 选项在分配节点时将额外的参数传递给 salloc(例如,使用 --alloc --gres=gpu:1 分配 1 个 GPU)。 --alloc 应该放在最后,因为它将接收其后的所有参数。

如果您已经在计算节点上有一个分配,您可以使用 --node NODENAME--job JOBID 选项连接到该节点。

mila 服务

mila 服务 的目的是使在计算节点上启动笔记本、日志服务器等并连接到它们变得更加容易。

usage: mila serve [-h] {connect,kill,list,lab,notebook,tensorboard,mlflow,aim} ...

positional arguments:
  {connect,kill,list,lab,notebook,tensorboard,mlflow,aim}
    connect             Reconnect to a persistent server.
    kill                Kill a persistent server.
    list                List active servers.
    lab                 Start a Jupyterlab server.
    notebook            Start a Jupyter Notebook server.
    tensorboard         Start a Tensorboard server.
    mlflow              Start an MLFlow server.
    aim                 Start an AIM server.

optional arguments:
  -h, --help            show this help message and exit

例如,要使用一个 GPU 启动 jupyterlab,您可以编写

mila serve lab --alloc --gres gpu:1

当然,您可以在 --alloc 之后写入任何 SLURM 参数。

结束连接将结束服务器,但可以使用 --persist 标志防止这种情况。在这种情况下,您可以写入 mila 服务连接 jupyter-lab 以重新连接到您的运行实例。使用 mila 服务列表mila 服务终止 查看和管理任何运行实例。

项目详细信息


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源分布

milatools-0.1.5.tar.gz (56.1 kB 查看哈希值)

上传时间

构建分布

milatools-0.1.5-py3-none-any.whl (64.7 kB 查看哈希值)

上传时间 Python 3

由以下机构支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面