You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

.clang-format 4.0 kB

5 years ago
5 years ago
5 years ago
5 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. ---
  2. Language: Cpp
  3. # BasedOnStyle: Google
  4. AccessModifierOffset: -1
  5. AlignAfterOpenBracket: Align
  6. AlignConsecutiveAssignments: false
  7. AlignConsecutiveDeclarations: false
  8. AlignEscapedNewlines: Left
  9. AlignOperands: true
  10. AlignTrailingComments: true
  11. AllowAllParametersOfDeclarationOnNextLine: true
  12. AllowShortBlocksOnASingleLine: false
  13. AllowShortCaseLabelsOnASingleLine: false
  14. AllowShortFunctionsOnASingleLine: Empty
  15. AllowShortIfStatementsOnASingleLine: true
  16. AllowShortLoopsOnASingleLine: true
  17. AlwaysBreakAfterDefinitionReturnType: None
  18. AlwaysBreakAfterReturnType: None
  19. AlwaysBreakBeforeMultilineStrings: true
  20. AlwaysBreakTemplateDeclarations: Yes
  21. BinPackArguments: true
  22. BinPackParameters: true
  23. BraceWrapping:
  24. AfterClass: false
  25. AfterControlStatement: false
  26. AfterEnum: false
  27. AfterFunction: false
  28. AfterNamespace: false
  29. AfterObjCDeclaration: false
  30. AfterStruct: false
  31. AfterUnion: false
  32. AfterExternBlock: false
  33. BeforeCatch: false
  34. BeforeElse: false
  35. IndentBraces: false
  36. SplitEmptyFunction: true
  37. SplitEmptyRecord: true
  38. SplitEmptyNamespace: true
  39. BreakBeforeBinaryOperators: None
  40. BreakBeforeBraces: Attach
  41. BreakBeforeInheritanceComma: false
  42. BreakInheritanceList: BeforeColon
  43. BreakBeforeTernaryOperators: true
  44. BreakConstructorInitializersBeforeComma: false
  45. BreakConstructorInitializers: BeforeColon
  46. BreakAfterJavaFieldAnnotations: false
  47. BreakStringLiterals: true
  48. ColumnLimit: 120
  49. CommentPragmas: '^ IWYU pragma:'
  50. CompactNamespaces: false
  51. ConstructorInitializerAllOnOneLineOrOnePerLine: true
  52. ConstructorInitializerIndentWidth: 4
  53. ContinuationIndentWidth: 4
  54. Cpp11BracedListStyle: true
  55. DisableFormat: false
  56. ExperimentalAutoDetectBinPacking: false
  57. FixNamespaceComments: true
  58. ForEachMacros:
  59. # - foreach
  60. - Q_FOREACH
  61. - BOOST_FOREACH
  62. IncludeBlocks: Preserve
  63. IncludeCategories:
  64. - Regex: '^<ext/.*\.h>'
  65. Priority: 2
  66. - Regex: '^<.*\.h>'
  67. Priority: 1
  68. - Regex: '^<.*'
  69. Priority: 2
  70. - Regex: '.*'
  71. Priority: 3
  72. IncludeIsMainRegex: '([-_](test|unittest))?$'
  73. IndentCaseLabels: true
  74. IndentPPDirectives: None
  75. IndentWidth: 2
  76. IndentWrappedFunctionNames: false
  77. JavaScriptQuotes: Leave
  78. JavaScriptWrapImports: true
  79. KeepEmptyLinesAtTheStartOfBlocks: false
  80. MacroBlockBegin: ''
  81. MacroBlockEnd: ''
  82. MaxEmptyLinesToKeep: 1
  83. NamespaceIndentation: None
  84. ObjCBinPackProtocolList: Never
  85. ObjCBlockIndentWidth: 2
  86. ObjCSpaceAfterProperty: false
  87. ObjCSpaceBeforeProtocolList: true
  88. PenaltyBreakAssignment: 2
  89. PenaltyBreakBeforeFirstCallParameter: 1
  90. PenaltyBreakComment: 300
  91. PenaltyBreakFirstLessLess: 120
  92. PenaltyBreakString: 1000
  93. PenaltyBreakTemplateDeclaration: 10
  94. PenaltyExcessCharacter: 1000000
  95. PenaltyReturnTypeOnItsOwnLine: 200
  96. PointerAlignment: Right
  97. RawStringFormats:
  98. - Language: Cpp
  99. Delimiters:
  100. - cc
  101. - CC
  102. - cpp
  103. - Cpp
  104. - CPP
  105. - 'c++'
  106. - 'C++'
  107. CanonicalDelimiter: ''
  108. BasedOnStyle: google
  109. - Language: TextProto
  110. Delimiters:
  111. - pb
  112. - PB
  113. - proto
  114. - PROTO
  115. EnclosingFunctions:
  116. - EqualsProto
  117. - EquivToProto
  118. - PARSE_PARTIAL_TEXT_PROTO
  119. - PARSE_TEST_PROTO
  120. - PARSE_TEXT_PROTO
  121. - ParseTextOrDie
  122. - ParseTextProtoOrDie
  123. CanonicalDelimiter: ''
  124. BasedOnStyle: google
  125. ReflowComments: true
  126. SortIncludes: true
  127. SortUsingDeclarations: true
  128. SpaceAfterCStyleCast: false
  129. SpaceAfterTemplateKeyword: true
  130. SpaceBeforeAssignmentOperators: true
  131. SpaceBeforeCpp11BracedList: false
  132. SpaceBeforeCtorInitializerColon: true
  133. SpaceBeforeInheritanceColon: true
  134. SpaceBeforeParens: ControlStatements
  135. SpaceBeforeRangeBasedForLoopColon: true
  136. SpaceInEmptyParentheses: false
  137. SpacesBeforeTrailingComments: 2
  138. SpacesInAngles: false
  139. SpacesInContainerLiterals: true
  140. SpacesInCStyleCastParentheses: false
  141. SpacesInParentheses: false
  142. SpacesInSquareBrackets: false
  143. Standard: Auto
  144. StatementMacros:
  145. - Q_UNUSED
  146. - QT_REQUIRE_VERSION
  147. TabWidth: 2
  148. UseTab: Never
  149. SortIncludes: false
  150. ...

图引擎模块(GE)是MindSpore的一个子模块,其代码由C++实现,位于前端模块ME和底层硬件之间,起到承接作用。图引擎模块以ME下发的图作为输入,然后进行一系列的深度图优化操作,最后输出一张可以在底层硬件上高效运行的图。GE针对昇腾AI处理器的硬件结构特点,做了特定的优化工作,以此来充分发挥出昇腾AI处理器的强大算力。在进行模型训练/推理时,GE会被自动调用而用户并不感知。GE主要由GE API和GE Core两部分组成,详细的架构图如下所示