Discarded Configurations in Later Versions

ge.exec.dataInputsShapeRange

This parameter has been discarded. Do not use it.

Sets the shape range of dynamic input. If a graph has two data inputs, the configuration example is as follows:

std::map<ge::AscendString, ge::AscendString> ge_options = {{"ge.exec.deviceId", "0"},
      {"ge.graphRunMode", "1"},
      {"ge.exec.dynamicGraphExecuteMode", "dynamic_execute"},
      {"ge.exec.dataInputsShapeRange", "[128 ,3~5, 2~128, -1],[ 128 ,3~5, 2~128, -1]"}};
  • Set it in the format: "[n1, c1, h1, w1],[n2, c2, h2, w2]" (for example, "[8~20, 3, 5, –1],[5, 3~9, 10, –1]"). If node names are not configured, the first pair of brackets ([]) denotes the first input node. Separate the nodes with commas (,). If INPUT_SHAPE_RANGE is set based on the index, the index attribute must be set sequentially from 0 for data nodes.
  • The size of a static dimension is specified by a determinant value. The size range of a dynamic dimension is specified by using a tilde (~). A dynamic dimension without size range specified is denoted by –1.
  • For a scalar input, enclose its shape range in square brackets ([]).
  • Assume that your graph has three inputs and only the first one has a static shape; the static shape must be specified in the options field.

    {"ge.exec.dataInputsShapeRange", "[3,3,4,10], [-1,3,2~1000,-1],[-1,-1,-1,-1]"}};

  • If no node name is specified, nodes are stored in the index sequence by default. The following is an example:

    xxx_0, xxx_1, xxx_2, ...

    The content following the underscore (_) is the sequence index of a node in the network script. Nodes are arranged in alphabetical order of the index. If the number of nodes is greater than 10, the sequence is xxx_0 > xxx_10 > xxx_2 > xxx_3. In the network script, the node with index 10 is placed before the node with index 2. As a result, the defined shape range does not match the input node.

    To avoid this problem, when the number of input nodes is greater than 10, you are advised to specify node names in the network script. Consequently, nodes are named with specified names to associate the shape range.

  • If this option and ge.dynamicDims are both configured as follows:
    std::map<ge::AscendString, ge::AscendString> ge_options = 
         {{"ge.inputShape", "data:1,1,40,-1;label:1,-1;mask:-1,-1" },
          {"ge.dynamicDims", "20,20,1,1;40,40,2,2;80,60,4,4"},
            xxx
          {"ge.exec.dataInputsShapeRange", "[128, 3~5, 2~128, -1],[ 128 ,3~5, 2~128, -1]"}};

    The priority of ge.dynamicDims (dynamic dimension size profiles) is higher than that of ge.exec.dataInputsShapeRange (dynamic shape range).

Mandatory/Optional: optional

Effective level: graph

ge.exec.dynamicGraphExecuteMode

This parameter has been discarded. Do not use it.

Sets the execution mode, applicable to the dynamic input scenario. The value is dynamic_execute.

Mandatory/Optional: optional

Effective level: graph

ge.graphMemoryMaxSize

This parameter will be discarded in later versions. Do not use it.

Sets the network static memory size and maximum dynamic memory size. The value varies according to the network size. The unit is byte and the value range is [0, 256 × 1024 × 1024 × 1024] or [0, 274877906944]. Due to chip hardware performance restrictions, the sum of ge.graphMemoryMaxSize and ge.variableMemoryMaxSize must not exceed 31 GB. If this parameter is not set, the default value 26 GB is used.

Mandatory/Optional: optional

Effective level: global, session, and graph

ge.opSelectImplmode

The function of this parameter is no longer evolved and will be discarded in later versions. You are advised to use ge.exec.op_precision_mode.

Sets the operator implementation mode. Certain operators built in the AI processor can be implemented in either high-precision or high-performance mode at model build time.

In high-precision mode, Taylor's theorem or Newton's method is used to improve operator precision with float16 input. In high-performance mode, the optimal performance is implemented without affecting the network precision (float16).

Parameter values:

  • high_precision: High-precision mode.

    This option sets the operator implementation mode by using the built-in configuration file, which is stored in ${INSTALL_DIR}/opp/op_impl/built-in/ai_core/tbe/impl_mode/high_precision.ini.

    To ensure compatibility, this argument takes effect only for the operator list in the high_precision.ini file. This list can be used to control the effective scope of operators and ensure that the network models of earlier versions are not affected.

  • high_performance (default): high-performance mode.

    This option sets the operator implementation mode by using the built-in configuration file, which is stored in ${INSTALL_DIR}/opp/built-in/op_impl/ai_core/tbe/impl_mode/high_performance.ini.

    To ensure compatibility, this argument takes effect only for the operator list in the high_performance.ini file. This list can be used to control the effective scope of operators and ensure that the network models of earlier versions are not affected.

  • high_precision_for_all: High-precision mode.

    This option sets the operator implementation mode by using the built-in configuration file, which is stored in ${INSTALL_DIR}/opp/built-in/op_impl/ai_core/tbe/impl_mode/high_precision_for_all.ini. The list in this file may be updated with the version.

    This implementation mode may cause incompatibility. If an operator in the new software package sets the implementation mode (that is, an implementation mode is added for a certain operator in the configuration file), the performance of the earlier network model that uses the high_precision_for_all mode may deteriorate.

  • high_performance_for_all: High-performance mode.

    This option sets the operator implementation mode by using the built-in configuration file, which is stored in ${INSTALL_DIR}/opp/built-in/op_impl/ai_core/tbe/impl_mode/high_performance_for_all.ini. The list in this file may be updated with the version.

    This implementation mode may cause incompatibility. If an operator in the new software package sets the implementation mode (that is, an implementation mode is added for a certain operator in the configuration file), the precision of the earlier network model that uses the high_performance_for_all mode may deteriorate.

The preceding implementation modes are distinguished based on dtype of the operator. Replace ${INSTALL_DIR} with the CANN component directory. For example, if the installation is performed by the root user, the default file storage path is /usr/local/Ascend/cann.

Configuration example:

{"ge.opSelectImplmode", "high_performance"};

Mandatory/Optional: optional

Effective level: global

ge.optypelistForImplmode

Lists the operator types. The operators in the list use the mode specified by the ge.opSelectImplmode parameter.

Restrictions:

  • The operators in the list use the mode specified by ge.opSelectImplmode, which is either high_precision or high_performance. Use commas (,) to separate operators.
  • This parameter must be used together with ge.opSelectImplmode and takes effect only for specified operators. For other operators, the default implementation mode is used. For example, ge.opSelectImplmode is set to high_precision, and ge.optypelistForImplmode is set to Pooling or SoftmaxV2. The configuration example indicates that the high-precision mode is used only for the Pooling and SoftmaxV2 operators. For operators whose precision modes are not specified, the default implementation mode is used.

Mandatory/Optional: optional

Effective level: global

ge.shape_generalized_build_mode

This parameter will be discarded in later versions. Do not use it.

Mandatory/Optional: optional

Effective level: graph

ge.variableMemoryMaxSize

This parameter will be discarded in later versions. Do not use it.

Sets the variable memory size. The value varies according to the network size. The unit is byte and the value range is [0, 256 × 1024 × 1024 × 1024] or [0, 274877906944]. Due to chip hardware performance restrictions, the sum of ge.graphMemoryMaxSize and ge.variableMemoryMaxSize must not exceed 31 GB. If this parameter is not set, the default value 5 GB is used.

Mandatory/Optional: optional

Effective level: global, session, and graph