nncf icon indicating copy to clipboard operation
nncf copied to clipboard

[PT] Extractor for fused convolution

Open AlexanderDokuchaev opened this issue 11 months ago • 1 comments

Changes

  • Get layer attributes by args, kwargs for conv, batch_norm, group_norm and linear functions.
  • Extract submodules for FBC for custom conv and batch norm modules.
  • Add model_graph_manager module to works with models with wrapped with trace_parameters=True. (model_analizer.py will be deprecated after finished refactor PTQ to use graph with constant nodes)
  • Moved nncf/quantization/algorithms/weight_compression/torch_backend.py to model_graph_manager

Related tickets

129581

Tests

tests/torch/test_model_graph_manager.py tests/torch/test_extractor.py

AlexanderDokuchaev avatar Mar 07 '24 22:03 AlexanderDokuchaev

Codecov Report

Attention: Patch coverage is 89.26380% with 35 lines in your changes are missing coverage. Please review.

Project coverage is 84.84%. Comparing base (c5b3df8) to head (906800f). Report is 27 commits behind head on develop.

Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff             @@
##           develop    #2559      +/-   ##
===========================================
- Coverage    90.92%   84.84%   -6.08%     
===========================================
  Files          498      494       -4     
  Lines        45550    45332     -218     
===========================================
- Hits         41415    38464    -2951     
- Misses        4135     6868    +2733     
Files Coverage Δ
nncf/common/graph/layer_attributes.py 96.29% <100.00%> (+0.03%) :arrow_up:
nncf/common/graph/operator_metatypes.py 93.97% <100.00%> (+0.14%) :arrow_up:
...ion/algorithms/weight_compression/torch_backend.py 84.00% <100.00%> (-1.09%) :arrow_down:
nncf/torch/dynamic_graph/wrappers.py 96.55% <100.00%> (+0.44%) :arrow_up:
nncf/torch/graph/operator_metatypes.py 99.10% <100.00%> (-0.13%) :arrow_down:
...f/torch/dynamic_graph/layer_attributes_handlers.py 99.36% <98.63%> (-0.64%) :arrow_down:
nncf/torch/extractor.py 83.95% <83.95%> (ø)
nncf/torch/model_graph_manager.py 84.21% <84.21%> (ø)

... and 83 files with indirect coverage changes

Flag Coverage Δ
COMMON 44.03% <18.75%> (+1.30%) :arrow_up:
ONNX 34.54% <14.72%> (-0.23%) :arrow_down:
OPENVINO ∅ <ø> (∅)
TENSORFLOW 29.72% <0.92%> (+0.06%) :arrow_up:
TORCH 65.87% <89.26%> (-0.14%) :arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Components Coverage Δ
common 93.11% <100.00%> (-0.64%) :arrow_down:
torch 93.48% <89.13%> (+0.04%) :arrow_up:
tensorflow 93.74% <ø> (-0.22%) :arrow_down:
onnx 93.05% <ø> (ø)
openvino 25.58% <ø> (-68.49%) :arrow_down:
ptq 69.67% <100.00%> (-18.07%) :arrow_down:

codecov[bot] avatar Mar 07 '24 22:03 codecov[bot]

@alexsu52 TriggerBetta/647

AlexanderDokuchaev avatar Mar 20 '24 14:03 AlexanderDokuchaev