diff --git a/_static/ascend_actions.js b/_static/ascend_actions.js index 1209ae8..39f681e 100644 --- a/_static/ascend_actions.js +++ b/_static/ascend_actions.js @@ -78,7 +78,6 @@ $(document).ready(function () { // reset table. var cann_version_select = $('#cann-version'); cann_version_select.empty(); - cann_version_select.append(new Option("选择CANN的版本", "na")); $.reset_selection(cann_version_select); $('#driver-version').text("Driver"); $('#firmware-version').text("Firmware"); @@ -114,7 +113,7 @@ $(document).ready(function () { $("#col-values").on("click", ".values-element", function () { id = $(this).attr("id"); fields = id.split("-"); - if (id == "cann-version") + if (fields[1] == "version") return; $.reset_selection($(this)); @@ -189,14 +188,14 @@ $(document).ready(function () { var cann_name = parts[parts.length - 1]; // download and install driver - $('#codecell5').html('wget "' + driver_url + '"
sudo sh ' + driver_name + ' --full --install-for-all'); + $('#codecell6').html('wget "' + driver_url + '"\nsudo sh ' + driver_name + ' --full --install-for-all'); // download and install firmware - $('#codecell6').html('wget "' + firmware_url + '"
sudo sh ' + firmware_name + ' --full'); + $('#codecell8').html('wget "' + firmware_url + '"\nsudo sh ' + firmware_name + ' --full'); if (options['install_type'] === 'direct') { // download and install cann - $('#codecell8').html('wget "' + cann_url + '"
sh ' + cann_name + ' --install'); + $('#codecell11').html('wget "' + cann_url + '"\nsh ' + cann_name + ' --install'); // download and install kernel if exist. if (kernel_url == null) { @@ -207,7 +206,7 @@ $(document).ready(function () { var kernel_name = parts[parts.length - 1]; $('#install_kernel_section').show(); // download and install kernel - $('#codecell9').html('wget "' + kernel_url + '"
sh ' + kernel_name + ' --install'); + $('#codecell13').html('wget "' + kernel_url + '"\nsh ' + kernel_name + ' --install'); } $('#use_docker_section').hide(); @@ -232,7 +231,7 @@ docker run \\ -it ${docker_images[i]} bash `; - $('#codecell11').html(dockerCommand.trim()); + $('#codecell16').html(dockerCommand.trim()); break; } } @@ -244,4 +243,5 @@ docker run \\ $.update_os_verions(); $.change_options_visible(); $.update_cann_versions(); + }); diff --git a/_static/images/pytorch_wechat.jpg b/_static/images/pytorch_wechat.jpg index 1e7bc34..55f1e9c 100644 Binary files a/_static/images/pytorch_wechat.jpg and b/_static/images/pytorch_wechat.jpg differ diff --git a/_static/pytorch_actions.js b/_static/pytorch_actions.js index 98838a4..0f2167c 100644 --- a/_static/pytorch_actions.js +++ b/_static/pytorch_actions.js @@ -68,21 +68,21 @@ docker run \\ $('#install-pytorch-pip-section').hide(); $('#install-pytorch-docker-section').show(); } else if (options['install_type'] == "pip") { - $('#codecell1').html("# install torch
"); + $('#codecell1').html("# install torch\n"); if(options['arch'] == "aarch64") $('#codecell1').append("pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple torch==" + options['pytorch']); else $('#codecell1').append("pip3 install torch=="+options['pytorch']+"+cpu --index-url https://download.pytorch.org/whl/cpu"); - $("#codecell1").append("

# install torch-npu
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple torch-npu==" + options['pytorch_npu']); + $("#codecell1").append("\n\n# install torch-npu\npip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple torch-npu==" + options['pytorch_npu']); $('#install-pytorch-source-section').hide(); $('#install-pytorch-docker-section').hide(); $('#install-pytorch-pip-section').show(); } else { - $("#codecell4").html("# install requirements
conda install cmake ninja git

# get torch source
git clone -b v"+options['pytorch']+" --recursive https://github.com/pytorch/pytorch
cd pytorch
git submodule sync
git submodule update --init --recursive

# install torch
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt
export CMAKE_PREFIX_PATH=${CONDA_PREFIX:-\"$(dirname $(which conda))/../\"}
USE_CUDA=0 python setup.py develop"); + $("#codecell3").html("# install requirements\nconda install cmake ninja git\n\n# get torch source\ngit clone -b v"+options['pytorch']+" --recursive https://github.com/pytorch/pytorch\ncd pytorch\ngit submodule sync\ngit submodule update --init --recursive\n\n# install torch\npip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt\nexport CMAKE_PREFIX_PATH=${CONDA_PREFIX:-\"$(dirname $(which conda))/../\"}\nUSE_CUDA=0 python setup.py develop"); - $('#codecell4').append("

# get torch-npu source
git clone https://github.com/ascend/pytorch.git -b "+match_versions['npu_branch']+" --depth 1 pytorch_npu
cd pytorch_npu

# install torch-npu
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt
bash ci/build.sh --python=$(python --version 2>&1 | awk '{print $2}' | cut -d '.' -f 1,2)
pip install dist/torch_npu*.whl"); + $('#codecell3').append("\n\n# get torch-npu source\ngit clone https://github.com/ascend/pytorch.git -b "+match_versions['npu_branch']+" --depth 1 pytorch_npu\ncd pytorch_npu\n\n# install torch-npu\npip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt\nbash ci/build.sh --python=$(python --version 2>&1 | awk '{print $2}' | cut -d '.' -f 1,2)\npip install dist/torch_npu*.whl"); $('#install-pytorch-pip-section').hide(); $('#install-pytorch-docker-section').hide(); diff --git a/sources/ascend/quick_install.rst b/sources/ascend/quick_install.rst index 659656a..defd48f 100644 --- a/sources/ascend/quick_install.rst +++ b/sources/ascend/quick_install.rst @@ -3,9 +3,9 @@ 跟随指导,在您的机器上快速安装昇腾环境。 -系统要求 +1. 系统要求 ---------------- -前置检查 +1.1 前置检查 ^^^^^^^^^^^^^ 确认昇腾AI处理器已经安装妥当 @@ -19,8 +19,14 @@ uname -m && cat /etc/*release +确认Python版本 -软件要求 +.. code-block:: bash + + python --version + + +1.2 软件要求 ^^^^^^^^^^^^^ ======== ======================================== 软件 版本 @@ -30,13 +36,13 @@ Python 3.8, 3.9, 3.10 ======== ======================================== -环境安装 +2. 环境安装 ------------------ 根据您的需求,选择合适的软件包版本: -.. note:: +.. warning:: - 建议使用非root用户安装 + 以下文档需要使用非root用户进行安装安装 .. raw:: html @@ -87,8 +93,8 @@ Python 3.8, 3.9, 3.10 -验证安装(可选) ---------------------- -**验证驱动** - -确认您的驱动是否安装成功,可以通过以下命令验证:``npu-smi info`` -,若出现以下回显信息,说明驱动安装成功。 - -.. code-block:: bash - - +-------------------------------------------------------------------------------------------+ - | npu-smi 23.0.2 Version: 23.0.2 | - +----------------------+---------------+----------------------------------------------------+ - | NPU Name | Health | Power(W) Temp(C) Hugepages-Usage(page)| - | Chip | Bus-Id | AICore(%) Memory-Usage(MB) HBM-Usage(MB) | - +======================+===============+====================================================+ - | 0 xxx | OK | 0.0 40 0 / 0 | - | 0 | 0000:C1:00.0 | 0 882 / 15169 0 / 32768 | - +======================+===============+====================================================+ - - ... ... - -**验证固件** - -安装固件后,若系统出现如下关键回显信息,表示固件安装成功。 - -.. code-block:: bash - - Firmware package installed successfully! - -**验证CANN-toolkit** - -安装CANN-toolkit后,若系统出现以下关键回显信息,表示CANN-toolkit安装成功。 - -.. code-block:: bash - - Ascend-cann-toolkit install success. - -安装算子包后,若系统出现以下关键回显信息,表示算子包安装成功。 - -.. code-block:: bash - - Ascend-cann-kernels install success. - - -卸载 +3. 卸载 ---------- **卸载驱动** diff --git a/sources/pytorch/examples.rst b/sources/pytorch/examples.rst index 07456b1..8a09e47 100644 --- a/sources/pytorch/examples.rst +++ b/sources/pytorch/examples.rst @@ -7,13 +7,13 @@ 在运行下述示例之前,需要您已经安装了PyTorch-NPU环境,有关环境安装,请参考 :doc:`./install` -数据并行 +1. 数据并行 ----------------------- PyTorch的数据并行主要分为以下几种:DP、DDP以及FSDP(HSDP变种),接下来将简单描述在Ascend NPU场景下如何实现上述数据并行。 -DDP -^^^^^^ +1.1 DDP +^^^^^^^^^^ .. code-block:: python :linenos: @@ -83,8 +83,8 @@ DDP if __name__ == "__main__": main() -FSDP -^^^^^^ +1.2 FSDP +^^^^^^^^^^ .. code-block:: python :linenos: diff --git a/sources/pytorch/install.rst b/sources/pytorch/install.rst index 9965fbb..cbb8211 100644 --- a/sources/pytorch/install.rst +++ b/sources/pytorch/install.rst @@ -4,7 +4,7 @@ 跟随指导,安装在NPU上运行的PyTorch版本。 -选择需要安装的 PyTorch 版本 +1. 选择需要安装的 PyTorch 版本 ------------------------------ 准备安装 PyTorch: @@ -50,8 +50,12 @@ -安装 PyTorch +2. 安装 PyTorch ---------------- + +.. warning:: + + 如果使用了非CANN安装时的Python环境(如Conda),请确保CANN-toolkit依赖的Python包在该环境中已经 `安装 <../ascend/quick_install.html>`_ 。 .. raw:: html
@@ -78,21 +82,12 @@

备注

请确保已经根据上述表格建议安装了对应的CANN-toolkit版本以及相应的固件和驱动,并应用了CANN-toolkit环境变量。

-

环境依赖

-
    +

    2.1 环境依赖

    +
-
-

备注

-

如果使用Conda,请确保CANN-toolkit依赖的Python包在Conda环境中已经安装

-
-
-

警告

-

不建议您使用Conda提供的gcc,可能需要解决一些编译依赖问题,如果一定要使用,可参考以下命令:

-
-
conda install -c conda-forge libstdcxx-ng libgcc-ng gcc=9.4 gxx=9.4
+
  • Conda
  • +
    @@ -100,7 +95,7 @@

    请确认CXX11_ABI是关闭的,如果无法确定,建议显式关闭:

    export _GLIBCXX_USE_CXX11_ABI=0
    -

    构建

    +

    2.2 构建

    
                     
    @@ -108,7 +103,7 @@ -验证安装结果 +3. 验证安装结果 ------------------ .. code-block:: python diff --git a/sources/pytorch/quick_start.rst b/sources/pytorch/quick_start.rst index 1fab091..136bd2c 100644 --- a/sources/pytorch/quick_start.rst +++ b/sources/pytorch/quick_start.rst @@ -19,7 +19,7 @@ 下面的实例演示了如何使用NPU进行训练和推理任务: -单卡训练 +1. 单卡训练 ----------------------- 以下代码使用了cifar10数据集在NPU上训练模型(截取自 `PyTorch tutorials `_),请关注高亮的内容。 @@ -211,7 +211,7 @@ accuracy = 100 * float(correct_count) / total_pred[classname] print(f'Accuracy for class: {classname:5s} is {accuracy:.1f} %') -使用DeepSpeed多卡并行训练 +2. 使用DeepSpeed多卡并行训练 ------------------------------- 以下代码使用了cifar10数据集,使用DeepSpeed训练模型在多张NPU卡上进行模型训练(来自 `DeepSpeed Examples `_),自DeepSpeed v0.12.6之后,代码无需任何修改,即可自动检测NPU并进行训练。 @@ -220,7 +220,7 @@ :linenos: -使用Transforms进行模型微调 +3. 使用Transforms进行模型微调 --------------------------------- 以下代码使用了Transforms对LLM进行微调(来自 `transforms examples `_),自transforms xxx版本以及accelerator 0.21.0版本以后,代码无需任何修改,即可自动检测NPU并进行。 @@ -242,7 +242,7 @@ --do_eval \ --output_dir /tmp/test-clm -使用Diffusers进行模型微调 +4. 使用Diffusers进行模型微调 --------------------------------- 以下代码使用了Diffusers对文生图模型进行微调(来自 `diffusers examples `_),自diffusers v0.27.0版本以后,代码无需任何修改,即可自动检测NPU并进行。