步骤 #7:工作区转换为数据集
在一段时间内迭代工作区后,工作区的部分或全部可能准备好转换为数据集。与大多数其他数据集创建过程类似,我们可以使用作业结果目录来暂存位置之间的数据移动 - 在以下示例中,我们到目前为止一直在使用的工作区将成为新数据集的来源。
从高层次来看,这里的目标是结合我们目前分别使用的一些不同工作流程
将工作区挂载到作业中
将数据复制到作业结果目录中
将作业结果目录转换为数据集
我们可以简单地复制数据或完全移动数据 - 考虑这个问题的一个好方法是,如果数据需要再次迭代到另一个不同的数据集中,则复制数据;如果数据永远不需要在只读数据集上下文之外进行交互,则移动数据。对于此作业示例,数据将被移动以避免不必要的数据重复。
$ ngc batch run --name "move-data-out-of-workspace" --preempt RUNONCE --min-timeslice 0s --total-runtime 0s --instance dgxa100.80g.1.norm --commandline "mv /mount/workspace/* /results" --result /results --image "nvidia/pytorch:22.04-py3" --workspace workspace-from-cli:/mount/workspace:RW
--------------------------------------------------
Job Information
Id: 2873764
Name: move-data-out-of-workspace
Number of Replicas: 1
Job Type: BATCH
Submitted By: Joseph Handzik
Job Container Information
Docker Image URL: nvidia/pytorch:22.04-py3
Job Commands
Command: mv /mount/workspace/* /results
Dockerfile Image Entrypoint: False
Datasets, Workspaces and Results
Workspace ID: JyrRwRmXQCuptjLaCFumkQ
Workspace Name: workspace-from-cli
Workspace Mount Point: /mount/workspace
Workspace Mount Mode: RW
Result Mount Point: /results
Job Resources
Instance Type: dgxa100.80g.1.norm
Instance Details: 1 GPU, 30 CPU, 244 GB System Memory
ACE: nv-launchpad-bc-sjc-ace
Team: nvbc-tme
Job Status
Created at: 2022-05-03 20:33:05 UTC
Status: STARTING
Status Type: OK
Preempt Class: RUNONCE
--------------------------------------------------
与其他部分一样,检查 ngc batch list
的输出,查看此作业的状态是否变为 FINISHED_SUCCESS
,这将表明我们可以继续。
$ ngc batch list
+---------+----------+----------------------------+----------+------------------+----------+----------------+
| Id | Replicas | Name | Team | Status | Duration | Status Details |
+---------+----------+----------------------------+----------+------------------+----------+----------------+
| 2873764 | 1 | move-data-out-of-workspace | nvbc-tme | FINISHED_SUCCESS | 0:03:05 | |
| 2873341 | 1 | load-linux-into-workspace | nvbc-tme | FINISHED_SUCCESS | 0:02:01 | |
| 2870152 | 1 | aws-dl-cli | nvbc-tme | FINISHED_SUCCESS | 0:00:21 | |
+---------+----------+----------------------------+----------+------------------+----------+----------------+
再次检查工作区大小 - 它应该为 0 字节,因为所有数据都已从中复制出来。
$ ngc workspace list --owned
+------------------------+--------------------+-------------+----------------------+------------------+--------+---------------------+-------+------+
| Id | Name | Description | ACE | Creator Username | Shared | Created Date | Owned | Size |
+------------------------+--------------------+-------------+----------------------+------------------+--------+---------------------+-------+------+
| JyrRwRmXQCuptjLaCFumkQ | workspace-from-cli | | nv-launchpad-bc-sjc- | Joseph Handzik | No | 2022-05-02 19:34:40 | Yes | 0 B |
| | | | ace | | | UTC | | |
| a6CxaJmmQgK1OIcXR8-d5A | s3-demo-workspace | | nv-launchpad-bc-sjc- | Joseph Handzik | No | 2022-04-19 19:29:12 | Yes | 0 B |
| | | | ace | | | UTC | | |
+------------------------+--------------------+-------------+----------------------+------------------+--------+---------------------+-------+------+
我们将像之前一样转换上一个作业的结果目录,并明确命名它以表明它与其他数据集的创建方式有何不同。
$ ngc dataset convert --from-result 2873764 linux-kernel-from-workspace
Dataset with ID: '99967' created in ACE: 'nv-launchpad-bc-sjc-ace'.
最后运行 ngc dataset list
将确认新数据集按预期存在。
$ ngc dataset list --owned
+--------------------+------------+--------------------+--------------------+------------------+--------+-----------+-----------+--------------+-------+---------+
| Id | Integer Id | Name | Description | ACE | Shared | Size | Status | Created Date | Owned | Pre-pop |
+--------------------+------------+--------------------+--------------------+------------------+--------+-----------+-----------+--------------+-------+---------+
| 8brma-E4RX6xVMmpP7 | 99967 | linux-kernel-from- | | nv-launchpad-bc- | No | 1.02 GB | COMPLETED | 2022-05-03 | Yes | No |
| OfpQ | | workspace | | sjc-ace | | | | 20:45:49 UTC | | |
| r3KPjT13TgCFw3a8Jv | 99885 | s3-dl-from-cli | | nv-launchpad-bc- | No | 260.82 MB | COMPLETED | 2022-05-02 | Yes | No |
| ljow | | | | sjc-ace | | | | 17:29:25 UTC | | |
| D9xMj6VNR- | 99209 | linux-kernel-from- | | nv-launchpad-bc- | No | 1.03 GB | COMPLETED | 2022-04-19 | Yes | No |
| OitmadRHwFig | | web-ui | | sjc-ace | | | | 17:27:47 UTC | | |
| cHCMiESgRVeduwq8vF | 99164 | linux-kernel-from- | | nv-launchpad-bc- | No | 1.03 GB | COMPLETED | 2022-04-18 | Yes | No |
| fIRQ | | cli | | sjc-ace | | | | 21:11:38 UTC | | |
| CzgFjq__SSqAb46hSj | 99150 | linux-nvbug-triage | | nv-launchpad-bc- | No | 1.03 GB | COMPLETED | 2022-04-18 | Yes | No |
| k5Nw | | | | sjc-ace | | | | 14:47:47 UTC | | |
| a5LuVPZPQhO7SUWMIz | 98828 | linux-kernel | My favorite kernel | nv-launchpad-bc- | No | 1.03 GB | COMPLETED | 2022-04-14 | Yes | No |
| cpZw | | | | sjc-ace | | | | 22:32:50 UTC | | |
+--------------------+------------+--------------------+--------------------+------------------+--------+-----------+-----------+--------------+-------+---------+
要在 Web UI 中完成从工作区到数据集的数据迁移,请再次从Base Command 仪表板开始,然后单击创建作业按钮。

按如下方式填充创建作业。
从列表中选择您的 ACE。
在 INSTANCE 表中选择 dgxa100.80g.1.norm。
选择 WORKSPACES 选项卡 - 单击
workspace-from-web-ui
旁边的框,并为其挂载点键入/mount/workspace
,确保挂载模式为RW
。在“数据输出”字段中输入
/results
。选择
nvidia/pytorch
容器。选择
22.04-py3
的标签值。对于命令,复制以下内容
mv /mount/workspace/* /results
表单的其余部分可以保留默认值。
要验证是否选择了正确的选项,请使用下面屏幕截图中的值检查屏幕上的 ngc batch run
命令(--name
参数会有所不同,--ace
和 --org
参数也可能有所不同)。准备就绪后,单击页面右上角附近的启动作业按钮。

作业不应花费太长时间运行 - 假设 ACE 相对空闲,大约 5 分钟。您可能需要刷新页面以验证作业状态是否为 Finished Success
。单击新完成的作业。

导航到结果选项卡以验证数据是否已从工作区移出。

要将结果目录转换为数据集,请单击页面右上角附近的垂直省略号,然后单击转换结果按钮。

将出现一个对话框 - 在名称字段中输入 s3-dl-from-workspace
,然后单击转换按钮。

短时间后,用于创建数据集的作业的结果目录将变为空,这表明数据集转换已执行。单击导航窗格中的数据集链接,就在先前使用的作业链接下方。

新数据集应显示在数据集页面顶部数据行上的表格中。
