buildz 0.7.2__tar.gz → 0.7.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (409) hide show
  1. {buildz-0.7.2/buildz.egg-info → buildz-0.7.4}/PKG-INFO +1 -1
  2. {buildz-0.7.2 → buildz-0.7.4}/buildz/__init__.py +1 -1
  3. {buildz-0.7.2 → buildz-0.7.4}/buildz/base.py +29 -0
  4. buildz-0.7.4/buildz/gpuz/torch/multi_dict_middle.py +191 -0
  5. buildz-0.7.4/buildz/xf/__init__.py +21 -0
  6. buildz-0.7.4/buildz/xf/base.py +30 -0
  7. buildz-0.7.4/buildz/xf/cpp/Makefile +24 -0
  8. buildz-0.7.4/buildz/xf/cpp/README.txt +29 -0
  9. buildz-0.7.4/buildz/xf/cpp/clean.py +6 -0
  10. buildz-0.7.4/buildz/xf/cpp/loaderz/base.h +36 -0
  11. buildz-0.7.4/buildz/xf/cpp/loaderz/base_deal.h +28 -0
  12. buildz-0.7.4/buildz/xf/cpp/loaderz/buffer.cpp +88 -0
  13. buildz-0.7.4/buildz/xf/cpp/loaderz/buffer.h +57 -0
  14. buildz-0.7.4/buildz/xf/cpp/loaderz/callback.h +11 -0
  15. buildz-0.7.4/buildz/xf/cpp/loaderz/callback_demo.cpp +137 -0
  16. buildz-0.7.4/buildz/xf/cpp/loaderz/callback_demo.h +32 -0
  17. buildz-0.7.4/buildz/xf/cpp/loaderz/code.cpp +95 -0
  18. buildz-0.7.4/buildz/xf/cpp/loaderz/code.h +1 -0
  19. buildz-0.7.4/buildz/xf/cpp/loaderz/cxf.h +19 -0
  20. buildz-0.7.4/buildz/xf/cpp/loaderz/deal/dict.cpp +37 -0
  21. buildz-0.7.4/buildz/xf/cpp/loaderz/deal/dict.h +10 -0
  22. buildz-0.7.4/buildz/xf/cpp/loaderz/deal/kv.h +9 -0
  23. buildz-0.7.4/buildz/xf/cpp/loaderz/deal/list.cpp +32 -0
  24. buildz-0.7.4/buildz/xf/cpp/loaderz/deal/list.h +10 -0
  25. buildz-0.7.4/buildz/xf/cpp/loaderz/deal/listdict.cpp +39 -0
  26. buildz-0.7.4/buildz/xf/cpp/loaderz/deal/listdict.h +11 -0
  27. buildz-0.7.4/buildz/xf/cpp/loaderz/deal/lr.cpp +41 -0
  28. buildz-0.7.4/buildz/xf/cpp/loaderz/deal/lr.h +18 -0
  29. buildz-0.7.4/buildz/xf/cpp/loaderz/deal/lrval.cpp +43 -0
  30. buildz-0.7.4/buildz/xf/cpp/loaderz/deal/lrval.h +17 -0
  31. buildz-0.7.4/buildz/xf/cpp/loaderz/deal/next.cpp +24 -0
  32. buildz-0.7.4/buildz/xf/cpp/loaderz/deal/next.h +10 -0
  33. buildz-0.7.4/buildz/xf/cpp/loaderz/deal/reval.h +39 -0
  34. buildz-0.7.4/buildz/xf/cpp/loaderz/deal/spt.cpp +27 -0
  35. buildz-0.7.4/buildz/xf/cpp/loaderz/deal/spt.h +21 -0
  36. buildz-0.7.4/buildz/xf/cpp/loaderz/deal/str.cpp +89 -0
  37. buildz-0.7.4/buildz/xf/cpp/loaderz/deal/str.h +25 -0
  38. buildz-0.7.4/buildz/xf/cpp/loaderz/exp.h +25 -0
  39. buildz-0.7.4/buildz/xf/cpp/loaderz/init.cpp +148 -0
  40. buildz-0.7.4/buildz/xf/cpp/loaderz/init.h +16 -0
  41. buildz-0.7.4/buildz/xf/cpp/loaderz/item.h +31 -0
  42. buildz-0.7.4/buildz/xf/cpp/loaderz/mg.cpp +99 -0
  43. buildz-0.7.4/buildz/xf/cpp/loaderz/mg.h +30 -0
  44. buildz-0.7.4/buildz/xf/cpp/loaderz/test.cpp +43 -0
  45. buildz-0.7.4/buildz/xf/cpp/pc.cpp +8 -0
  46. buildz-0.7.4/buildz/xf/cpp/pc.h +15 -0
  47. buildz-0.7.4/buildz/xf/cpp/pcxf.pyx +118 -0
  48. buildz-0.7.4/buildz/xf/cpp/setup.py +54 -0
  49. buildz-0.7.4/buildz/xf/cpp/setup_mingw32.py +11 -0
  50. buildz-0.7.4/buildz/xf/cpp/tstcxf.py +57 -0
  51. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz/deal/strz.py +0 -10
  52. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz/test.py +1 -0
  53. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/readz.py +9 -1
  54. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/readz_nexp.py +1 -1
  55. {buildz-0.7.2 → buildz-0.7.4/buildz.egg-info}/PKG-INFO +1 -1
  56. {buildz-0.7.2 → buildz-0.7.4}/buildz.egg-info/SOURCES.txt +46 -8
  57. {buildz-0.7.2 → buildz-0.7.4}/setup.py +1 -1
  58. buildz-0.7.2/buildz/xf/__init__.py +0 -13
  59. buildz-0.7.2/buildz/xf/base.py +0 -28
  60. buildz-0.7.2/buildz/xf/copy_old.py +0 -60
  61. buildz-0.7.2/buildz/xf/loaderz/deal/spc.py +0 -20
  62. buildz-0.7.2/buildz/xf/loaderz/deal/strz_new.py +0 -284
  63. buildz-0.7.2/buildz/xf/loaderz/deal/strz_old.py +0 -197
  64. buildz-0.7.2/buildz/xf/loaderz_nexp/deal/spc.py +0 -20
  65. buildz-0.7.2/buildz/xf/loaderz_nexp/deal/strz_new.py +0 -284
  66. buildz-0.7.2/buildz/xf/loaderz_nexp/deal/strz_old.py +0 -197
  67. {buildz-0.7.2 → buildz-0.7.4}/LICENSE +0 -0
  68. {buildz-0.7.2 → buildz-0.7.4}/MANIFEST.in +0 -0
  69. {buildz-0.7.2 → buildz-0.7.4}/README.md +0 -0
  70. {buildz-0.7.2 → buildz-0.7.4}/buildz/__main__.py +0 -0
  71. {buildz-0.7.2 → buildz-0.7.4}/buildz/argx.py +0 -0
  72. {buildz-0.7.2 → buildz-0.7.4}/buildz/argz/__init__.py +0 -0
  73. {buildz-0.7.2 → buildz-0.7.4}/buildz/argz/argz.py +0 -0
  74. {buildz-0.7.2 → buildz-0.7.4}/buildz/argz/callz.py +0 -0
  75. {buildz-0.7.2 → buildz-0.7.4}/buildz/argz/conf_argz.py +0 -0
  76. {buildz-0.7.2 → buildz-0.7.4}/buildz/argz/conf_callz.py +0 -0
  77. {buildz-0.7.2 → buildz-0.7.4}/buildz/argz/evalx.py +0 -0
  78. {buildz-0.7.2 → buildz-0.7.4}/buildz/argz/init.py +0 -0
  79. {buildz-0.7.2 → buildz-0.7.4}/buildz/argz/test.py +0 -0
  80. {buildz-0.7.2 → buildz-0.7.4}/buildz/argz/test_call.py +0 -0
  81. {buildz-0.7.2 → buildz-0.7.4}/buildz/argz_bk/__init__.py +0 -0
  82. {buildz-0.7.2 → buildz-0.7.4}/buildz/argz_bk/argz.py +0 -0
  83. {buildz-0.7.2 → buildz-0.7.4}/buildz/argz_bk/build.py +0 -0
  84. {buildz-0.7.2 → buildz-0.7.4}/buildz/argz_bk/callz.py +0 -0
  85. {buildz-0.7.2 → buildz-0.7.4}/buildz/argz_bk/evalx.py +0 -0
  86. {buildz-0.7.2 → buildz-0.7.4}/buildz/argz_bk/test.py +0 -0
  87. {buildz-0.7.2 → buildz-0.7.4}/buildz/argz_bk/test_obj.py +0 -0
  88. {buildz-0.7.2 → buildz-0.7.4}/buildz/argz_bk/tests/conf.js +0 -0
  89. {buildz-0.7.2 → buildz-0.7.4}/buildz/argz_bk/testx.py +0 -0
  90. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/__init__.py +0 -0
  91. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/cache.py +0 -0
  92. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/config.py +0 -0
  93. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/dbs.py +0 -0
  94. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/deal.py +0 -0
  95. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/deal_list.py +0 -0
  96. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/deal_type.py +0 -0
  97. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/defs.py +0 -0
  98. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/factory.py +0 -0
  99. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/init.py +0 -0
  100. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/log.py +0 -0
  101. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/request.py +0 -0
  102. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/run.py +0 -0
  103. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/save.py +0 -0
  104. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/test/res/cache/cache.js +0 -0
  105. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/test/res/config/base.js +0 -0
  106. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/test/res/config/config.js +0 -0
  107. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/test/res/data/fp.js +0 -0
  108. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/test/res/data/item1.js +0 -0
  109. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/test/res/data/item2.js +0 -0
  110. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/test/res/data/test.js +0 -0
  111. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/test/test.py +0 -0
  112. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/test/xtest.py +0 -0
  113. {buildz-0.7.2 → buildz-0.7.4}/buildz/auto/verify.py +0 -0
  114. {buildz-0.7.2 → buildz-0.7.4}/buildz/cachez/__init__.py +0 -0
  115. {buildz-0.7.2 → buildz-0.7.4}/buildz/cachez/cache.py +0 -0
  116. {buildz-0.7.2 → buildz-0.7.4}/buildz/cmd.py +0 -0
  117. {buildz-0.7.2 → buildz-0.7.4}/buildz/confz.py +0 -0
  118. {buildz-0.7.2 → buildz-0.7.4}/buildz/db/__init__.py +0 -0
  119. {buildz-0.7.2 → buildz-0.7.4}/buildz/db/__main__.py +0 -0
  120. {buildz-0.7.2 → buildz-0.7.4}/buildz/db/dv/__init__.py +0 -0
  121. {buildz-0.7.2 → buildz-0.7.4}/buildz/db/dv/basez.py +0 -0
  122. {buildz-0.7.2 → buildz-0.7.4}/buildz/db/dv/clickhousez.py +0 -0
  123. {buildz-0.7.2 → buildz-0.7.4}/buildz/db/dv/lib/readme +0 -0
  124. {buildz-0.7.2 → buildz-0.7.4}/buildz/db/dv/mysqlz.py +0 -0
  125. {buildz-0.7.2 → buildz-0.7.4}/buildz/db/dv/oraclez.py +0 -0
  126. {buildz-0.7.2 → buildz-0.7.4}/buildz/db/dv/orm.py +0 -0
  127. {buildz-0.7.2 → buildz-0.7.4}/buildz/db/dv/postgresqlz.py +0 -0
  128. {buildz-0.7.2 → buildz-0.7.4}/buildz/db/dv/sqlite3z.py +0 -0
  129. {buildz-0.7.2 → buildz-0.7.4}/buildz/db/dv/structz.py +0 -0
  130. {buildz-0.7.2 → buildz-0.7.4}/buildz/db/install.txt +0 -0
  131. {buildz-0.7.2 → buildz-0.7.4}/buildz/db/run.conf +0 -0
  132. {buildz-0.7.2 → buildz-0.7.4}/buildz/db/runz.py +0 -0
  133. {buildz-0.7.2 → buildz-0.7.4}/buildz/db/tls.py +0 -0
  134. {buildz-0.7.2 → buildz-0.7.4}/buildz/demo/ioc/deal.py +0 -0
  135. {buildz-0.7.2 → buildz-0.7.4}/buildz/demo/ioc/help.py +0 -0
  136. {buildz-0.7.2 → buildz-0.7.4}/buildz/demo/myers/deal.py +0 -0
  137. {buildz-0.7.2 → buildz-0.7.4}/buildz/demo/myers/help.py +0 -0
  138. {buildz-0.7.2 → buildz-0.7.4}/buildz/demo/res/conf/ioc.js +0 -0
  139. {buildz-0.7.2 → buildz-0.7.4}/buildz/demo/res/conf/main.js +0 -0
  140. {buildz-0.7.2 → buildz-0.7.4}/buildz/demo/res/conf/myers.js +0 -0
  141. {buildz-0.7.2 → buildz-0.7.4}/buildz/demo/res/conf/search.js +0 -0
  142. {buildz-0.7.2 → buildz-0.7.4}/buildz/demo/res/conf/xf.js +0 -0
  143. {buildz-0.7.2 → buildz-0.7.4}/buildz/demo/res/help/default.js +0 -0
  144. {buildz-0.7.2 → buildz-0.7.4}/buildz/demo/res/help/ioc.js +0 -0
  145. {buildz-0.7.2 → buildz-0.7.4}/buildz/demo/res/help/myers.js +0 -0
  146. {buildz-0.7.2 → buildz-0.7.4}/buildz/demo/res/help/search.js +0 -0
  147. {buildz-0.7.2 → buildz-0.7.4}/buildz/demo/res/help/xf.js +0 -0
  148. {buildz-0.7.2 → buildz-0.7.4}/buildz/demo/res/test.js +0 -0
  149. {buildz-0.7.2 → buildz-0.7.4}/buildz/demo/search/deal.py +0 -0
  150. {buildz-0.7.2 → buildz-0.7.4}/buildz/demo/search/help.py +0 -0
  151. {buildz-0.7.2 → buildz-0.7.4}/buildz/demo/test.py +0 -0
  152. {buildz-0.7.2 → buildz-0.7.4}/buildz/demo/xf/deal.py +0 -0
  153. {buildz-0.7.2 → buildz-0.7.4}/buildz/demo/xf/help.py +0 -0
  154. {buildz-0.7.2 → buildz-0.7.4}/buildz/dz/__init__.py +0 -0
  155. {buildz-0.7.2 → buildz-0.7.4}/buildz/dz/mapz.py +0 -0
  156. {buildz-0.7.2 → buildz-0.7.4}/buildz/evalz/__init__.py +0 -0
  157. {buildz-0.7.2 → buildz-0.7.4}/buildz/evalz/evalz.py +0 -0
  158. {buildz-0.7.2 → buildz-0.7.4}/buildz/evalz/res/default.js +0 -0
  159. {buildz-0.7.2 → buildz-0.7.4}/buildz/evalz/test.py +0 -0
  160. {buildz-0.7.2 → buildz-0.7.4}/buildz/fz/__init__.py +0 -0
  161. {buildz-0.7.2 → buildz-0.7.4}/buildz/fz/dirz.py +0 -0
  162. {buildz-0.7.2 → buildz-0.7.4}/buildz/fz/fhs.py +0 -0
  163. {buildz-0.7.2 → buildz-0.7.4}/buildz/fz/fio.py +0 -0
  164. {buildz-0.7.2 → buildz-0.7.4}/buildz/fz/lsf.py +0 -0
  165. {buildz-0.7.2 → buildz-0.7.4}/buildz/gpuz/test/analyze.py +0 -0
  166. {buildz-0.7.2 → buildz-0.7.4}/buildz/gpuz/test/demo.py +0 -0
  167. {buildz-0.7.2 → buildz-0.7.4}/buildz/gpuz/test/report.txt +0 -0
  168. {buildz-0.7.2 → buildz-0.7.4}/buildz/gpuz/test/take_gpu_mem.py +0 -0
  169. {buildz-0.7.2 → buildz-0.7.4}/buildz/gpuz/test/test_atten_demo.py +0 -0
  170. {buildz-0.7.2 → buildz-0.7.4}/buildz/gpuz/test/test_linear_demo.py +0 -0
  171. {buildz-0.7.2 → buildz-0.7.4}/buildz/gpuz/test/test_multi_demo.py +0 -0
  172. {buildz-0.7.2 → buildz-0.7.4}/buildz/gpuz/test/test_resnet_demo.py +0 -0
  173. {buildz-0.7.2 → buildz-0.7.4}/buildz/gpuz/torch/__init__.py +0 -0
  174. {buildz-0.7.2 → buildz-0.7.4}/buildz/gpuz/torch/dict_middle.py +0 -0
  175. {buildz-0.7.2 → buildz-0.7.4}/buildz/gpuz/torch/seq_middle.py +0 -0
  176. {buildz-0.7.2 → buildz-0.7.4}/buildz/html/__init__.py +0 -0
  177. {buildz-0.7.2 → buildz-0.7.4}/buildz/html/test/demo.html +0 -0
  178. {buildz-0.7.2 → buildz-0.7.4}/buildz/html/test/test.py +0 -0
  179. {buildz-0.7.2 → buildz-0.7.4}/buildz/html/xml.py +0 -0
  180. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/__init__.py +0 -0
  181. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/base.py +0 -0
  182. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/init.py +0 -0
  183. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc/base.py +0 -0
  184. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc/conf.py +0 -0
  185. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc/confs.py +0 -0
  186. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc/decorator.py +0 -0
  187. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc/loads.py +0 -0
  188. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc/single.py +0 -0
  189. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/base.py +0 -0
  190. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/branch.py +0 -0
  191. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/call.py +0 -0
  192. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/calls.py +0 -0
  193. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/branch_lists.js +0 -0
  194. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/call_defaults.js +0 -0
  195. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/call_lists.js +0 -0
  196. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/calls_defaults.js +0 -0
  197. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/calls_lists.js +0 -0
  198. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/deal_lists.js +0 -0
  199. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/deals.js +0 -0
  200. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/env_lists.js +0 -0
  201. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/ioc_lists.js +0 -0
  202. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/iocf_lists.js +0 -0
  203. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/join_lists.js +0 -0
  204. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/list_lists.js +0 -0
  205. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/map_lists.js +0 -0
  206. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/mcall_defaults.js +0 -0
  207. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/mcall_lists.js +0 -0
  208. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/obj_cst_lists.js +0 -0
  209. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/obj_defaults.js +0 -0
  210. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/obj_lists.js +0 -0
  211. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/obj_set_lists.js +0 -0
  212. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/ovar_lists.js +0 -0
  213. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/ref_lists.js +0 -0
  214. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/refs_lists.js +0 -0
  215. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/var_lists.js +0 -0
  216. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/xfile_defaults.js +0 -0
  217. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/conf/xfile_lists.js +0 -0
  218. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/deal.py +0 -0
  219. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/demo.py +0 -0
  220. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/env.py +0 -0
  221. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/init.py +0 -0
  222. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/ioc.py +0 -0
  223. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/iocf.py +0 -0
  224. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/join.py +0 -0
  225. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/list.py +0 -0
  226. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/map.py +0 -0
  227. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/mcall.py +0 -0
  228. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/obj.py +0 -0
  229. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/ovar.py +0 -0
  230. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/ref.py +0 -0
  231. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/refs.py +0 -0
  232. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/val.py +0 -0
  233. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/var.py +0 -0
  234. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/ioc_deal/xfile.py +0 -0
  235. {buildz-0.7.2 → buildz-0.7.4}/buildz/ioc/wrap.py +0 -0
  236. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/__init__.py +0 -0
  237. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/base.py +0 -0
  238. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/conf/base.py +0 -0
  239. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/conf/conf.py +0 -0
  240. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/conf/mg.py +0 -0
  241. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/conf/unit.py +0 -0
  242. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/conf/up.py +0 -0
  243. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/conf_deal/attr.py +0 -0
  244. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/conf_deal/base.py +0 -0
  245. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/conf_deal/call.py +0 -0
  246. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/conf_deal/cvar.py +0 -0
  247. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/conf_deal/deal.py +0 -0
  248. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/conf_deal/env.py +0 -0
  249. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/conf_deal/ioc.py +0 -0
  250. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/conf_deal/method.py +0 -0
  251. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/conf_deal/obj.py +0 -0
  252. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/conf_deal/ref.py +0 -0
  253. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/conf_deal/val.py +0 -0
  254. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/init.py +0 -0
  255. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc/__init__.py +0 -0
  256. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc/base.py +0 -0
  257. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc/builds.py +0 -0
  258. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc/confs.py +0 -0
  259. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc/datas.py +0 -0
  260. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc/dataset.py +0 -0
  261. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc/encapes.py +0 -0
  262. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc/envs.py +0 -0
  263. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc/ids.py +0 -0
  264. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc/init.py +0 -0
  265. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc/mg.py +0 -0
  266. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc/single.py +0 -0
  267. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc/sys_envs.py +0 -0
  268. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc/tdata.py +0 -0
  269. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc/tdict.py +0 -0
  270. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc/unit.py +0 -0
  271. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc/vars.py +0 -0
  272. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc_deal/base.py +0 -0
  273. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc_deal/deal.py +0 -0
  274. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc_deal/ioc.py +0 -0
  275. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc_deal/obj.py +0 -0
  276. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc_deal/ref.py +0 -0
  277. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/ioc_deal/val.py +0 -0
  278. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/test/test.py +0 -0
  279. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/wrap/base.py +0 -0
  280. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/wrap/default_wraps.py +0 -0
  281. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/wrap/env.py +0 -0
  282. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/wrap/obj.py +0 -0
  283. {buildz-0.7.2 → buildz-0.7.4}/buildz/iocz/wrap/wraps.py +0 -0
  284. {buildz-0.7.2 → buildz-0.7.4}/buildz/logz.py +0 -0
  285. {buildz-0.7.2 → buildz-0.7.4}/buildz/netz/__init__.py +0 -0
  286. {buildz-0.7.2 → buildz-0.7.4}/buildz/netz/mhttp/__init__.py +0 -0
  287. {buildz-0.7.2 → buildz-0.7.4}/buildz/netz/mhttp/caps.py +0 -0
  288. {buildz-0.7.2 → buildz-0.7.4}/buildz/netz/mhttp/gateway.py +0 -0
  289. {buildz-0.7.2 → buildz-0.7.4}/buildz/netz/mhttp/mhttp.py +0 -0
  290. {buildz-0.7.2 → buildz-0.7.4}/buildz/netz/mhttp/mhttps.py +0 -0
  291. {buildz-0.7.2 → buildz-0.7.4}/buildz/netz/mhttp/proxy.py +0 -0
  292. {buildz-0.7.2 → buildz-0.7.4}/buildz/netz/mhttp/record.py +0 -0
  293. {buildz-0.7.2 → buildz-0.7.4}/buildz/netz/sslz/__init__.py +0 -0
  294. {buildz-0.7.2 → buildz-0.7.4}/buildz/netz/sslz/gen.py +0 -0
  295. {buildz-0.7.2 → buildz-0.7.4}/buildz/netz/sslz/gen.pyi +0 -0
  296. {buildz-0.7.2 → buildz-0.7.4}/buildz/netz/tcp/__init__.py +0 -0
  297. {buildz-0.7.2 → buildz-0.7.4}/buildz/netz/tcp/__main__.py +0 -0
  298. {buildz-0.7.2 → buildz-0.7.4}/buildz/netz/tcp/middle.py +0 -0
  299. {buildz-0.7.2 → buildz-0.7.4}/buildz/netz/test/__main__.py +0 -0
  300. {buildz-0.7.2 → buildz-0.7.4}/buildz/netz/test/test.py +0 -0
  301. {buildz-0.7.2 → buildz-0.7.4}/buildz/netz/test/test_cli.py +0 -0
  302. {buildz-0.7.2 → buildz-0.7.4}/buildz/netz/test/test_gw.py +0 -0
  303. {buildz-0.7.2 → buildz-0.7.4}/buildz/pathz.py +0 -0
  304. {buildz-0.7.2 → buildz-0.7.4}/buildz/pyz.py +0 -0
  305. {buildz-0.7.2 → buildz-0.7.4}/buildz/tls.py +0 -0
  306. {buildz-0.7.2 → buildz-0.7.4}/buildz/tools.py +0 -0
  307. {buildz-0.7.2 → buildz-0.7.4}/buildz/tz/__init__.py +0 -0
  308. {buildz-0.7.2/buildz/xf → buildz-0.7.4/buildz/tz}/code.py +0 -0
  309. {buildz-0.7.2 → buildz-0.7.4}/buildz/tz/myers_diff.py +0 -0
  310. {buildz-0.7.2 → buildz-0.7.4}/buildz/tz/test_xfind.py +0 -0
  311. {buildz-0.7.2 → buildz-0.7.4}/buildz/tz/time/__init__.py +0 -0
  312. {buildz-0.7.2 → buildz-0.7.4}/buildz/tz/time/timez.py +0 -0
  313. {buildz-0.7.2 → buildz-0.7.4}/buildz/tz/tio/__init__.py +0 -0
  314. {buildz-0.7.2 → buildz-0.7.4}/buildz/tz/tio/base.py +0 -0
  315. {buildz-0.7.2 → buildz-0.7.4}/buildz/tz/tio/getch.py +0 -0
  316. {buildz-0.7.2 → buildz-0.7.4}/buildz/tz/tio/lx.py +0 -0
  317. {buildz-0.7.2 → buildz-0.7.4}/buildz/tz/tio/test.py +0 -0
  318. {buildz-0.7.2 → buildz-0.7.4}/buildz/tz/tio/win.py +0 -0
  319. {buildz-0.7.2 → buildz-0.7.4}/buildz/tz/xfind.py +0 -0
  320. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/__main__.py +0 -0
  321. /buildz-0.7.2/buildz/xf/code_modify.py → /buildz-0.7.4/buildz/xf/code.py +0 -0
  322. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/file.py +0 -0
  323. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loader/base.py +0 -0
  324. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loader/buffer.py +0 -0
  325. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loader/deal/listz.py +0 -0
  326. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loader/deal/lr.py +0 -0
  327. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loader/deal/lrval.py +0 -0
  328. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loader/deal/mapz.py +0 -0
  329. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loader/deal/nextz.py +0 -0
  330. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loader/deal/reval.py +0 -0
  331. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loader/deal/setz.py +0 -0
  332. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loader/deal/spc.py +0 -0
  333. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loader/deal/spt.py +0 -0
  334. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loader/deal/strz.py +0 -0
  335. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loader/exp.py +0 -0
  336. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loader/item.py +0 -0
  337. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loader/mg.py +0 -0
  338. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loader/pos.py +0 -0
  339. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz/base.py +0 -0
  340. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz/buffer.py +0 -0
  341. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz/deal/listmapz.py +0 -0
  342. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz/deal/listz.py +0 -0
  343. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz/deal/lr.py +0 -0
  344. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz/deal/lrval.py +0 -0
  345. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz/deal/mapz.py +0 -0
  346. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz/deal/nextz.py +0 -0
  347. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz/deal/reval.py +0 -0
  348. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz/deal/setz.py +0 -0
  349. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz/deal/spt.py +0 -0
  350. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz/exp.py +0 -0
  351. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz/item.py +0 -0
  352. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz/mg.py +0 -0
  353. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz/pos.py +0 -0
  354. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz/test1.py +0 -0
  355. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz_nexp/base.py +0 -0
  356. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz_nexp/buffer.py +0 -0
  357. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz_nexp/deal/listmapz.py +0 -0
  358. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz_nexp/deal/listz.py +0 -0
  359. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz_nexp/deal/lr.py +0 -0
  360. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz_nexp/deal/lrval.py +0 -0
  361. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz_nexp/deal/mapz.py +0 -0
  362. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz_nexp/deal/nextz.py +0 -0
  363. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz_nexp/deal/reval.py +0 -0
  364. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz_nexp/deal/setz.py +0 -0
  365. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz_nexp/deal/spt.py +0 -0
  366. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz_nexp/deal/strz.py +0 -0
  367. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz_nexp/exp.py +0 -0
  368. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz_nexp/item.py +0 -0
  369. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz_nexp/mg.py +0 -0
  370. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz_nexp/pos.py +0 -0
  371. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz_nexp/test.py +0 -0
  372. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/loaderz_nexp/test1.py +0 -0
  373. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/mapz.py +0 -0
  374. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/read.py +0 -0
  375. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/stack.py +0 -0
  376. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/write.py +0 -0
  377. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writer/base.py +0 -0
  378. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writer/conf.py +0 -0
  379. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writer/deal/jsonval.py +0 -0
  380. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writer/deal/listmapz.py +0 -0
  381. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writer/deal/listz.py +0 -0
  382. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writer/deal/mapz.py +0 -0
  383. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writer/deal/reval.py +0 -0
  384. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writer/deal/strz.py +0 -0
  385. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writer/itemz.py +0 -0
  386. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writer/mg.py +0 -0
  387. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writerz/base.py +0 -0
  388. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writerz/conf.py +0 -0
  389. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writerz/deal/jsonval.py +0 -0
  390. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writerz/deal/listmapz.py +0 -0
  391. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writerz/deal/listz.py +0 -0
  392. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writerz/deal/mapz.py +0 -0
  393. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writerz/deal/reval.py +0 -0
  394. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writerz/deal/strz.py +0 -0
  395. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writerz/itemz.py +0 -0
  396. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writerz/mg.py +0 -0
  397. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writerz/test.py +0 -0
  398. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writerz/testx.py +0 -0
  399. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/writez.py +0 -0
  400. {buildz-0.7.2 → buildz-0.7.4}/buildz/xf/xargs.py +0 -0
  401. {buildz-0.7.2 → buildz-0.7.4}/buildz/xz/__init__.py +0 -0
  402. {buildz-0.7.2 → buildz-0.7.4}/buildz/xz/conf.js +0 -0
  403. {buildz-0.7.2 → buildz-0.7.4}/buildz/xz/data.js +0 -0
  404. {buildz-0.7.2 → buildz-0.7.4}/buildz/xz/test.py +0 -0
  405. {buildz-0.7.2 → buildz-0.7.4}/buildz/xz/trs.py +0 -0
  406. {buildz-0.7.2 → buildz-0.7.4}/buildz.egg-info/dependency_links.txt +0 -0
  407. {buildz-0.7.2 → buildz-0.7.4}/buildz.egg-info/top_level.txt +0 -0
  408. {buildz-0.7.2 → buildz-0.7.4}/notes/notes.txt +0 -0
  409. {buildz-0.7.2 → buildz-0.7.4}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: buildz
3
- Version: 0.7.2
3
+ Version: 0.7.4
4
4
  Summary: 配置读写(基于json格式进行简化)、ioc、以及其他工具代码。a json-base file format's read and write code by python, and codes to read and product object from configure file in such format(ioc), and other tool codes
5
5
  Home-page: https://github.com/buildCodeZ/buildz
6
6
  Author: Zzz
@@ -22,4 +22,4 @@ buildz.pathz: 简化文件路径相关的代码编写
22
22
  '''
23
23
 
24
24
  from .argx import fetch as args
25
- from .base import Base, WBase
25
+ from .base import Base, WBase,Args
@@ -81,3 +81,32 @@ class With(Base):
81
81
  return cls
82
82
 
83
83
  pass
84
+
85
+ class Args(Base):
86
+ def size(self):
87
+ return len(self.args)+len(self.maps)
88
+ def str(self):
89
+ return f"<Args args={self.args}, maps={self.maps}>"
90
+ @property
91
+ def lists(self):
92
+ return self.args
93
+ @lists.setter
94
+ def lists(self, val):
95
+ self.args=val
96
+ @lists.deleter
97
+ def lists(self):
98
+ del self.args
99
+ @property
100
+ def dicts(self):
101
+ return self.maps
102
+ @dicts.setter
103
+ def dicts(self, val):
104
+ self.maps=val
105
+ @dicts.deleter
106
+ def dicts(self):
107
+ del self.maps
108
+ def init(self, args, maps):
109
+ self.args = args
110
+ self.maps = maps
111
+
112
+ pass
@@ -0,0 +1,191 @@
1
+ #
2
+ import torch
3
+ from torch import nn
4
+ import threading as th
5
+ from ... import Base
6
+ import numpy as np
7
+ '''
8
+ 注:
9
+ 没写好,还不能用
10
+ '''
11
+ class MultiDictCache(Base):
12
+ def init(self, nets, win_sizes=None, backward_deal=None, fc_inputs_to=None, default_dv = None, default_win_size=1):
13
+ '''
14
+ nets: [
15
+ net
16
+ (net, run_dv)
17
+ (net, run_dv, opt)
18
+ (net, (run_dv, cache_dv), opt)
19
+ ]
20
+ win_sizes: {
21
+ run_dv: size
22
+ }
23
+ '''
24
+ if default_dv is None:
25
+ default_dv = torch.device("cpu")
26
+ if fc_inputs_to is None:
27
+ fc_inputs_to = self.inputs_to
28
+ self.fc_inputs_to = fc_inputs_to
29
+ self.default_dv = default_dv
30
+ if win_sizes is None:
31
+ win_sizes = {}
32
+ self.default_win_size = default_win_size
33
+ self.win_sizes = win_sizes
34
+ #run_dvs = {}
35
+ rst = {}
36
+ nears = {}
37
+ for it in nets:
38
+ if type(it) not in (list,tuple):
39
+ it = [it]
40
+ if len(it)==1:
41
+ it.append(default_dv)
42
+ x = it[1]
43
+ if type(x) not in (list,tuple):
44
+ it[1] = [it[1]]
45
+ run_dvs.add(it[1][0])
46
+ net = it[0]
47
+ net_id = id(net0)
48
+ rst[net_id] = it
49
+ run_dv = it[1][0]
50
+ if run_dv not in nears:
51
+ nears[run_dv] = {}
52
+ nears[run_dv][net_id] = [-1,-1]
53
+ run_dvs[run_dv] = it
54
+ nets = rst
55
+ self.nets = nets
56
+ self.nears = nears
57
+ if type(dvs) not in (list,tuple):
58
+ dvs = [dvs]
59
+ self.gdv = dvs[0]
60
+ self.cdv = dvs[-1]
61
+ self.dvs = dvs
62
+ if dvs_nets is None:
63
+ dvs_nets = [[]]
64
+ if type(dvs_nets) not in (list, tuple):
65
+ dvs_nets = [dvs_nets]
66
+ dvs_nets = [k if k is not None else [] for k in dvs_nets]
67
+ ids_nocache = set()
68
+ fcs = []
69
+ for i in range(len(dvs_nets)):
70
+ for net in dvs_nets[i]:
71
+ fc = net.register_forward_pre_hook(self.hook_forward_pre_tensor(i))
72
+ fcs.append(fc)
73
+ ids_nocache.add(id(net))
74
+ self.ids_nocache = ids_nocache
75
+ self.dvs_nets = dvs_nets
76
+ fcs += [net.register_forward_pre_hook(self.hook_forward_pre) for net in nets if id(net) not in ids_nocache]
77
+ fcs+=[net.register_forward_hook(self.hook_forward) for net in nets if id(net) not in ids_nocache]
78
+ net = nets[0]
79
+ if hasattr(net, "register_full_backward_hook"):
80
+ fcs+=[net.register_full_backward_hook(self.hook_backward) for net in nets]
81
+ else:
82
+ fcs+=[net.register_backward_hook(self.hook_backward) for net in nets]
83
+ self.src_nets = nets
84
+ self.fcs = fcs
85
+ self.nets = {id(net):net for net in nets}
86
+ self.ctxs = {id(net):[] for net in nets}
87
+ if opts is not None:
88
+ opts = {id(net): opt for net,opt in zip(nets, opts)}
89
+ self.opts = opts
90
+ self.pools = []
91
+ self.win_size = win_size
92
+ self.backward_deal = backward_deal
93
+ self.nears = {id(net):[-1,-1] for net in nets}
94
+ self.curr = -1
95
+ self.done_backward = -1
96
+ self.no_caches = True
97
+ def remove(self):
98
+ [fc.remove() for fc in self.fcs]
99
+ def hook_forward_pre_tensor(self, i):
100
+ def hook(model, ins):
101
+ model.to(self.dvs[i])
102
+ ins = self.fc_inputs_to(ins, self.dvs[i])
103
+ return ins
104
+ return hook
105
+ @staticmethod
106
+ def inputs_to(inputs, dv):
107
+ if isinstance(inputs, torch.Tensor):
108
+ return inputs.to(dv)
109
+ inputs = tuple([k.to(dv) for k in inputs])
110
+ return inputs
111
+ def ctxs_to(self, i, dv):
112
+ if dv is None:
113
+ self.ctxs[i] = []
114
+ else:
115
+ self.ctxs[i] = [k.to(dv) for k in self.ctxs[i]]
116
+ def copy_backward(self, nid):
117
+ for c_id in self.pools:
118
+ self.nets[c_id].to(self.cdv)
119
+ self.ctxs_to(c_id, None)
120
+ self.pools = []
121
+ self.nets[nid].to(self.gdv)
122
+ self.ctxs_to(nid, self.gdv)
123
+ self.pools.append(nid)
124
+ next_id = nid
125
+ for i in range(self.win_size-1):
126
+ next_id = self.nears[next_id][1]
127
+ if next_id<0:
128
+ break
129
+ self.nets[next_id].to(self.gdv)
130
+ self.ctxs_to(next_id, self.gdv)
131
+ self.pools.append(next_id)
132
+ def copy_forward(self, nid, model):
133
+ for c_id in self.pools:
134
+ self.nets[c_id].to(self.cdv)
135
+ self.ctxs_to(c_id, self.cdv)
136
+ self.pools = []
137
+ model.to(self.gdv)
138
+ self.pools.append(nid)
139
+ next_id = nid
140
+ for i in range(self.win_size-1):
141
+ next_id = self.nears[next_id][0]
142
+ if next_id<0:
143
+ break
144
+ self.nets[next_id].to(self.gdv)
145
+ self.pools.append(next_id)
146
+ def hook_forward(self, model, ins, outs):
147
+ self.no_caches = True
148
+ def hook_forward_pre(self, model, ins):
149
+ self.no_caches = False
150
+ nid = id(model)
151
+ if nid not in self.pools:
152
+ self.copy_forward(nid, model)
153
+ if self.curr>=0:
154
+ self.nears[self.curr][0] = nid
155
+ self.curr = nid
156
+ return self.fc_inputs_to(ins, self.gdv)
157
+ def do_forward(self, fc):
158
+ self.no_caches = True
159
+ self.ctxs = {k:[] for k in self.nets}
160
+ with torch.autograd.graph.saved_tensors_hooks(self.hook_pack, self.hook_unpack):
161
+ rst = fc()
162
+ return rst.to(self.gdv)
163
+ def wrap_backward_deal(self, net_id):
164
+ if self.backward_deal is None:
165
+ return
166
+ self.backward_deal(self.nets[net_id], self.opts[net_id])
167
+ def hook_backward(self, model, grad_ins, grad_outs):
168
+ nid = id(model)
169
+ self.wrap_backward_deal(nid)
170
+ def hook_pack(self, dt):
171
+ if self.no_caches:
172
+ # 不做缓存,数据不处理
173
+ return -1, dt
174
+ index = self.curr
175
+ # forward时候为了后面计算梯度存的缓存,放到列表里方便转cpu和gpu
176
+ self.ctxs[index].append(dt)
177
+ return index, len(self.ctxs[index])-1
178
+ def hook_unpack(self, x):
179
+ nid = x[0]
180
+ if nid<0:
181
+ return x[1]
182
+ if nid not in self.pools:
183
+ self.copy_backward(nid)
184
+ dt = self.ctxs[nid][x[1]]
185
+ if self.curr>=0:
186
+ self.nears[self.curr][1] = nid
187
+ self.curr = nid
188
+ return dt
189
+ def do_backward(self, fc):
190
+ self.curr = -1
191
+ fc()
@@ -0,0 +1,21 @@
1
+
2
+
3
+ #print("xf.__init__")
4
+ from .readz import loads, load, loadf, loads_args, loadx, is_args, loadxf
5
+ from .writez import dumps, dump, dumpf, dumpx, dumpxf
6
+ from .file import *
7
+ from .mapz import *
8
+ from .xargs import fetch as args
9
+
10
+ try:
11
+ # C++加速代码
12
+ #from .cpp import pcxf
13
+ #print(f"pcxf:", pcxf)
14
+ #print(f"pcxf.loads:", dir(pcxf))
15
+ from buildz.xf.cpp.pcxf import loads, loadx
16
+ loads_args = loadx
17
+ except Exception as exp:
18
+ #print("init not cpp:",exp)
19
+ pass
20
+ pass
21
+ __author__ = "Zzz, emails: 1174534295@qq.com, 1309458652@qq.com"
@@ -0,0 +1,30 @@
1
+
2
+ from buildz import Base, Args
3
+ # class Args(Base):
4
+ # def size(self):
5
+ # return len(self.args)+len(self.maps)
6
+ # def str(self):
7
+ # return f"<Args args={self.args}, maps={self.maps}>"
8
+ # @property
9
+ # def lists(self):
10
+ # return self.args
11
+ # @lists.setter
12
+ # def lists(self, val):
13
+ # self.args=val
14
+ # @lists.deleter
15
+ # def lists(self):
16
+ # del self.args
17
+ # @property
18
+ # def dicts(self):
19
+ # return self.maps
20
+ # @dicts.setter
21
+ # def dicts(self, val):
22
+ # self.maps=val
23
+ # @dicts.deleter
24
+ # def dicts(self):
25
+ # del self.maps
26
+ # def init(self, args, maps):
27
+ # self.args = args
28
+ # self.maps = maps
29
+
30
+ # pass
@@ -0,0 +1,24 @@
1
+ .PHONY: cpp_depend ALL
2
+ TARGETLIB = libcxf.a
3
+ TARGETLIB_CPP = cxf
4
+ TARGETDYN=cxf.so
5
+ SRC=$(wildcard loaderz/*.cpp) $(wildcard loaderz/**/*.cpp)
6
+ OBJ=$(SRC:.cpp=.o)
7
+ ALL:$(TARGETLIB) $(TARGETDYN)
8
+ echo "$(SRC)"
9
+
10
+ $(TARGETDYN):$(OBJ)
11
+ g++ -O3 -fPIC -shared -o $@ $^ -static-libstdc++ -static-libgcc
12
+ $(TARGETLIB): $(OBJ)
13
+ ar -rc $@ $^
14
+ test: $(OBJ)
15
+ g++ -O3 $^ -o $@
16
+ %.o:%.cpp
17
+ g++ -O3 -fPIC -Wall -g -c $< -o $@
18
+
19
+ include cpp_depend
20
+ cpp_depend:
21
+ g++ -MM $(SRC) > cpp_depend
22
+
23
+ clean:
24
+ rm $(OBJ)
@@ -0,0 +1,29 @@
1
+ 1,简介:
2
+ 用C++重写了一版xf.loads和xf.loadx,
3
+ mingw32-x64编译的C++版速度大概是python版的9倍
4
+ linux gnu编译的C++版速度大概是python版的15倍
5
+ windows下msvc没试过,因为没装
6
+ 但不管怎么说,都比Python的C版json慢,linux gnu编译的C++版性能是C版json的三分之一
7
+
8
+ 2,编译:
9
+
10
+ 需要先安装Cython:
11
+ pip install Cython
12
+
13
+ 然后进行编译:
14
+
15
+ linux下:
16
+ python setup.py
17
+
18
+ windows + mingw32-x64:
19
+ python setup_mingw32.py
20
+
21
+ windows下的msvc/vs(没试过,感觉有可能会报错,要自己改setup.py,不用msvc的原因是嫌vs太大了,不想装):
22
+ python setup.py
23
+
24
+ mac没试过,苹果电脑没用过
25
+
26
+ 3,使用:
27
+ 编译好之后就自动引用了,编译好之后运行的python,使用的buildz.xf.load*会自动替换成C++版
28
+ 也可以手动引用:
29
+ from buildz.xf.cpp.pcxf import loads, loadx
@@ -0,0 +1,6 @@
1
+ #
2
+ from buildz import fz
3
+ fz.removes("./build")
4
+ fz.removes("./pcxf.c")
5
+ fz.removes("./pcxf.cpp")
6
+ fz.removes("./pcxf.o")
@@ -0,0 +1,36 @@
1
+
2
+
3
+ #ifndef XF_BASE
4
+ #define XF_BASE
5
+ #include<string>
6
+ #include<sstream>
7
+ #include<stdio.h>
8
+ //#include<iostream>
9
+ #include<cstring>
10
+ #include<stdlib.h>
11
+ #include <vector>
12
+ #include <exception>
13
+ #include <set>
14
+ #include <algorithm>
15
+ #include <map>
16
+
17
+ #define DEFAULT_DEAL 0
18
+ typedef unsigned char byte;
19
+
20
+ #define BUILD_TYPE_LIST 1
21
+ #define BUILD_TYPE_STR 2
22
+ #define BUILD_TYPE_KEYVAL 3
23
+ #define BUILD_TYPE_SPT 4
24
+
25
+ #define TYPE_NULL 0
26
+ #define TYPE_BOOL 1
27
+ #define TYPE_BOOL_TRUE 101
28
+ #define TYPE_BOOL_FALSE 102
29
+ #define TYPE_INT 2
30
+ #define TYPE_FLOAT 3
31
+ #define TYPE_STR 4
32
+ #define TYPE_STR_TRANSLATE 401
33
+ #define TYPE_LIST 5
34
+ #define TYPE_DICT 6
35
+ #define TYPE_LISTDICT 7
36
+ #endif
@@ -0,0 +1,28 @@
1
+ #ifndef XF_BASE_DEAL
2
+ #define XF_BASE_DEAL
3
+ #include"base.h"
4
+ #include "buffer.h"
5
+ #include"item.h"
6
+ #include <cctype>
7
+ struct Manager;
8
+ struct BaseDeal{
9
+ virtual bool deal(BufferBase& buffer, ItemList& rst, Manager& mg){return false;}
10
+ // if do build, do delete obj
11
+ virtual Item* build(Item* obj, Manager& mg) {return NULL;}
12
+ virtual int label(){return -1;}
13
+ virtual int type(){return -1;}
14
+ virtual void regist(Manager& mg){}
15
+ virtual ~BaseDeal(){}
16
+ };
17
+
18
+ // std::string strip(const std::string &inpt)
19
+ // {
20
+ // auto start_it = inpt.begin();
21
+ // auto end_it = inpt.rbegin();
22
+ // while (std::isspace(*start_it))
23
+ // ++start_it;
24
+ // while (std::isspace(*end_it))
25
+ // ++end_it;
26
+ // return std::string(start_it, end_it.base());
27
+ // }
28
+ #endif
@@ -0,0 +1,88 @@
1
+
2
+ #include "buffer.h"
3
+ #include <cctype>
4
+ std::string StrBuffer::pos2str(Int2& pos){
5
+ int size = pos.last-pos.first;
6
+ char chars[size+1];
7
+ std::memcpy(chars, str+pos.first, size);
8
+ chars[size]=0;
9
+ return std::string(chars);
10
+ }
11
+ // int StrBuffer::read(char* chars, int size){
12
+ // size = std::min(size, str_size+1-read_base);
13
+ // std::memcpy(chars, str+read_base, size);
14
+ // chars[size]=0;
15
+ // return size;
16
+ // }
17
+ // int StrBuffer::read_cache(char* chars, int size){
18
+ // size = read(chars, size);
19
+ // buffer_size+=size;
20
+ // read_base+=size;
21
+ // return size;
22
+ // }
23
+ char StrBuffer::read(){
24
+ return str[read_base];
25
+ }
26
+ char StrBuffer::read_cache(){
27
+ char c = read();
28
+ if (c==0)return c;
29
+ buffer_size++;
30
+ read_base++;
31
+ return c;
32
+ }
33
+ bool StrBuffer::check_read(const char* chars, int size){
34
+ if (size>(str_size-read_base))return false;
35
+ for(int i=0;i<size;++i){
36
+ if (chars[i]!=str[read_base+i])return false;
37
+ }
38
+ return true;
39
+ }
40
+ int StrBuffer::clean(int read_size){
41
+ read_base+=read_size;
42
+ buffer_base=read_base;
43
+ buffer_size=0;
44
+ return 0;
45
+ }
46
+ int StrBuffer::size(){return buffer_size;}
47
+ int StrBuffer::full(char*& chars, bool strip) {
48
+ int base = buffer_base;
49
+ int last = buffer_base+buffer_size;
50
+ if (strip){
51
+ while(base<last&&std::isspace(str[base]))++base;
52
+ while(last>base&&std::isspace(str[last-1]))--last;
53
+ }
54
+ int size = last-base;
55
+ if (size>0){
56
+ if (chars==NULL){
57
+ chars = new char[size+1];
58
+ }
59
+ std::memcpy(chars, str+base,size);
60
+ chars[size]=0;
61
+ }
62
+ return size;
63
+ }
64
+ int StrBuffer::rget(char* chars, int size){
65
+ size = std::min(size, buffer_size);
66
+ std::memcpy(chars, str+(buffer_base+buffer_size-size), size);
67
+ return size;
68
+ }
69
+ int StrBuffer::get(char* chars, int size){
70
+ size = std::min(size, buffer_size);
71
+ std::memcpy(chars, str+buffer_base, size);
72
+ return size;
73
+ }
74
+ bool StrBuffer::_check_get(const char* chars, int size, bool right){
75
+ if (buffer_size<size)return false;
76
+ int base = buffer_base;
77
+ if (right)base += buffer_size-size;
78
+ for(int i=0;i<size;++i){
79
+ if (chars[i]!=str[base+i])return false;
80
+ }
81
+ return true;
82
+ }
83
+ bool StrBuffer::check_get(const char* chars, int size){
84
+ return _check_get(chars, size);
85
+ }
86
+ bool StrBuffer::check_rget(const char* chars, int size){
87
+ return _check_get(chars, size, true);
88
+ }
@@ -0,0 +1,57 @@
1
+ #ifndef XF_BUFFER
2
+ #define XF_BUFFER
3
+ #include "base.h"
4
+ #include <cctype>
5
+ //#include <cstring>
6
+ struct Int2{
7
+ int first,last;
8
+ Int2(){}
9
+ Int2(int a,int b):first(a),last(b){}
10
+ Int2(const Int2& a){first=a.first;last=a.last;}
11
+ void reset(int a, int b) { first=a; last=b; }
12
+ void reset(Int2& a){first=a.first;last=a.last;}
13
+ std::string str(){
14
+ std::stringstream ss;
15
+ ss<<"("<<first<<", "<<last<<")";
16
+ return ss.str();
17
+ }
18
+ };
19
+ struct BufferBase {
20
+ int buffer_base;
21
+ int read_base;
22
+ BufferBase():buffer_base(0),read_base(0){}
23
+ void pos(Int2& i2){i2.reset(buffer_base, buffer_base+size());}
24
+ void offsets(Int2& i2){ i2.reset(buffer_base, read_base); }
25
+ int clean2read(int size=1) { return clean(size); }
26
+ // virtual
27
+ virtual std::string pos2str(Int2& pos)=0;
28
+ virtual char read_cache() =0;
29
+ virtual bool check_read(const char* chars, int size)=0;
30
+ virtual char read() = 0;
31
+ virtual int clean(int read_size=0)=0;
32
+ virtual int size()=0;
33
+ virtual int full(char*& chars, bool strip=false)=0;
34
+ virtual int rget(char* chars, int size=1)=0;
35
+ virtual int get(char* chars, int size=1)=0;
36
+ virtual bool check_rget(const char* chars, int size=1)=0;
37
+ virtual bool check_get(const char* chars, int size=1)=0;
38
+ };
39
+ struct StrBuffer: public BufferBase {
40
+ const char* str;
41
+ int buffer_size;
42
+ int str_size;
43
+ StrBuffer(const char* str, int size):BufferBase(),str(str),buffer_size(0),str_size(size){}
44
+ std::string pos2str(Int2& pos);
45
+ char read_cache();
46
+ bool check_read(const char* chars, int size);
47
+ char read();
48
+ int clean(int read_size=0);
49
+ int size();
50
+ int full(char*& chars, bool strip=false);
51
+ int rget(char* chars, int size=1);
52
+ int get(char* chars, int size=1);
53
+ inline bool _check_get(const char* chars, int size=1, bool right=false);
54
+ bool check_get(const char* chars, int size=1);
55
+ bool check_rget(const char* chars, int size=1);
56
+ };
57
+ #endif
@@ -0,0 +1,11 @@
1
+
2
+ #ifndef XF_CALLBACK
3
+ #define XF_CALLBACK
4
+ #include"base.h"
5
+ struct Callback{
6
+ virtual void* create(int type, void* val=NULL, int ival=0)=0;
7
+ virtual void dict_set(void* dict, void* key, void *val)=0;
8
+ virtual void list_add(void* list, void* val)=0;
9
+ virtual void* exp(const char* s)=0;
10
+ };
11
+ #endif