summaryrefslogtreecommitdiff
path: root/tests/lldb/tests/testcases/test_reduction_combiner.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/lldb/tests/testcases/test_reduction_combiner.py')
-rw-r--r--tests/lldb/tests/testcases/test_reduction_combiner.py134
1 files changed, 0 insertions, 134 deletions
diff --git a/tests/lldb/tests/testcases/test_reduction_combiner.py b/tests/lldb/tests/testcases/test_reduction_combiner.py
deleted file mode 100644
index c070f3b3..00000000
--- a/tests/lldb/tests/testcases/test_reduction_combiner.py
+++ /dev/null
@@ -1,134 +0,0 @@
-# Copyright (C) 2016 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-from __future__ import absolute_import
-
-import re
-import itertools
-
-from harness.test_base_remote import TestBaseRemote
-from harness.decorators import (
- ordered_test,
- wimpy,
- skip_conditional,
-)
-from harness.assert_mixins import CoordinateAssertionsMixin
-
-from reduce_common import (
- REDUCE_SCRIPT,
- REDUCE_AUTO_COMB_SCRIPT,
- ReductionMixin,
-)
-
-
-multithreaded = lambda: skip_conditional(
- lambda self: self.cpu_count == 1,
- "skipping multithreaded test (1 CPU present)"
-)
-
-
-class TestReduceCombinerMultithreaded(
- TestBaseRemote, CoordinateAssertionsMixin, ReductionMixin):
- """
- RenderScript reduction combiners are currently run only on the output of a
- parallel reduction step for the CPU reference implementation. These
- testcases test LLDB's handling of breakpoints for the combiner function.
- """
-
- bundle_target = {
- 'java': 'Reduction',
- }
-
- def _delete_breakpoints(self):
- try:
- self.do_command('breakpoint delete -f')
- except self.TestFail:
- pass
-
- def setup(self, android):
- """
- This test *must* be run on multiple threads, and is skipped if the
- device does not support multiple threads
- """
- cpu_spec = android.shell("cat /sys/devices/system/cpu/online").strip()
- match = re.search(r'(^0(-\d+)?(,\d+([-]\d*)?)*)$', cpu_spec)
- if not match or not match.groups():
- raise self.TestFail(
- "unable to parse number of available CPUs in %r" % cpu_spec)
-
- def parse_range(s):
- r = s.split('-')
- if len(r) == 1:
- return 1
- return int(r[1]) - int(r[0])
-
- self.cpu_count = sum(map(parse_range, cpu_spec.split(',')))
- android.push_prop('debug.rs.max-threads', self.cpu_count + 1)
-
- def teardown(self, android):
- """Reset the number of RS threads to the previous value."""
- android.pop_prop('debug.rs.max-threads')
-
- @multithreaded()
- @ordered_test(0)
- @wimpy
- def test_setup(self):
- self.try_command('language renderscript status', [])
- # first point of order: make sure the compiled script is properly
- # loaded and that we can set a breakpoint on the named reduction
- self.try_command(
- 'language renderscript reduction breakpoint set find_min_user_type_auto_comb')
- self.try_command(
- 'process continue',
- expected_regex=[
- r'Process \d+ stopped',
- r'frame #0: (0x[0-9a-fA-F]+ )?librs.reduce_auto_comb.so`'
- ]
- )
-
- @multithreaded()
- def test_function_role_breakpoints_combinations(self):
- func_role_combinations = itertools.combinations(
- ('accumulator', 'outconverter', 'initializer', 'combiner'),
- r=2
- )
- self._test_func_role_combinations(func_role_combinations)
-
- @multithreaded()
- def test_reduction_breakpoint_set_single_type_user_comb(self):
- return self._reduction_breakpoint_set_single_type(
- 'reduce',
- REDUCE_SCRIPT,
- 'find_min_user_type',
- (
- ('find_min_user_type_init', 'initializer'),
- ('find_min_user_type_accum', 'accumulator'),
- ('find_min_user_type_comb', 'combiner'),
- ('find_min_user_type_outc', 'outconverter')
- )
- )
-
- @multithreaded()
- def test_reduction_breakpoint_set_single_type_auto_comb(self):
- return self._reduction_breakpoint_set_single_type(
- 'reduce_auto_comb',
- REDUCE_AUTO_COMB_SCRIPT,
- 'find_min_user_type_auto_comb',
- (
- ('find_min_user_type_init', 'initializer'),
- ('find_min_user_type_accum', 'accumulator'),
- ('find_min_user_type_accum.combiner', 'combiner'),
- ('find_min_user_type_outc', 'outconverter')
- )
- )