diff --git a/debug/accuracy_tools/atat/README.md b/debug/accuracy_tools/atat/README.md index c2ec06e99565d028da6e713c111aa5cb61efece6..6a1fbb473c21c3a922d781a52a300818d03a063c 100644 --- a/debug/accuracy_tools/atat/README.md +++ b/debug/accuracy_tools/atat/README.md @@ -12,6 +12,7 @@ MindStudio精度调试工具(ascend_training_accuracy_tools),简称atat, | 版本 | 发布日期 | 支持PyTorch版本 | 下载链接 | 校验码 | | ----- | ---------- | ------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | + | 0.0.3 | 2024-06-11 | 1.11.0/2.0/2.1/2.2 | [ascend_training_accuracy_tools-0.0.3-py3-none-any.whl](https://ptdbg.obs.myhuaweicloud.com/att/0.0/ascend_training_accuracy_tools-0.0.3-py3-none-any.whl) | f46d9714704859e2d67861a65bbb3c76b0a250cf6e238b978b5b959ab1fe125a | | 0.0.2 | 2024-05-23 | 1.11.0/2.0/2.1/2.2 | [ascend_training_accuracy_tools-0.0.2-py3-none-any.whl](https://ptdbg.obs.myhuaweicloud.com/att/0.0/ascend_training_accuracy_tools-0.0.2-py3-none-any.whl) | 2e35809bde559e9c4d2f16a02ccde779ed9e436bb65fded0b7ebaf6ac2c88d93 | | 0.0.1 | 2024-03-15 | 1.11.0/2.0/2.1 | [ascend_training_accuracy_tools-0.0.1-py3-none-any.whl](https://ptdbg.obs.myhuaweicloud.com/att/0.0/ascend_training_accuracy_tools-0.0.1-py3-none-any.whl) | 5801510d4e827e4859bc9a5aca021e4d30c2ea42d60a4c8ad0c2baab1b7782c9 | diff --git a/debug/accuracy_tools/atat/config/README.md b/debug/accuracy_tools/atat/config/README.md index b1ce8886b58d715b8fde56cccf08497237b8310f..6ea94f2fb46cf9af021ef213334668d42dc1fd47 100644 --- a/debug/accuracy_tools/atat/config/README.md +++ b/debug/accuracy_tools/atat/config/README.md @@ -6,15 +6,16 @@ ### **通用配置参数** -| 参数名 | 说明 | 是否必选 | -| ---------------- | ------------------------------------------------------------ | -------- | -| task | dump的任务类型,str类型。可取值"free_benchmark"(无标杆比对)、"statistics"(仅dump API统计信息,默认值)、"tensor"(dump API统计信息和完全复刻整网的API运行情况的真实数据)、"overflow_check"(溢出检测)。配置示例:"task": "tensor"。根据task参数取值的不同,可以配置不同场景参数,详见:“**task配置为free_benchmark**”,“**task配置为statistics**”,“**task配置为tensor**”,“**task配置为overflow_check**”。 | 否 | -| dump_path | 设置dump数据目录路径,str类型。配置示例:"dump_path": "./dump_path"。 | 是 | -| rank | 指定对某张卡上的数据进行dump,list[int]类型,默认未配置(表示dump所有卡的数据),须根据实际卡的Rank ID配置。应配置为大于等于0的整数,且须根据实际卡的Rank ID配置,若所配置的值大于实际训练所运行的卡的Rank ID,则dump数据为空,比如当前环境Rank ID为0到7,实际训练运行0到3卡,此时若配置Rank ID为4或不存在的10等其他值,此时dump数据为空。配置示例:"rank": [1]。 | 否 | -| step | 指定dump某个step的数据,list[int]类型,默认未配置,表示dump所有step数据。dump特定step时,须指定为训练脚本中存在的step。step为list格式,可配置逐个step,例如:"step": [0,1,2]。 | 否 | -| level | dump级别,str类型,根据不同级别dump不同数据。可取值"L0"(dump module模块级精度数据,仅PyTorch场景支持,使用背景详见“**模块级精度数据dump说明**”)、"L1"(dump API级精度数据,默认值)、"L2"(dump kernel级精度数据,仅MindSpore场景支持)、"mix"(dump module模块级和API级精度数据)。配置示例:"level": "L1"。 | 否 | -| seed | 随机种子数,int类型,默认值为:1234。通过固定随机数保证模型的输入或输出一致,可固定的随机数详见“**固定随机数范围**”。配置示例:"seed": 1234。 | 否 | -| is_deterministic | 确定性计算模式,bool类型。可取值true(开启)或false(关闭),默认关闭。配置示例:"is_deterministic": true。
即使在相同的硬件和输入下,API多次执行的结果也可能不同,开启确定性计算是为了保证在相同的硬件和输入下,API多次执行的结果相同。
确定性计算会导致API执行性能降低,建议在发现模型多次执行结果不同的情况下开启。
rnn类算子、ReduceSum、ReduceMean等算子可能与确定性计算存在冲突,若开启确定性计算后多次执行的结果不相同,则考虑存在这些算子。 | 否 | +| 参数名 | 说明 | 是否必选 | +| ----------------- | ------------------------------------------------------------ | -------- | +| task | dump的任务类型,str类型。可取值"free_benchmark"(无标杆比对)、"statistics"(仅dump API统计信息,默认值)、"tensor"(dump API统计信息和完全复刻整网的API运行情况的真实数据)、"overflow_check"(溢出检测)。配置示例:"task": "tensor"。根据task参数取值的不同,可以配置不同场景参数,详见:“**task配置为free_benchmark**”,“**task配置为statistics**”,“**task配置为tensor**”,“**task配置为overflow_check**”。 | 否 | +| dump_path | 设置dump数据目录路径,str类型。配置示例:"dump_path": "./dump_path"。 | 是 | +| rank | 指定对某张卡上的数据进行dump,list[int]类型,默认未配置(表示dump所有卡的数据),须根据实际卡的Rank ID配置。应配置为大于等于0的整数,且须根据实际卡的Rank ID配置,若所配置的值大于实际训练所运行的卡的Rank ID,则dump数据为空,比如当前环境Rank ID为0到7,实际训练运行0到3卡,此时若配置Rank ID为4或不存在的10等其他值,此时dump数据为空。配置示例:"rank": [1]。 | 否 | +| step | 指定dump某个step的数据,list[int]类型,默认未配置,表示dump所有step数据。dump特定step时,须指定为训练脚本中存在的step。step为list格式,可配置逐个step,例如:"step": [0,1,2]。 | 否 | +| level | dump级别,str类型,根据不同级别dump不同数据。可取值"L0"(dump module模块级精度数据,仅PyTorch场景支持,使用背景详见“**模块级精度数据dump说明**”)、"L1"(dump API级精度数据,默认值)、"L2"(dump kernel级精度数据,仅MindSpore场景支持)、"mix"(dump module模块级和API级精度数据)。配置示例:"level": "L1"。 | 否 | +| seed | 随机种子数,int类型,默认值为:1234。通过固定随机数保证模型的输入或输出一致,可固定的随机数详见“**固定随机数范围**”。配置示例:"seed": 1234。 | 否 | +| is_deterministic | 确定性计算模式,bool类型。可取值true(开启)或false(关闭),默认关闭。配置示例:"is_deterministic": true。
即使在相同的硬件和输入下,API多次执行的结果也可能不同,开启确定性计算是为了保证在相同的硬件和输入下,API多次执行的结果相同。
确定性计算会导致API执行性能降低,建议在发现模型多次执行结果不同的情况下开启。
rnn类算子、ReduceSum、ReduceMean等算子可能与确定性计算存在冲突,若开启确定性计算后多次执行的结果不相同,则考虑存在这些算子。 | 否 | +| enable_dataloader | 自动控制开关,bool类型。可取值True(开启)或False(关闭),默认为False。配置为True后自动识别step参数指定的迭代,并在该迭代执行完成后退出训练,此时start、stop和step函数可不配置,开启该开关要求训练脚本是通过torch.utils.data.dataloader方式加载数据。 | 否 | ### task配置为free_benchmark @@ -90,6 +91,7 @@ task配置为free_benchmark时,开启**无标杆比对**,在NPU环境下通 "level": "L1", "seed": 1234, "is_deterministic": false, + "enable_dataloader": true, "free_benchmark": { "scope": [], @@ -117,6 +119,7 @@ task配置为free_benchmark时,开启**无标杆比对**,在NPU环境下通 "level": "L1", "seed": 1234, "is_deterministic": false, + "enable_dataloader": true, "statistics": { "scope": [], @@ -138,6 +141,7 @@ task配置为free_benchmark时,开启**无标杆比对**,在NPU环境下通 "level": "L1", "seed": 1234, "is_deterministic": false, + "enable_dataloader": true, "tensor": { "scope": [], @@ -159,6 +163,7 @@ task配置为free_benchmark时,开启**无标杆比对**,在NPU环境下通 "level": "L1", "seed": 1234, "is_deterministic": false, + "enable_dataloader": true, "overflow_check": { "overflow_nums": 1