From bcf61462225735f648c4ec2e9d2a859ded60d0d9 Mon Sep 17 00:00:00 2001 From: zihao-intuition Date: Thu, 5 Jun 2025 11:32:21 +0800 Subject: [PATCH 1/2] msadapter_doc MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit final ug_done ug format partial fix md format ug mend 、 fix MSAdapter download push --- .../msadapter_user_guide/constraints.md | 146 ++++++++ .../source_zh_cn/msadapter_user_guide/faq.md | 1 + .../msadapter_user_guide/images/compare.png | Bin 0 -> 148913 bytes .../msadapter_user_guide/images/image.png | Bin 0 -> 37364 bytes .../msadapter_user_guide/install.md | 39 ++ .../msadapter_user_guide/intro.md | 35 ++ .../source_zh_cn/msadapter_user_guide/llm.md | 6 + .../msadapter_user_guide/quick_start.md | 333 ++++++++++++++++++ 8 files changed, 560 insertions(+) create mode 100755 docs/msadapter/docs/source_zh_cn/msadapter_user_guide/constraints.md create mode 100755 docs/msadapter/docs/source_zh_cn/msadapter_user_guide/faq.md create mode 100755 docs/msadapter/docs/source_zh_cn/msadapter_user_guide/images/compare.png create mode 100755 docs/msadapter/docs/source_zh_cn/msadapter_user_guide/images/image.png create mode 100755 docs/msadapter/docs/source_zh_cn/msadapter_user_guide/install.md create mode 100755 docs/msadapter/docs/source_zh_cn/msadapter_user_guide/intro.md create mode 100755 docs/msadapter/docs/source_zh_cn/msadapter_user_guide/llm.md create mode 100755 docs/msadapter/docs/source_zh_cn/msadapter_user_guide/quick_start.md diff --git a/docs/msadapter/docs/source_zh_cn/msadapter_user_guide/constraints.md b/docs/msadapter/docs/source_zh_cn/msadapter_user_guide/constraints.md new file mode 100755 index 0000000000..ed52ada38e --- /dev/null +++ b/docs/msadapter/docs/source_zh_cn/msadapter_user_guide/constraints.md @@ -0,0 +1,146 @@ +# MSAadpter机制性约束 + +本文介绍MindSpore和PyTorch实现上的主要区别: + +1. 微分机制 +2. Dispatch机制 +3. Storage机制 +4. 静态编译机制 + +这些机制的不同,导致用户需要手动修改代码,或者部分功能暂时不支持。 + +## 微分机制 + +PyTorch 使用的是动态计算图,运算在代码执行时立即计算,正反向计算图在每次前向传播时动态构建。PyTorch微分为命令式反向微分,更符合面对对象编程的使用习惯。 + +MindSpore使用函数式自动微分的设计理念,提供更接近于数学语义的自动微分接口。MindSpore的微分可以简单理解为函数包装了一个模型,接口是一个函数,而PyTorch的接口是模型。 + +详情参考[MindSpore函数式微分](https://www.mindspore.cn/tutorials/zh-CN/master/beginner/autograd.html)。 + +由于两者底层设计的不同,MSAdapter不支持以下相关接口: + +- torch.Tensor.backward() +- torch.autograd.* + +部分相关接口PyTorch原始用法如下: + +```python +loss.backward() +``` + +```python +loss.backward(gradient_tensor) +``` + + +由于计算图的实现差异(包含命令式微分与函数式微分的差异),**反向计算以及正向计算需要用户手动进行如下修改**: + +原始PyTorch写法: + +```python +outputs = model(inputs) +loss = criterion(outputs, labels) +loss.backward() +optimizer.step() +``` + +MSAdapter修改后的写法: + +```python +from mindspore.ops import composite +from mindspore.common.api import _pynative_executor +def flag_func(): + pass +_pynative_executor.set_grad_flag(True) +_pynative_executor.new_graph(flag_func, inputs) +outputs = model(inputs) # 前向计算 +loss = criterion(outputs, labels) +_pynative_executor.end_graph(flag_func, loss, inputs) +grad_ = composite.GradOperation(True, True, True) +weights = model.trainable_params() +_pynative_executor.check_run(grad_, flag_func, weights, None, inputs) +_pynative_executor.grad(flag_func, grad_, weights, None, inputs, torch.ones_like(loss)) # 反向计算 +``` + +## Dispatch机制 + +`torch.dispatch` 是 PyTorch 中用于拦截和自定义张量操作的机制。它允许开发者在张量运算被调用时插入自己的逻辑,无论是为了调试、性能优化,还是实现特定领域的功能增强。这个特性是在 PyTorch 1.7中引入的,并且为高级用户提供了强大的能力来扩展PyTorch的功能。 + +- Dispatch机制:当用户执行任何张量操作(例如加法、乘法等)时,实际上都是通过PyTorch的dispatch机制进行的。该机制决定了哪个具体实现(CPU、CUDA等)应该被执行。 +- torch.Tensor的子类化:通过创建一个继承自torch.Tensor的新类,并使用@torch_dispatch装饰器,用户可以自定义这些操作的行为。 + +当前MindSpore Storage机制在规划设计中,未来会支持。当前MSAdatper暂时不支持以下相关接口: + +1. torch.Tensor.to() +2. torch自定义算子涉及dispatch部分 + +**以上接口需要用户手动修改,参考[快速入门](quick_start.md#torchtensorto)。** + +## Storage机制 + +`torch.Storage` 是 PyTorch 中用于存储和管理张量数据的基础类。它是单一类型的数据连续存储区域,是构成 torch.Tensor 的底层组件。每个 Tensor 都有一个对应的 Storage,它实际保存了张量中的元素。 + +- 单一数据类型:一个 Storage 只能包含一种数据类型(例如 float、int 等)。这有助于优化内存使用和计算效率。 +- 连续存储:所有元素在 Storage 中都是按顺序连续存放的,这样有利于高效访问和操作。 +- 共享数据:多个 Tensor 可以共享同一个 Storage,这对于需要视图(view)或切片(slice)操作时特别有用,因为它们可以避免数据的重复拷贝。 + +由于MindSpore暂时不支持storage特性,MSAdapter不支持以下相关接口: + +1. torch.TypedStorage +2. torch.untypedStorage +3. torch序列化反序列化(ckpt保存加载,包括safetensors) + +部分相关接口PyTorch原始用法如下: + +```python +torch.save(x, 'tensor.pt') # 保存张量 +torch.save(model, 'full_model.pt') # 保存模型结构和参数 +torch.save(model.state_dict(), 'model_params.pt') # 仅保存参数(轻量级) +``` + +```python +x_loaded = torch.load('tensor.pt') # 加载张量 +model.load_state_dict(torch.load('model_params.pt')) # 加载参数 +``` + +**MSAdapter已经支持torch.load,使用MindSpore 2.7.0后,MSAdapter将支持torch.save相关功能。** + +## 静态编译机制 + +### TorchDynamo机制的介绍 + +PyTorch 在其发展历程中引入了多种机制以提升性能和开发者的体验,其中 TorchDynamo 是一项旨在通过非侵入式的方法捕获 PyTorch 程序的图表示(graph representation),以便于优化和加速执行的技术。它是在 PyTorch 2.0中引入的一项重要特性,致力于提供一种更加高效、灵活的方式来优化模型训练和推理过程。 + +- 无侵入式的图捕捉:TorchDynamo 能够在不修改用户代码的情况下自动捕捉 PyTorch 模型的计算图。这意味着开发者无需手动重写或注解他们的代码来利用图捕捉的好处。 +- 动态形状支持:与传统的静态图捕捉不同,TorchDynamo 支持动态形状,这使得它非常适合处理输入尺寸变化的任务,如自然语言处理(NLP)和图像处理等领域的应用。 +- 后端灵活性:TorchDynamo 不仅限于生成一种特定类型的图。它可以将捕捉到的图传递给不同的后端进行进一步优化和执行,例如 TOSA、TVM 和 NNC 等。 +- 性能优化:通过图捕捉和后续的优化步骤,TorchDynamo 可以显著提高模型的执行效率,减少内存使用,并加速训练和推理速度。 + +### MindSpore动静统一的编程介绍 + +传统AI框架主要有两种编程执行形态,静态图模式和动态图模式。 + +- 动态图模式,能有效解决静态图的编程门槛高问题,由于程序是按照代码的编写顺序执行,不做整图编译优化,相对性能优化空间较少,特别是面向DSA等专有硬件的优化具有较大挑战。 +- 静态图模式,能有效感知神经网络各层算子间的关系,基于编译技术进行有效的编译优化以提升性能。但传统静态图需要开发者感知构图接口,组建或调试网络比较复杂,且难于与常用Python库、自定义Python函数进行穿插使用。 + +MindSpore基于Python构建神经网络的图结构,相比于传统的静态图模式,能有更易用、更灵活的表达能力。MindSpore创新性的构建源码转换能力,基于Python语句提取AST进行计算图构建,因此可以支持开发者使用的Python原生语法(条件/循环等)和其他操作,如元组(Tuple)、列表(List)以及Lambda表达来构建计算图,并对计算图进行自动微分。所以MindSpore能更好地兼容动态图和静态图的编程接口,在代码层面保持一致,如控制流写法等。 + +原生Python表达可基于Python控制流关键字,直接使能静态图模式的执行,使得动静态图的编程统一性更高。同时开发者基于MindSpore的接口,可以灵活的对Python代码片段进行动静态图模式控制。即可以将程序局部函数以静态图模式执行(mindspore.jit)而同时其他函数按照动态图模式执行。从而使得在与常用Python库、自定义Python函数进行穿插执行使用时,开发者可以灵活指定函数片段进行静态图优化加速,而不牺牲穿插执行的编程易用性。 + +由于两者设计上的不同,MSAdapter不支持以下相关接口: + +1. torch.fx相关 +2. torch.dynamo +3. torch.compile + +部分相关接口PyTorch原始用法如下: + +```python +compiled_model = torch.compile(model) +``` + +```python +traced_model = torch.fx.symbolic_trace(model) # 使用 fx.symbolic_trace 追踪计算图 +``` + +**此类接口由于MindSpore与PyTorch底层实现不同,MSAdapter暂不支持。** diff --git a/docs/msadapter/docs/source_zh_cn/msadapter_user_guide/faq.md b/docs/msadapter/docs/source_zh_cn/msadapter_user_guide/faq.md new file mode 100755 index 0000000000..32cce9075d --- /dev/null +++ b/docs/msadapter/docs/source_zh_cn/msadapter_user_guide/faq.md @@ -0,0 +1 @@ +# FAQ \ No newline at end of file diff --git a/docs/msadapter/docs/source_zh_cn/msadapter_user_guide/images/compare.png b/docs/msadapter/docs/source_zh_cn/msadapter_user_guide/images/compare.png new file mode 100755 index 0000000000000000000000000000000000000000..d4b6ef8a436ae120635ac5978718b11df85c9703 GIT binary patch literal 148913 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 WVCIR+Uc_;KMy_ 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

ke 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

nEGcp<#Or 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°sg5}s4r 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

hErT)G8G|()i2FS6A*XTVi2hSkhDW>bmdl(A0 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 literal 0 HcmV?d00001 diff --git a/docs/msadapter/docs/source_zh_cn/msadapter_user_guide/images/image.png b/docs/msadapter/docs/source_zh_cn/msadapter_user_guide/images/image.png new file mode 100755 index 0000000000000000000000000000000000000000..53bfadb49620eff9c5d55c55648fba68b44b4182 GIT binary patch literal 37364 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 Date: Tue, 24 Jun 2025 21:52:45 +0800 Subject: [PATCH 2/2] update --- .../msadapter_user_guide/constraints.md | 22 ++--- .../msadapter_user_guide/install.md | 33 ++++--- .../msadapter_user_guide/quick_start.md | 88 +++++++------------ 3 files changed, 56 insertions(+), 87 deletions(-) diff --git a/docs/msadapter/docs/source_zh_cn/msadapter_user_guide/constraints.md b/docs/msadapter/docs/source_zh_cn/msadapter_user_guide/constraints.md index ed52ada38e..52b947b4a5 100755 --- a/docs/msadapter/docs/source_zh_cn/msadapter_user_guide/constraints.md +++ b/docs/msadapter/docs/source_zh_cn/msadapter_user_guide/constraints.md @@ -41,25 +41,19 @@ loss.backward(gradient_tensor) outputs = model(inputs) loss = criterion(outputs, labels) loss.backward() -optimizer.step() ``` MSAdapter修改后的写法: ```python -from mindspore.ops import composite -from mindspore.common.api import _pynative_executor -def flag_func(): - pass -_pynative_executor.set_grad_flag(True) -_pynative_executor.new_graph(flag_func, inputs) -outputs = model(inputs) # 前向计算 -loss = criterion(outputs, labels) -_pynative_executor.end_graph(flag_func, loss, inputs) -grad_ = composite.GradOperation(True, True, True) -weights = model.trainable_params() -_pynative_executor.check_run(grad_, flag_func, weights, None, inputs) -_pynative_executor.grad(flag_func, grad_, weights, None, inputs, torch.ones_like(loss)) # 反向计算 +import mindspore +def forward_fn(inputs, labels): + outputs = model(inputs) + loss = criterion(outputs, labels) + return loss +grad_fn = mindspore.value_and_grad(forward_fn, None, weights=model.trainable_params()) + +loss, grads = grad_fn(inputs, labels) ``` ## Dispatch机制 diff --git a/docs/msadapter/docs/source_zh_cn/msadapter_user_guide/install.md b/docs/msadapter/docs/source_zh_cn/msadapter_user_guide/install.md index 1da18c511b..2df08aae95 100755 --- a/docs/msadapter/docs/source_zh_cn/msadapter_user_guide/install.md +++ b/docs/msadapter/docs/source_zh_cn/msadapter_user_guide/install.md @@ -9,31 +9,28 @@ pip install mindspore ``` -2. 安装MSAdapter: +2. 下载MSAdapter源码: - MSAdapter支持两种安装方式: + ``` bash + git clone https://openi.pcl.ac.cn/Openl/MSAdapter + ``` - 1. 源码安装:(推荐) +3. 安装MSAdapter: - ``` bash - git clone https://openi.pcl.ac.cn/Openl/MSAdapter - ``` + 1. 如果用户希望直接使用源码,设置如下环境环境变量: - 2. whl包安装: - - ``` bash - pip install msadapter*.whl + ``` bash + export $PYTHONPATH=your_workspace/MSAdapter/mindtorch ``` -3. 配置环境变量: - - - 如果使用了源码安装,配置如下环境变量: + 其中,your_workspace是git clone下载的目录。此方法不会影响用户的PyTorch使用。 + + 2. 如果用户希望以Python安装包的形式使用,进入MSAdapter目录,进行如下操作: - ``` bash - export $PYTHONPATH=your_workspace/MSAdapter/mindtorch + ```bash + pip install . ``` - 其中,your_workspace是git clone下载的目录。 - - 如果使用了whl包安装,配置PYTHONPATH环境变量到安装路径下的mindtorch文件夹。 + 直接安装会覆盖原始PyTorch的使用,如果希望使用两者,可以考虑直接使用源码。 -环境变量配置后,PyTorch的实际执行将替换为MSAdapter,后端则为MindSpore动态图模式。 \ No newline at end of file +安装完成后,PyTorch的实际执行将替换为MSAdapter,后端则为MindSpore动态图模式。 \ No newline at end of file diff --git a/docs/msadapter/docs/source_zh_cn/msadapter_user_guide/quick_start.md b/docs/msadapter/docs/source_zh_cn/msadapter_user_guide/quick_start.md index 2ef84a8610..fa71eda1a8 100755 --- a/docs/msadapter/docs/source_zh_cn/msadapter_user_guide/quick_start.md +++ b/docs/msadapter/docs/source_zh_cn/msadapter_user_guide/quick_start.md @@ -29,9 +29,9 @@ from torchvision import datasets, transforms class ToyModel(nn.Module): def __init__(self): super(ToyModel, self).__init__() - self.net1 = nn.Linear(10, 10) + self.net1 = nn.Linear(784, 64) self.relu = nn.ReLU() - self.net2 = nn.Linear(10, 5) + self.net2 = nn.Linear(64, 10) def forward(self, x): return self.net2(self.relu(self.net1(x))) @@ -44,9 +44,7 @@ def parse_args(): return parser.parse_args() def data_process(inputs, labels): - squeezed_tensor = inputs.squeeze(0).squeeze(0) - inputs = squeezed_tensor[:, :10] - labels = labels.repeat(28, 5) * (1/140) + inputs = inputs.view(inputs.size(0), -1) return inputs, labels def main(): @@ -108,9 +106,9 @@ MSAdapter已经兼容torch.nn.Module,无需修改。 class ToyModel(nn.Module): def __init__(self): super(ToyModel, self).__init__() - self.net1 = nn.Linear(10, 10) + self.net1 = nn.Linear(784, 64) self.relu = nn.ReLU() - self.net2 = nn.Linear(10, 5) + self.net2 = nn.Linear(64, 10) def forward(self, x): return self.net2(self.relu(self.net1(x))) ``` @@ -125,9 +123,7 @@ MSAdapter已经兼容基础数据集相关接口,无需修改。 ```python def data_process(inputs, labels): - squeezed_tensor = inputs.squeeze(0).squeeze(0) - inputs = squeezed_tensor[:, :10] - labels = labels.repeat(28, 5) * (1/140) + inputs = inputs.view(inputs.size(0), -1) return inputs, labels # 预处理函数 @@ -201,43 +197,33 @@ loss = criterion(outputs, labels).to('cuda') loss = criterion(outputs, labels) ``` -#### 前向计算 +#### 前向与反向计算 -由于MSAdapter需要调用显式的计算图,除了修改代码,还需要导入额外的依赖包。 +由于MSAdapter需要调用显式的计算图,除了修改代码,还需要导入MindSpore。 ```python -outputs = model(inputs) +outputs = model(inputs) # 前向调用不同 +loss = criterion(outputs, labels).to('cuda') # Tensor.to()问题不在此重述 +loss.backward() # 反向调用不同 ``` 修改如下: -```python -from mindspore.common.api import _pynative_executor -def flag_func(): - pass -_pynative_executor.set_grad_flag(True) -_pynative_executor.new_graph(flag_func, inputs) -outputs = model(inputs) -loss = criterion(outputs, labels) -_pynative_executor.end_graph(flag_func, loss, inputs) -``` - -#### 反向微分计算 - -由于MSAdapter不支持loss.backward()接口,使用的是MindSpore函数式反向微分。 +先预定义增反向计算函数 ```python -loss.backward() +import mindspore +def forward_fn(inputs, labels): + outputs = model(inputs) + loss = criterion(outputs, labels) + return loss +grad_fn = mindspore.value_and_grad(forward_fn, None, weights=model.trainable_params()) ``` -修改如下: +然后替换原始的PyTorch计算过程 ```python -from mindspore.ops import composite -grad_ = composite.GradOperation(True, True, True) -weights = model.trainable_params() -_pynative_executor.check_run(grad_, flag_func, weights, None, inputs) -_pynative_executor.grad(flag_func, grad_, weights, None, inputs, torch.ones_like(loss)) +loss, grads = grad_fn(inputs, labels) ``` ### MSAdapter适配后代码 @@ -252,15 +238,14 @@ import torch.nn as nn import torch.optim as optim from torch.utils.data import DataLoader from torchvision import datasets, transforms -from mindspore.ops import composite as C -from mindspore.common.api import _pynative_executor +import mindspore class ToyModel(nn.Module): def __init__(self): super(ToyModel, self).__init__() - self.net1 = nn.Linear(10, 10) + self.net1 = nn.Linear(784, 64) self.relu = nn.ReLU() - self.net2 = nn.Linear(10, 5) + self.net2 = nn.Linear(64, 10) def forward(self, x): return self.net2(self.relu(self.net1(x))) @@ -273,9 +258,7 @@ def parse_args(): return parser.parse_args() def data_process(inputs, labels): - squeezed_tensor = inputs.squeeze(0).squeeze(0) - inputs = squeezed_tensor[:, :10] - labels = labels.repeat(28, 5) * (1/140) + inputs = inputs.view(inputs.size(0), -1) return inputs, labels def main(): @@ -295,27 +278,22 @@ def main(): optimizer = optim.Adam(model.parameters(), lr=args.learning_rate) step = 0 + def forward_fn(inputs, labels): + outputs = model(inputs) + loss = criterion(outputs, labels) + return loss + grad_fn = mindspore.value_and_grad(forward_fn, None, weights=model.trainable_params()) + for epoch in range(args.epochs): model.train() for inputs, labels in train_loader: # 数据预处理,将数据集的数据转成需要的shape inputs, labels = data_process(inputs, labels) - # 将数据转到NPU处理 + optimizer.zero_grad() - # loss = criterion(outputs, labels).to(device) - def flag_func(): - pass - _pynative_executor.set_grad_flag(True) - _pynative_executor.new_graph(flag_func, inputs) - outputs = model(inputs) - loss = criterion(outputs, labels) - _pynative_executor.end_graph(flag_func, loss, inputs) - # loss.backward() - grad_ = C.GradOperation(True, True, True) - weights = model.trainable_params() - _pynative_executor.check_run(grad_, flag_func, weights, None, inputs) - _pynative_executor.grad(flag_func, grad_, weights, None, inputs, torch.ones_like(loss)) + loss, grads = grad_fn(inputs, labels) optimizer.step() + # 添加每个step的打印,用户可自行修改 print(f"step == {step}") step += 1 -- Gitee