コード例 #1
0
    def testParseNamesWithoutPrefixOrSuffix(self):
        device_name, node_name, output_slot, debug_op, exec_index = (
            evaluator._parse_debug_tensor_name("foo:1"))
        self.assertIsNone(device_name)
        self.assertEqual("foo", node_name)
        self.assertEqual(1, output_slot)
        self.assertEqual("DebugIdentity", debug_op)
        self.assertEqual(0, exec_index)

        device_name, node_name, output_slot, debug_op, exec_index = (
            evaluator._parse_debug_tensor_name("hidden_0/Weights:0"))
        self.assertIsNone(device_name)
        self.assertEqual("hidden_0/Weights", node_name)
        self.assertEqual(0, output_slot)
        self.assertEqual("DebugIdentity", debug_op)
        self.assertEqual(0, exec_index)
コード例 #2
0
    def testParseNamesWithoutPrefixWithDebugOpSuffix(self):
        device_name, node_name, output_slot, debug_op, exec_index = (
            evaluator._parse_debug_tensor_name("foo:1:DebugNanCount"))
        self.assertIsNone(device_name)
        self.assertEqual("foo", node_name)
        self.assertEqual(1, output_slot)
        self.assertEqual("DebugNanCount", debug_op)
        self.assertEqual(0, exec_index)

        device_name, node_name, output_slot, debug_op, exec_index = (
            evaluator._parse_debug_tensor_name(
                "hidden_0/Weights:0:DebugNumericSummary"))
        self.assertIsNone(device_name)
        self.assertEqual("hidden_0/Weights", node_name)
        self.assertEqual(0, output_slot)
        self.assertEqual("DebugNumericSummary", debug_op)
        self.assertEqual(0, exec_index)
コード例 #3
0
    def testParseNamesWithDeviceNamePrefixWithoutDebugOpSuffix(self):
        device_name, node_name, output_slot, debug_op, exec_index = (
            evaluator._parse_debug_tensor_name(
                "/job:ps/replica:0/task:2/cpu:0:foo:1"))
        self.assertEqual("/job:ps/replica:0/task:2/cpu:0", device_name)
        self.assertEqual("foo", node_name)
        self.assertEqual(1, output_slot)
        self.assertEqual("DebugIdentity", debug_op)
        self.assertEqual(0, exec_index)

        device_name, node_name, output_slot, debug_op, exec_index = (
            evaluator._parse_debug_tensor_name(
                "/job:worker/replica:0/task:3/gpu:0:hidden_0/Weights:0"))
        self.assertEqual("/job:worker/replica:0/task:3/gpu:0", device_name)
        self.assertEqual("hidden_0/Weights", node_name)
        self.assertEqual(0, output_slot)
        self.assertEqual("DebugIdentity", debug_op)
        self.assertEqual(0, exec_index)
コード例 #4
0
    def testParseMalformedDebugTensorName(self):
        with self.assertRaisesRegex(
                ValueError,
                r"The debug tensor name in the to-be-evaluated expression is "
                r"malformed:"):
            evaluator._parse_debug_tensor_name(
                "/job:ps/replica:0/task:2/cpu:0:foo:1:DebugNanCount:1337")

        with self.assertRaisesRegex(
                ValueError,
                r"The debug tensor name in the to-be-evaluated expression is "
                r"malformed:"):
            evaluator._parse_debug_tensor_name(
                "/job:ps/replica:0/cpu:0:foo:1:DebugNanCount")

        with self.assertRaises(ValueError):
            evaluator._parse_debug_tensor_name("foo:1:DebugNanCount[]")

        with self.assertRaises(ValueError):
            evaluator._parse_debug_tensor_name("foo:1[DebugNanCount]")