diff options
author | Madeleine Dunn <madeleine.dunn@arm.com> | 2023-10-09 17:02:54 +0100 |
---|---|---|
committer | Madeleine Dunn <madeleine.dunn@arm.com> | 2024-04-03 16:13:48 +0100 |
commit | 2a2a910d6d7cc3e7555b0a3c1ba458a4065c41ae (patch) | |
tree | 8f72d02ef820fb4b5b61b9a938c814b9bea8b869 | |
parent | a67bcd6eccaa4de00a08a3def8323debecff84d7 (diff) | |
download | mlia-2a2a910d6d7cc3e7555b0a3c1ba458a4065c41ae.tar.gz |
feat: Add placeholder rewrite_target for sparsity24
- The placeholder currently duplicates the existing fc target
Resolves: MLIA-1000
Signed-off-by: Madeleine Dunn <madeleine.dunn@arm.com>
Change-Id: I0df5d47e61dafa567e212566bbcb0f1639fe7642
-rw-r--r-- | src/mlia/nn/rewrite/core/rewrite.py | 5 | ||||
-rw-r--r-- | src/mlia/nn/rewrite/library/fc_sparsity24_layer.py | 2 | ||||
-rw-r--r-- | tests/test_cli_commands.py | 15 | ||||
-rw-r--r-- | tests/test_nn_rewrite_core_rewrite.py | 6 |
4 files changed, 21 insertions, 7 deletions
diff --git a/src/mlia/nn/rewrite/core/rewrite.py b/src/mlia/nn/rewrite/core/rewrite.py index 03af0e9..a4d47c4 100644 --- a/src/mlia/nn/rewrite/core/rewrite.py +++ b/src/mlia/nn/rewrite/core/rewrite.py @@ -114,10 +114,11 @@ class RewritingOptimizer(Optimizer): registry = RewriteRegistry( [ DynamicallyLoadedRewrite( - "fully-connected", "mlia.nn.rewrite.library.fc_layer.get_keras_model" + "fully-connected", + "mlia.nn.rewrite.library.fc_layer.get_keras_model", ), DynamicallyLoadedRewrite( - "fully_connected_sparsity24", + "fully-connected-sparsity24", "mlia.nn.rewrite.library.fc_sparsity24_layer.get_keras_model24", ), ] diff --git a/src/mlia/nn/rewrite/library/fc_sparsity24_layer.py b/src/mlia/nn/rewrite/library/fc_sparsity24_layer.py index fda619f..1b17522 100644 --- a/src/mlia/nn/rewrite/library/fc_sparsity24_layer.py +++ b/src/mlia/nn/rewrite/library/fc_sparsity24_layer.py @@ -7,8 +7,6 @@ from keras.api._v2 import keras # Temporary workaround for now: MLIA-1107 from .fc_layer import get_keras_model -# get_keras_model(input_shape,output_shape) - def get_keras_model24(input_shape: Any, output_shape: Any) -> keras.Model: """Generate TensorFlow Lite model for rewrite.""" diff --git a/tests/test_cli_commands.py b/tests/test_cli_commands.py index 5b2b947..e4b2609 100644 --- a/tests/test_cli_commands.py +++ b/tests/test_cli_commands.py @@ -84,6 +84,19 @@ def test_performance_unknown_target( ], [ "ethos-u55-256", + False, + False, + None, + None, + None, + True, + "fully-connected-sparsity24", + "sequential/flatten/Reshape", + "StatefulPartitionedCall:0", + does_not_raise(), + ], + [ + "ethos-u55-256", True, False, None, @@ -127,7 +140,7 @@ def test_performance_unknown_target( match=re.escape( "Invalid rewrite target: 'random'. " "Supported rewrites: ['fully-connected'," - " 'fully_connected_sparsity24']" + " 'fully-connected-sparsity24']" ), ), ], diff --git a/tests/test_nn_rewrite_core_rewrite.py b/tests/test_nn_rewrite_core_rewrite.py index d9c74ea..1d0100a 100644 --- a/tests/test_nn_rewrite_core_rewrite.py +++ b/tests/test_nn_rewrite_core_rewrite.py @@ -42,13 +42,15 @@ def test_rewrite() -> None: "rewrite_name, expected_error", [ ("fully-connected", does_not_raise()), + ("fully-connected-sparsity24", does_not_raise()), ("random", does_not_raise()), ], ) def test_rewrite_configuration( test_tflite_model_fp32: Path, rewrite_name: str, expected_error: Any ) -> None: - """Test get_rewrite function only supports rewrite type fully-connected.""" + """Test get_rewrite function only supports rewrite types + fully-connected and fully-connected-sparsity24.""" with expected_error: config_obj = RewriteConfiguration( rewrite_name, @@ -102,7 +104,7 @@ def test_builtin_rewrite_names() -> None: """Test if all builtin rewrites are properly registered and returned.""" assert RewritingOptimizer.builtin_rewrite_names() == [ "fully-connected", - "fully_connected_sparsity24", + "fully-connected-sparsity24", ] |