Example #1
0
 def node_name(node_index):
     name = generate_name_from(inputs[node_index], input_node_map)
     if name in names_used:
         name = generate_name_from(name,
                                   input_node_map,
                                   suffix=fused_ops[node_index - 2])
     names_used.add(name)
     return name
Example #2
0
 def node_name(i):
     name = util.generate_name_from(inputs[i], input_node_map)
     if name in names_used:
         # avoid name collisions by adding the name of the fused operation
         # (the first name is always unique)
         name = util.generate_name_from(name, input_node_map,
                                        suffix=fused_ops[i-2])
     names_used.add(name)
     return name
 def node_name(node_index):
     """Return unique node names for sub-operations by appending fused-op"""
     i = min(node_index, len(inputs)-1)  # PReLU has 4 inputs, others only 3
     name = generate_name_from(inputs[i], input_node_map)
     if name in names_used:
         name = generate_name_from(name, input_node_map,
                                   suffix=fused_ops[node_index-2])
     names_used.add(name)
     return name
 def test_generate_name_from_given_unique_name(self):
     """generate_name_from should return base name if name is unique"""
     # case #1: no slashes in name, name is unique -> return as-is
     node_map = {}
     base_name = 'name_without_slahes'
     name = rewrite.generate_name_from(base_name, node_map)
     self.assertEqual(name, base_name)
     # case #2: no slashes in name, name in map, name + suffix unique
     node_map[base_name] = rewrite.make_op_node('Neg', 'x', name=base_name)
     suffix = 'uniq'
     name = rewrite.generate_name_from(base_name, node_map, suffix=suffix)
     self.assertEqual(name, f'{base_name}/{suffix}')
     # case #3: slashes in name, name with slashes in map -> return 1st part
     base_name = 'name/suffix'
     node_map[base_name] = rewrite.make_op_node('Neg', 'y', name=base_name)
     name = rewrite.generate_name_from(base_name, node_map)
     self.assertEqual(name, 'name')
     # case #4: slashes in name, name in map, name + suffix unique
     base_name = 'name/suffix/op'
     name = rewrite.generate_name_from(base_name, node_map, suffix='uniq')
     self.assertEqual(name, 'name/suffix/uniq')
 def test_generate_name_from_given_duplicate_name(self):
     """generate_name_from should return new name if base name is taken"""
     node_map = {}
     # case #1: name without slashes -> return name + count
     base_name = 'name_without_slashes'
     node_map[base_name] = rewrite.make_op_node('Neg', 'x', name='_')
     name = rewrite.generate_name_from(base_name, node_map)
     self.assertEqual(name, base_name + '_1')
     # case #2: count needs to increment
     node_map[name] = rewrite.make_op_node('Neg', 'y', name='_')
     name = rewrite.generate_name_from(base_name, node_map)
     self.assertEqual(name, base_name + '_2')
     # case #3: name + suffix -> return name + suffix + count
     suffix = 'suffix'
     node_map[base_name + '/' + suffix] = rewrite.make_op_node('Inv',
                                                               'x',
                                                               name='_')
     name = rewrite.generate_name_from(base_name, node_map, suffix=suffix)
     self.assertEqual(name, f'{base_name}/{suffix}_1')
     # case #4: count needs to increment
     node_map[name] = rewrite.make_op_node('Inv', 'y', name='_')
     name = rewrite.generate_name_from(base_name, node_map, suffix=suffix)
     self.assertEqual(name, f'{base_name}/{suffix}_2')
     # case #5: slashes in name, name in map -> return name + count
     base_name = 'name_without_slashes/suffix'
     name = rewrite.generate_name_from(base_name, node_map)
     self.assertEqual(name, 'name_without_slashes_2')
     # case #6: slashes in name, name + suffix in map -> name+suffix+count
     base_name = 'name_without_slashes/suffix'
     name = rewrite.generate_name_from(base_name, node_map, suffix=suffix)
     self.assertEqual(name, f'{base_name}_2')
Example #6
0
 def _get_name(suffix):
     return generate_name_from(node.name, input_node_map, suffix=suffix)
 def _get_name(suffix):
     return rewrite.generate_name_from(node.name, input_map,
                                       f'logSigmoid/{suffix}')