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.

opr_io_dump_text_out.h 15 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311
  1. /**
  2. * \file src/plugin/test/opr_io_dump_text_out.h
  3. * MegEngine is Licensed under the Apache License, Version 2.0 (the "License")
  4. *
  5. * Copyright (c) 2014-2021 Megvii Inc. All rights reserved.
  6. *
  7. * Unless required by applicable law or agreed to in writing,
  8. * software distributed under the License is distributed on an
  9. * "AS IS" BASIS, WITHOUT ARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  10. */
  11. #pragma once
  12. namespace {
  13. const char* EXPECTED_TEXT_OUT_REC[3] = {
  14. // rec level 0
  15. R"OUTPUT(
  16. var3 produced: name=var3 layout={1(1) Float32} owner_opr=opr2{ImmutableTensor} opr2
  17. deps:
  18. val: [2]min=2 max=2 mean=2 l2=2 sd=N/A s
  19. var1 produced: name=var1 layout={2(3),3(1) Float32} owner_opr=opr0{Host2DeviceCopy} opr0
  20. deps:
  21. val: [2.352, 0.1114, -0.2721, 0.7569, -0.2438, ...]min=-0.272 max=2.35 mean=0.471 l2=1.02 sd=0.994 s
  22. var17 produced: name=var17 layout={2(3),3(1) Float32} owner_opr=opr16{Elemwise} opr16
  23. deps:
  24. [i0]var1: [2.352, 0.1114, -0.2721, 0.7569, -0.2438, ...] s
  25. val: [2.352, 0.1114, 0, 0.7569, 0, ...]min=0 max=2.35 mean=0.557 l2=1.01 sd=0.924 s
  26. var11 produced: name=var11 layout={1(3),3(1) Float32} owner_opr=opr10{Subtensor} opr10
  27. deps:
  28. [i0]var1: [2.352, 0.1114, -0.2721, 0.7569, -0.2438, ...] s
  29. [i1]var5: <host value[s]> [0] s
  30. [i2]var7: <host value[s]> [1] s
  31. val: [2.352, 0.1114, -0.2721]min=-0.272 max=2.35 mean=0.731 l2=1.37 sd=1.42 s
  32. var13 produced: name=var13 layout={2(0),3(1) Float32} owner_opr=opr12{Broadcast} opr12
  33. deps:
  34. [i0]var11: [2.352, 0.1114, -0.2721] s
  35. [i1]var9: <host value[s]> [2, 3] s
  36. val: [2.352, 0.1114, -0.2721, 2.352, 0.1114, ...]min=-0.272 max=2.35 mean=0.731 l2=1.37 sd=1.27 s
  37. var15 produced: name=var15 layout={2(3),3(1) Float32} owner_opr=opr14{Elemwise} opr14
  38. deps:
  39. [i0]var3: [2] s
  40. [i1]var13: [2.352, 0.1114, -0.2721, 2.352, 0.1114, ...] s
  41. val: [4.352, 2.111, 1.728, 4.352, 2.111, ...]min=1.73 max=4.35 mean=2.73 l2=2.97 sd=1.27 s
  42. var19 produced: name=var19 layout={2(3),3(1) Float32} owner_opr=opr18{Elemwise} opr18
  43. deps:
  44. [i0]var15: [10.24, 0.2352, 0, 3.294, 0, ...] s
  45. [i1]var17: [2.352, 0.1114, 0, 0.7569, 0, ...] s
  46. val: [10.24, 0.2352, 0, 3.294, 0, ...]min=0 max=10.2 mean=2.33 l2=4.39 sd=4.08 s
  47. var3 produced: name=var3 layout={1(1) Float32} owner_opr=opr2{ImmutableTensor} opr2
  48. deps:
  49. val: [2]min=2 max=2 mean=2 l2=2 sd=N/A s
  50. var1 produced: name=var1 layout={2(3),3(1) Float32} owner_opr=opr0{Host2DeviceCopy} opr0
  51. deps:
  52. val: [0.05521, 0.724, 1.134, -0.2697, -1.545, ...]min=-1.54 max=1.13 mean=-0.105 l2=0.895 sd=0.974 s
  53. var17 produced: name=var17 layout={2(3),3(1) Float32} owner_opr=opr16{Elemwise} opr16
  54. deps:
  55. [i0]var1: [0.05521, 0.724, 1.134, -0.2697, -1.545, ...] s
  56. val: [0.05521, 0.724, 1.134, 0, 0, ...]min=0 max=1.13 mean=0.319 l2=0.55 sd=0.491 s
  57. var11 produced: name=var11 layout={1(3),3(1) Float32} owner_opr=opr10{Subtensor} opr10
  58. deps:
  59. [i0]var1: [0.05521, 0.724, 1.134, -0.2697, -1.545, ...] s
  60. [i1]var5: <host value[s]> [0] s
  61. [i2]var7: <host value[s]> [1] s
  62. val: [0.05521, 0.724, 1.134]min=0.0552 max=1.13 mean=0.638 l2=0.778 sd=0.545 s
  63. var13 produced: name=var13 layout={2(0),3(1) Float32} owner_opr=opr12{Broadcast} opr12
  64. deps:
  65. [i0]var11: [0.05521, 0.724, 1.134] s
  66. [i1]var9: <host value[s]> [2, 3] s
  67. val: [0.05521, 0.724, 1.134, 0.05521, 0.724, ...]min=0.0552 max=1.13 mean=0.638 l2=0.778 sd=0.487 s
  68. var15 produced: name=var15 layout={2(3),3(1) Float32} owner_opr=opr14{Elemwise} opr14
  69. deps:
  70. [i0]var3: [2] s
  71. [i1]var13: [0.05521, 0.724, 1.134, 0.05521, 0.724, ...] s
  72. val: [2.055, 2.724, 3.134, 2.055, 2.724, ...]min=2.06 max=3.13 mean=2.64 l2=2.68 sd=0.487 s
  73. var19 produced: name=var19 layout={2(3),3(1) Float32} owner_opr=opr18{Elemwise} opr18
  74. deps:
  75. [i0]var15: [0.1135, 1.972, 3.556, 0, 0, ...] s
  76. [i1]var17: [0.05521, 0.724, 1.134, 0, 0, ...] s
  77. val: [0.1135, 1.972, 3.556, 0, 0, ...]min=0 max=3.56 mean=0.94 l2=1.66 sd=1.5 s
  78. var3 produced: name=var3 layout={1(1) Float32} owner_opr=opr2{ImmutableTensor} opr2
  79. deps:
  80. val: [2]min=2 max=2 mean=2 l2=2 sd=N/A s
  81. var1 produced: name=var1 layout={2(3),3(1) Float32} owner_opr=opr0{Host2DeviceCopy} opr0
  82. deps:
  83. val: [-0.5069, 0.4525, 0.1695, -0.02793, -0.1907, ...]min=-0.507 max=1.32 mean=0.203 l2=0.616 sd=0.637 s
  84. var17 produced: name=var17 layout={2(3),3(1) Float32} owner_opr=opr16{Elemwise} opr16
  85. deps:
  86. [i0]var1: [-0.5069, 0.4525, 0.1695, -0.02793, -0.1907, ...] s
  87. val: [0, 0.4525, 0.1695, 0, 0, ...]min=0 max=1.32 mean=0.324 l2=0.574 sd=0.52 s
  88. var11 produced: name=var11 layout={1(3),3(1) Float32} owner_opr=opr10{Subtensor} opr10
  89. deps:
  90. [i0]var1: [-0.5069, 0.4525, 0.1695, -0.02793, -0.1907, ...] s
  91. [i1]var5: <host value[s]> [0] s
  92. [i2]var7: <host value[s]> [1] s
  93. val: [-0.5069, 0.4525, 0.1695]min=-0.507 max=0.453 mean=0.0384 l2=0.404 sd=0.493 s
  94. var13 produced: name=var13 layout={2(0),3(1) Float32} owner_opr=opr12{Broadcast} opr12
  95. deps:
  96. [i0]var11: [-0.5069, 0.4525, 0.1695] s
  97. [i1]var9: <host value[s]> [2, 3] s
  98. val: [-0.5069, 0.4525, 0.1695, -0.5069, 0.4525, ...]min=-0.507 max=0.453 mean=0.0384 l2=0.404 sd=0.441 s
  99. var15 produced: name=var15 layout={2(3),3(1) Float32} owner_opr=opr14{Elemwise} opr14
  100. deps:
  101. [i0]var3: [2] s
  102. [i1]var13: [-0.5069, 0.4525, 0.1695, -0.5069, 0.4525, ...] s
  103. val: [1.493, 2.453, 2.17, 1.493, 2.453, ...]min=1.49 max=2.45 mean=2.04 l2=2.08 sd=0.441 s
  104. var19 produced: name=var19 layout={2(3),3(1) Float32} owner_opr=opr18{Elemwise} opr18
  105. deps:
  106. [i0]var15: [0, 1.11, 0.3678, 0, 0, ...] s
  107. [i1]var17: [0, 0.4525, 0.1695, 0, 0, ...] s
  108. val: [0, 1.11, 0.3678, 0, 0, ...]min=0 max=2.87 mean=0.724 l2=1.26 sd=1.13 s
  109. var3 produced: name=var3 layout={1(1) Float32} owner_opr=opr2{ImmutableTensor} opr2
  110. deps:
  111. val: [2]min=2 max=2 mean=2 l2=2 sd=N/A s
  112. var1 produced: name=var1 layout={2(3),3(1) Float32} owner_opr=opr0{Host2DeviceCopy} opr0
  113. deps:
  114. val: [-0.03637, 2.111, 0.3236, -0.4861, -2.071, ...]min=-2.07 max=2.11 mean=0.0589 l2=1.25 sd=1.37 s
  115. var17 produced: name=var17 layout={2(3),3(1) Float32} owner_opr=opr16{Elemwise} opr16
  116. deps:
  117. [i0]var1: [-0.03637, 2.111, 0.3236, -0.4861, -2.071, ...] s
  118. val: [0, 2.111, 0.3236, 0, 0, ...]min=0 max=2.11 mean=0.491 l2=0.897 sd=0.822 s
  119. var11 produced: name=var11 layout={1(3),3(1) Float32} owner_opr=opr10{Subtensor} opr10
  120. deps:
  121. [i0]var1: [-0.03637, 2.111, 0.3236, -0.4861, -2.071, ...] s
  122. [i1]var5: <host value[s]> [0] s
  123. [i2]var7: <host value[s]> [1] s
  124. val: [-0.03637, 2.111, 0.3236]min=-0.0364 max=2.11 mean=0.799 l2=1.23 sd=1.15 s
  125. var13 produced: name=var13 layout={2(0),3(1) Float32} owner_opr=opr12{Broadcast} opr12
  126. deps:
  127. [i0]var11: [-0.03637, 2.111, 0.3236] s
  128. [i1]var9: <host value[s]> [2, 3] s
  129. val: [-0.03637, 2.111, 0.3236, -0.03637, 2.111, ...]min=-0.0364 max=2.11 mean=0.799 l2=1.23 sd=1.03 s
  130. var15 produced: name=var15 layout={2(3),3(1) Float32} owner_opr=opr14{Elemwise} opr14
  131. deps:
  132. [i0]var3: [2] s
  133. [i1]var13: [-0.03637, 2.111, 0.3236, -0.03637, 2.111, ...] s
  134. val: [1.964, 4.111, 2.324, 1.964, 4.111, ...]min=1.96 max=4.11 mean=2.8 l2=2.95 sd=1.03 s
  135. var19 produced: name=var19 layout={2(3),3(1) Float32} owner_opr=opr18{Elemwise} opr18
  136. deps:
  137. [i0]var15: [0, 8.675, 0.7518, 0, 0, ...] s
  138. [i1]var17: [0, 2.111, 0.3236, 0, 0, ...] s
  139. val: [0, 8.675, 0.7518, 0, 0, ...]min=0 max=8.68 mean=1.77 l2=3.59 sd=3.42 s
  140. var3 produced: name=var3 layout={1(1) Float32} owner_opr=opr2{ImmutableTensor} opr2
  141. deps:
  142. val: [2]min=2 max=2 mean=2 l2=2 sd=N/A s
  143. var1 produced: name=var1 layout={5(4),4(1) Float32} owner_opr=opr0{Host2DeviceCopy} opr0
  144. deps:
  145. val: [-1.199, -1.02, 1.098, -1.472, -0.3848, ...]min=-2.24 max=1.25 mean=-0.347 l2=1.04 sd=1.01 s
  146. var17 produced: name=var17 layout={5(4),4(1) Float32} owner_opr=opr16{Elemwise} opr16
  147. deps:
  148. [i0]var1: [-1.199, -1.02, 1.098, -1.472, -0.3848, ...] s
  149. val: [0, 0, 1.098, 0, 0, ...]min=0 max=1.25 mean=0.262 l2=0.471 sd=0.402 s
  150. var11 produced: name=var11 layout={1(4),4(1) Float32} owner_opr=opr10{Subtensor} opr10
  151. deps:
  152. [i0]var1: [-1.199, -1.02, 1.098, -1.472, -0.3848, ...] s
  153. [i1]var5: <host value[s]> [0] s
  154. [i2]var7: <host value[s]> [1] s
  155. val: [-1.199, -1.02, 1.098, -1.472]min=-1.47 max=1.1 mean=-0.648 l2=1.21 sd=1.18 s
  156. var13 produced: name=var13 layout={5(0),4(1) Float32} owner_opr=opr12{Broadcast} opr12
  157. deps:
  158. [i0]var11: [-1.199, -1.02, 1.098, -1.472] s
  159. [i1]var9: <host value[s]> [5, 4] s
  160. val: [-1.199, -1.02, 1.098, -1.472, -1.199, ...]min=-1.47 max=1.1 mean=-0.648 l2=1.21 sd=1.05 s
  161. var15 produced: name=var15 layout={5(4),4(1) Float32} owner_opr=opr14{Elemwise} opr14
  162. deps:
  163. [i0]var3: [2] s
  164. [i1]var13: [-1.199, -1.02, 1.098, -1.472, -1.199, ...] s
  165. val: [0.8006, 0.9802, 3.098, 0.5279, 0.8006, ...]min=0.528 max=3.1 mean=1.35 l2=1.69 sd=1.05 s
  166. var19 produced: name=var19 layout={5(4),4(1) Float32} owner_opr=opr18{Elemwise} opr18
  167. deps:
  168. [i0]var15: [0, 0, 3.401, 0, 0, ...] s
  169. [i1]var17: [0, 0, 1.098, 0, 0, ...] s
  170. val: [0, 0, 3.401, 0, 0, ...]min=0 max=3.86 mean=0.549 l2=1.23 sd=1.13 s
  171. )OUTPUT",
  172. // rec level 1
  173. R"OUTPUT(
  174. ==== begin lazy value recording
  175. var3 produced: name=var3 layout={1(1) Float32} owner_opr=opr2{ImmutableTensor} opr2
  176. deps:
  177. val: <see lazy value below> s
  178. var1 produced: name=var1 layout={2(3),3(1) Float32} owner_opr=opr0{Host2DeviceCopy} opr0
  179. deps:
  180. val: <see lazy value below> s
  181. var17 produced: name=var17 layout={2(3),3(1) Float32} owner_opr=opr16{Elemwise} opr16
  182. deps:
  183. [i0]var1: <see lazy value below> s
  184. val: <see lazy value below> s
  185. var11 produced: name=var11 layout={1(3),3(1) Float32} owner_opr=opr10{Subtensor} opr10
  186. deps:
  187. [i0]var1: <see lazy value below> s
  188. [i1]var5: <host value[s]> [0] s
  189. [i2]var7: <host value[s]> [1] s
  190. val: <see lazy value below> s
  191. var13 produced: name=var13 layout={2(0),3(1) Float32} owner_opr=opr12{Broadcast} opr12
  192. deps:
  193. [i0]var11: <see lazy value below> s
  194. [i1]var9: <host value[s]> [2, 3] s
  195. val: <see lazy value below> s
  196. var15 produced: name=var15 layout={2(3),3(1) Float32} owner_opr=opr14{Elemwise} opr14
  197. deps:
  198. [i0]var3: <see lazy value below> s
  199. [i1]var13: <see lazy value below> s
  200. val: <see lazy value below> s
  201. var19 produced: name=var19 layout={2(3),3(1) Float32} owner_opr=opr18{Elemwise} opr18
  202. deps:
  203. [i0]var15: <see lazy value below> s
  204. [i1]var17: <see lazy value below> s
  205. val: <see lazy value below> s
  206. ==== recorded values
  207. #0: opr2 opr2{ImmutableTensor}
  208. var3: name=var3 [2]min=2 max=2 mean=2 l2=2 sd=N/A
  209. #1: opr0 opr0{Host2DeviceCopy}
  210. var1: name=var1 [1.084, -1.283, -0.07331, 0.5371, -0.1351, ...]min=-1.28 max=1.08 mean=-0.17 l2=0.862 sd=0.925
  211. #2: opr16 opr16{Elemwise}
  212. var17: name=var17 [1.084, 0, 0, 0.5371, 0, ...]min=0 max=1.08 mean=0.27 l2=0.494 sd=0.453
  213. #3: opr10 opr10{Subtensor}
  214. var11: name=var11 [1.084, -1.283, -0.07331]min=-1.28 max=1.08 mean=-0.0909 l2=0.971 sd=1.18
  215. #4: opr12 opr12{Broadcast}
  216. var13: name=var13 [1.084, -1.283, -0.07331, 1.084, -1.283, ...]min=-1.28 max=1.08 mean=-0.0909 l2=0.971 sd=1.06
  217. #5: opr14 opr14{Elemwise}
  218. var15: name=var15 [3.084, 0.7167, 1.927, 3.084, 0.7167, ...]min=0.717 max=3.08 mean=1.91 l2=2.14 sd=1.06
  219. #6: opr18 opr18{Elemwise}
  220. var19: name=var19 [3.343, 0, 0, 1.656, 0, ...]min=0 max=3.34 mean=0.833 l2=1.52 sd=1.4
  221. ==== recorded values
  222. #0: opr2 opr2{ImmutableTensor}
  223. var3: name=var3 [2]min=2 max=2 mean=2 l2=2 sd=N/A
  224. #1: opr0 opr0{Host2DeviceCopy}
  225. var1: name=var1 [0.1777, -0.6396, -1.422, 0.9506, -0.2105, ...]min=-1.69 max=0.951 mean=-0.472 l2=1.02 sd=0.993
  226. #2: opr16 opr16{Elemwise}
  227. var17: name=var17 [0.1777, 0, 0, 0.9506, 0, ...]min=0 max=0.951 mean=0.188 l2=0.395 sd=0.38
  228. #3: opr10 opr10{Subtensor}
  229. var11: name=var11 [0.1777, -0.6396, -1.422]min=-1.42 max=0.178 mean=-0.628 l2=0.906 sd=0.8
  230. #4: opr12 opr12{Broadcast}
  231. var13: name=var13 [0.1777, -0.6396, -1.422, 0.1777, -0.6396, ...]min=-1.42 max=0.178 mean=-0.628 l2=0.906 sd=0.716
  232. #5: opr14 opr14{Elemwise}
  233. var15: name=var15 [2.178, 1.36, 0.5778, 2.178, 1.36, ...]min=0.578 max=2.18 mean=1.37 l2=1.52 sd=0.716
  234. #6: opr18 opr18{Elemwise}
  235. var19: name=var19 [0.387, 0, 0, 2.07, 0, ...]min=0 max=2.07 mean=0.41 l2=0.86 sd=0.828
  236. )OUTPUT",
  237. // rec level 2
  238. R"OUTPUT(
  239. ==== begin lazy value recording
  240. var3 produced: name=var3 layout={1(1) Float32} owner_opr=opr2{ImmutableTensor} opr2
  241. deps:
  242. val: <see lazy value below> s
  243. var1 produced: name=var1 layout={2(3),3(1) Float32} owner_opr=opr0{Host2DeviceCopy} opr0
  244. deps:
  245. val: <see lazy value below> s
  246. var17 produced: name=var17 layout={2(3),3(1) Float32} owner_opr=opr16{Elemwise} opr16
  247. deps:
  248. [i0]var1: <see lazy value below> s
  249. val: <see lazy value below> s
  250. var11 produced: name=var11 layout={1(3),3(1) Float32} owner_opr=opr10{Subtensor} opr10
  251. deps:
  252. [i0]var1: <see lazy value below> s
  253. [i1]var5: <host value[s]> [0] s
  254. [i2]var7: <host value[s]> [1] s
  255. val: <see lazy value below> s
  256. var13 produced: name=var13 layout={2(0),3(1) Float32} owner_opr=opr12{Broadcast} opr12
  257. deps:
  258. [i0]var11: <see lazy value below> s
  259. [i1]var9: <host value[s]> [2, 3] s
  260. val: <see lazy value below> s
  261. var15 produced: name=var15 layout={2(3),3(1) Float32} owner_opr=opr14{Elemwise} opr14
  262. deps:
  263. [i0]var3: <see lazy value below> s
  264. [i1]var13: <see lazy value below> s
  265. val: <see lazy value below> s
  266. var19 produced: name=var19 layout={2(3),3(1) Float32} owner_opr=opr18{Elemwise} opr18
  267. deps:
  268. [i0]var15: <see lazy value below> s
  269. [i1]var17: <see lazy value below> s
  270. val: <see lazy value below> s
  271. ==== recorded values
  272. #0: opr2 opr2{ImmutableTensor}
  273. var3: name=var3 [2]min=2 max=2 mean=2 l2=2 sd=N/A
  274. #1: opr0 opr0{Host2DeviceCopy}
  275. var1: name=var1 [-0.5252, 1.477, 0.00676, 0.9276, -0.5487, ...]min=-0.549 max=1.87 mean=0.534 l2=1.09 sd=1.04
  276. #2: opr16 opr16{Elemwise}
  277. var17: name=var17 [0, 1.477, 0.00676, 0.9276, 0, ...]min=0 max=1.87 mean=0.713 l2=1.04 sd=0.834
  278. #3: opr10 opr10{Subtensor}
  279. var11: name=var11 [-0.5252, 1.477, 0.00676]min=-0.525 max=1.48 mean=0.319 l2=0.905 sd=1.04
  280. #4: opr12 opr12{Broadcast}
  281. var13: name=var13 [-0.5252, 1.477, 0.00676, -0.5252, 1.477, ...]min=-0.525 max=1.48 mean=0.319 l2=0.905 sd=0.927
  282. #5: opr14 opr14{Elemwise}
  283. var15: name=var15 [1.475, 3.477, 2.007, 1.475, 3.477, ...]min=1.47 max=3.48 mean=2.32 l2=2.47 sd=0.927
  284. #6: opr18 opr18{Elemwise}
  285. var19: name=var19 [0, 5.134, 0.01357, 1.368, 0, ...]min=0 max=5.13 mean=1.71 l2=2.65 sd=2.22
  286. ==== recorded values
  287. #0: opr2 opr2{ImmutableTensor}
  288. var3: name=var3 [2]min=2 max=2 mean=2 l2=2 sd=N/A
  289. #1: opr0 opr0{Host2DeviceCopy}
  290. var1: name=var1 [0.2565, -0.1118, -0.1181, 1.641, 0.2665, ...]min=-0.118 max=1.64 mean=0.333 l2=0.69 sd=0.663
  291. #2: opr16 opr16{Elemwise}
  292. var17: name=var17 [0.2565, 0, 0, 1.641, 0.2665, ...]min=0 max=1.64 mean=0.371 l2=0.687 sd=0.634
  293. #3: opr10 opr10{Subtensor}
  294. var11: name=var11 [0.2565, -0.1118, -0.1181]min=-0.118 max=0.257 mean=0.00886 l2=0.175 sd=0.214
  295. #4: opr12 opr12{Broadcast}
  296. var13: name=var13 [0.2565, -0.1118, -0.1181, 0.2565, -0.1118, ...]min=-0.118 max=0.257 mean=0.00886 l2=0.175 sd=0.192
  297. #5: opr14 opr14{Elemwise}
  298. var15: name=var15 [2.257, 1.888, 1.882, 2.257, 1.888, ...]min=1.88 max=2.26 mean=2.01 l2=2.02 sd=0.192
  299. #6: opr18 opr18{Elemwise}
  300. var19: name=var19 [0.5788, 0, 0, 3.703, 0.5032, ...]min=0 max=3.7 mean=0.817 l2=1.54 sd=1.44
  301. )OUTPUT"};
  302. } // anonymous namespace
  303. // vim: syntax=cpp.doxygen foldmethod=marker foldmarker=f{{{,f}}}

MegEngine 安装包中集成了使用 GPU 运行代码所需的 CUDA 环境,不用区分 CPU 和 GPU 版。 如果想要运行 GPU 程序,请确保机器本身配有 GPU 硬件设备并安装好驱动。 如果你想体验在云端 GPU 算力平台进行深度学习开发的感觉,欢迎访问 MegStudio 平台