COMPMID-2779: Add support for generating synthetic int8 graphs.
Adds SyntheticDataTypeMutator, which is responsible for mutating graphs
to int8 and thus enable performance analysis on a wider range of models.
Change-Id: I9a00f0ae59421ab11952660f5115b5dcd9314aaf
Signed-off-by: Georgios Pinitas <georgios.pinitas@arm.com>
Reviewed-on: https://review.mlplatform.org/c/2418
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Reviewed-by: Michele Di Giorgio <michele.digiorgio@arm.com>
diff --git a/arm_compute/graph/IGraphMutator.h b/arm_compute/graph/IGraphMutator.h
index b80d37d..94a28f6 100644
--- a/arm_compute/graph/IGraphMutator.h
+++ b/arm_compute/graph/IGraphMutator.h
@@ -35,6 +35,14 @@
class IGraphMutator
{
public:
+ /** Mutation type */
+ enum class MutationType
+ {
+ IR, /** IR specific mutation */
+ Backend /** Backend specific mutation */
+ };
+
+public:
/** Virtual Destructor */
virtual ~IGraphMutator() = default;
/** Walk the graph and perform a specific mutation
@@ -42,6 +50,11 @@
* @param[in, out] g Graph to walk and mutate
*/
virtual void mutate(Graph &g) = 0;
+ /** Returns mutation type
+ *
+ * @return Mutation type enumeration
+ */
+ virtual MutationType type() const = 0;
/** Returns mutator name
*
* @return Mutator name