da4ml 0.3.0__tar.gz → 0.3.1__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.

Potentially problematic release.


This version of da4ml might be problematic. Click here for more details.

Files changed (76) hide show
  1. {da4ml-0.3.0/src/da4ml.egg-info → da4ml-0.3.1}/PKG-INFO +1 -1
  2. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/_version.py +2 -2
  3. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/source/build_prj.tcl +6 -8
  4. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/verilog_model.py +2 -2
  5. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/converter/hgq2/replica.py +1 -1
  6. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/trace/ops/conv_utils.py +1 -1
  7. {da4ml-0.3.0 → da4ml-0.3.1/src/da4ml.egg-info}/PKG-INFO +1 -1
  8. {da4ml-0.3.0 → da4ml-0.3.1}/.clang-format +0 -0
  9. {da4ml-0.3.0 → da4ml-0.3.1}/.github/workflows/python-publish.yml +0 -0
  10. {da4ml-0.3.0 → da4ml-0.3.1}/.gitignore +0 -0
  11. {da4ml-0.3.0 → da4ml-0.3.1}/.pre-commit-config.yaml +0 -0
  12. {da4ml-0.3.0 → da4ml-0.3.1}/DAIS-spec.md +0 -0
  13. {da4ml-0.3.0 → da4ml-0.3.1}/LICENSE +0 -0
  14. {da4ml-0.3.0 → da4ml-0.3.1}/README.md +0 -0
  15. {da4ml-0.3.0 → da4ml-0.3.1}/interperter/DAISInterpreter.cc +0 -0
  16. {da4ml-0.3.0 → da4ml-0.3.1}/interperter/DAISInterpreter.hh +0 -0
  17. {da4ml-0.3.0 → da4ml-0.3.1}/pyproject.toml +0 -0
  18. {da4ml-0.3.0 → da4ml-0.3.1}/setup.cfg +0 -0
  19. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/__init__.py +0 -0
  20. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/cmvm/__init__.py +0 -0
  21. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/cmvm/api.py +0 -0
  22. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/cmvm/core/__init__.py +0 -0
  23. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/cmvm/core/indexers.py +0 -0
  24. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/cmvm/core/state_opr.py +0 -0
  25. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/cmvm/types.py +0 -0
  26. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/cmvm/util/__init__.py +0 -0
  27. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/cmvm/util/bit_decompose.py +0 -0
  28. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/cmvm/util/mat_decompose.py +0 -0
  29. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/__init__.py +0 -0
  30. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/__init__.py +0 -0
  31. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/cpp_codegen.py +0 -0
  32. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/hls_model.py +0 -0
  33. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_binary.h +0 -0
  34. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_common.h +0 -0
  35. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_decl.h +0 -0
  36. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_fixed.h +0 -0
  37. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_fixed_base.h +0 -0
  38. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_fixed_ref.h +0 -0
  39. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_fixed_special.h +0 -0
  40. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_int.h +0 -0
  41. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_int_base.h +0 -0
  42. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_int_ref.h +0 -0
  43. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_int_special.h +0 -0
  44. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/ap_shift_reg.h +0 -0
  45. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/etc/ap_private.h +0 -0
  46. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/hls_math.h +0 -0
  47. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/hls_stream.h +0 -0
  48. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/ap_types/utils/x_hls_utils.h +0 -0
  49. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/binder_util.hh +0 -0
  50. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/build_binder.mk +0 -0
  51. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/cpp/source/vitis_bitshift.hh +0 -0
  52. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/__init__.py +0 -0
  53. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/comb.py +0 -0
  54. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/io_wrapper.py +0 -0
  55. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/pipeline.py +0 -0
  56. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/source/binder_util.hh +0 -0
  57. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/source/build_binder.mk +0 -0
  58. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/source/ioutil.hh +0 -0
  59. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/source/mux.v +0 -0
  60. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/source/negative.v +0 -0
  61. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/source/shift_adder.v +0 -0
  62. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/codegen/verilog/source/template.xdc +0 -0
  63. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/converter/__init__.py +0 -0
  64. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/converter/hgq2/parser.py +0 -0
  65. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/trace/__init__.py +0 -0
  66. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/trace/fixed_variable.py +0 -0
  67. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/trace/fixed_variable_array.py +0 -0
  68. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/trace/ops/__init__.py +0 -0
  69. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/trace/ops/einsum_utils.py +0 -0
  70. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/trace/ops/reduce_utils.py +0 -0
  71. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/trace/pipeline.py +0 -0
  72. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml/trace/tracer.py +0 -0
  73. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml.egg-info/SOURCES.txt +0 -0
  74. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml.egg-info/dependency_links.txt +0 -0
  75. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml.egg-info/requires.txt +0 -0
  76. {da4ml-0.3.0 → da4ml-0.3.1}/src/da4ml.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: da4ml
3
- Version: 0.3.0
3
+ Version: 0.3.1
4
4
  Summary: Digital Arithmetic for Machine Learning
5
5
  Author-email: Chang Sun <chsun@cern.ch>
6
6
  License: GNU Lesser General Public License v3 (LGPLv3)
@@ -17,5 +17,5 @@ __version__: str
17
17
  __version_tuple__: VERSION_TUPLE
18
18
  version_tuple: VERSION_TUPLE
19
19
 
20
- __version__ = version = '0.3.0'
21
- __version_tuple__ = version_tuple = (0, 3, 0)
20
+ __version__ = version = '0.3.1'
21
+ __version_tuple__ = version_tuple = (0, 3, 1)
@@ -1,7 +1,7 @@
1
1
  set project_name "${PROJECT_NAME}"
2
2
  set device "${DEVICE}"
3
3
 
4
- set top_module "${project_name}_wrapper"
4
+ set top_module "${project_name}"
5
5
  set output_dir "./output_${project_name}"
6
6
 
7
7
  create_project $project_name "${output_dir}/$project_name" -force -part $device
@@ -9,9 +9,10 @@ create_project $project_name "${output_dir}/$project_name" -force -part $device
9
9
  set_property TARGET_LANGUAGE Verilog [current_project]
10
10
  set_property DEFAULT_LIB work [current_project]
11
11
 
12
- read_verilog "${project_name}_wrapper.v"
13
12
  read_verilog "${project_name}.v"
14
13
  read_verilog "shift_adder.v"
14
+ read_verilog "negative.v"
15
+ read_verilog "mux.v"
15
16
  foreach file [glob -nocomplain "${project_name}_stage*.v"] {
16
17
  read_verilog $file
17
18
  }
@@ -25,8 +26,7 @@ file mkdir "${output_dir}/reports"
25
26
 
26
27
  # synth
27
28
  synth_design -top $top_module -mode out_of_context -retiming \
28
- -flatten_hierarchy rebuilt -resource_sharing auto \
29
- -directive AlternateRoutability
29
+ -flatten_hierarchy full -resource_sharing auto
30
30
 
31
31
  write_checkpoint -force "${output_dir}/${project_name}_post_synth.dcp"
32
32
 
@@ -34,15 +34,13 @@ report_timing_summary -file "${output_dir}/reports/${project_name}_post_synth_ti
34
34
  report_power -file "${output_dir}/reports/${project_name}_post_synth_power.rpt"
35
35
  report_utilization -file "${output_dir}/reports/${project_name}_post_synth_util.rpt"
36
36
 
37
- # set_property CARRY_REMAP 3 [get_cells -hier -filter {ref_name == CARRY8}]
38
-
39
- opt_design -directive ExploreSequentialArea
37
+ # opt_design -directive ExploreSequentialArea
40
38
  opt_design -directive ExploreWithRemap
41
39
 
42
40
  report_design_analysis -congestion -file "${output_dir}/reports/${project_name}_post_opt_congestion.rpt"
43
41
 
44
42
  # place
45
- place_design -directive AltSpreadLogic_high -fanout_opt
43
+ place_design -directive SSI_HighUtilSLRs -fanout_opt
46
44
  report_design_analysis -congestion -file "${output_dir}/reports/${project_name}_post_place_congestion_initial.rpt"
47
45
 
48
46
  phys_opt_design -directive AggressiveExplore
@@ -28,10 +28,10 @@ class VerilogModel:
28
28
  solution: Solution | CascadedSolution,
29
29
  prj_name: str,
30
30
  path: str | Path,
31
- latency_cutoff: int = -1,
31
+ latency_cutoff: float = -1,
32
32
  print_latency: bool = True,
33
33
  part_name: str = 'xcvu13p-flga2577-2-e',
34
- clock_period: int = 5,
34
+ clock_period: float = 5,
35
35
  clock_uncertainty: float = 0.1,
36
36
  io_delay_minmax: tuple[float, float] = (0.2, 0.4),
37
37
  register_layers: int = 1,
@@ -157,7 +157,7 @@ class MirrorQDense(MirrorOperationBase):
157
157
  dim = inputs._vars.ndim
158
158
  axis = op.axis
159
159
  assert axis != 0, 'Cannot normalizing on batch axis'
160
- axis -= 1
160
+ axis = axis - 1 if axis >= 0 else dim + axis
161
161
  idx = ''.join(chr(ord('a') + i) for i in range(dim))
162
162
  eq = f'...{idx},{idx[axis]}->...{idx}'
163
163
  else:
@@ -40,7 +40,7 @@ def stride_arr(stride: int | tuple[int, ...], arr: np.ndarray):
40
40
  stride = (stride,) * (ndim - 1)
41
41
 
42
42
  _idx = tuple(slice(None, None, st) for st in stride)
43
- return arr[*_idx]
43
+ return arr[_idx]
44
44
 
45
45
 
46
46
  TA = TypeVar('TA', 'FixedVariableArray', NDArray[np.integer | np.floating])
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: da4ml
3
- Version: 0.3.0
3
+ Version: 0.3.1
4
4
  Summary: Digital Arithmetic for Machine Learning
5
5
  Author-email: Chang Sun <chsun@cern.ch>
6
6
  License: GNU Lesser General Public License v3 (LGPLv3)
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes