弹性计算云 (EC2)#

创建实例#

创建新的 EC2 实例,带有 GPU、NVIDIA 驱动程序NVIDIA 容器运行时

NVIDIA 维护一个Amazon Machine Image (AMI),它预装了 NVIDIA 驱动程序和容器运行时,我们建议使用此镜像作为起点。

  1. 打开EC2 控制面板

  2. 选择 启动实例

  3. 在 AMI 选择框中搜索“nvidia”,然后切换到 AWS Marketplace AMIs 选项卡。

  4. 选择 NVIDIA GPU 优化型 AMI 并点击“选择”。然后,在新的弹出窗口中,选择 启动实例时订阅

  5. 密钥对 中选择您的 SSH 密钥(如果尚未创建,请先创建这些密钥)。

  6. 在网络设置下创建安全组(或选择现有的),该安全组允许通过端口 22 进行 SSH 访问,并允许端口 8888,8786,8787 访问 Jupyter 和 Dask。

  7. 选择 启动

连接到实例#

接下来我们需要连接到实例。

  1. 打开EC2 控制面板

  2. 找到您的 VM 并记下 公有 IP 地址

  3. 在您的终端中运行 ssh ubuntu@<ip address>

注意

如果您使用 AWS 控制台,请使用默认的 ubuntu 用户,以确保 NVIDIA 驱动程序在首次启动时安装。

安装 RAPIDS#

有几种方法可以用来安装 RAPIDS,您可以通过RAPIDS 版本选择器查看。

对于此示例,我们将运行 RAPIDS Docker 容器,因此我们需要知道最新容器的名称。在版本选择器上,在 Method 列中选择 Docker

然后复制显示的命令

docker pull nvcr.io/nvidia/rapidsai/notebooks:25.04-cuda12.8-py3.12
docker run --gpus all --rm -it \
    --shm-size=1g --ulimit memlock=-1 \
    -p 8888:8888 -p 8787:8787 -p 8786:8786 \
    nvcr.io/nvidia/rapidsai/notebooks:25.04-cuda12.8-py3.12

注意

如果在运行这些命令时看到“docker socket permission denied”错误,请尝试关闭并重新连接您的 SSH 窗口。这是因为您的用户在登录后才被添加到 docker 组中。

注意

如果在首次连接到 EC2 实例时看到“modprobe: FATAL: Module nvidia not found in directory /lib/modules/6.2.0-1011-aws”错误,请尝试注销并再次重新连接。

测试 RAPIDS#

要访问 Jupyter,请在浏览器中导航到 <VM ip>:8888

在 Python notebook 中,检查是否可以导入和使用像 cudf 这样的 RAPIDS 库。

In [1]: import cudf
In [2]: df = cudf.datasets.timeseries()
In [3]: df.head()
Out[3]:
                       id     name         x         y
timestamp
2000-01-01 00:00:00  1020    Kevin  0.091536  0.664482
2000-01-01 00:00:01   974    Frank  0.683788 -0.467281
2000-01-01 00:00:02  1000  Charlie  0.419740 -0.796866
2000-01-01 00:00:03  1019    Edith  0.488411  0.731661
2000-01-01 00:00:04   998    Quinn  0.651381 -0.525398

打开 cudf/10min.ipynb 并执行单元格,以进一步了解 cudf 如何工作。

当运行 Dask 集群时,您还可以访问 <VM ip>:8787 来监控 Dask 集群状态。

相关示例#

使用 RAPIDS 和 Dask 进行 HPO 基准测试

cloud/aws/ec2 data-storage/s3 workflow/randomforest workflow/hpo workflow/xgboost library/dask library/dask-cuda library/xgboost library/optuna library/sklearn library/dask-ml

使用 RAPIDS 和 Dask 进行 HPO 基准测试

使用 One Billion Row Challenge 测量性能

tools/dask-cuda data-format/csv library/cudf library/cupy library/dask library/pandas cloud/aws/ec2 cloud/aws/sagemaker cloud/azure/azure-vm cloud/azure/ml cloud/gcp/compute-engine cloud/gcp/vertex-ai

使用 One Billion Row Challenge 测量性能

使用 dask-ml 和 cuml 进行 HPO

dataset/airline library/numpy library/pandas library/xgboost library/dask library/dask-cuda library/dask-ml library/cuml cloud/aws/ec2 cloud/azure/azure-vm cloud/gcp/compute-engine cloud/ibm/virtual-server library/sklearn data-storage/s3 workflow/hpo

使用 dask-ml 和 cuml 进行 HPO