123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- # StarPU --- Runtime system for heterogeneous multicore architectures.
- #
- # Copyright (C) 2016 Université de Bordeaux
- #
- # StarPU is free software; you can redistribute it and/or modify
- # it under the terms of the GNU Lesser General Public License as published by
- # the Free Software Foundation; either version 2.1 of the License, or (at
- # your option) any later version.
- #
- # StarPU is distributed in the hope that it will be useful, but
- # WITHOUT ANY WARRANTY; without even the implied warranty of
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- #
- # See the GNU Lesser General Public License in COPYING.LGPL for more details.
- # This provides a helper function to be used for microbenchs that should be run
- # under the various schedulers.
- #
- # The caller should fill either the XFAIL or XSUCCESS variable with the list of
- # schedulers which are supposed to fail or succeed, and then call test_scheds
- set -e
- SCHEDS=`$top_builddir/tools/starpu_sched_display`
- test_scheds()
- {
- TEST=$1
- failed=""
- pass=""
- RESULT=0
- for sched in $SCHEDS;
- do
- if STARPU_SCHED=$sched $top_builddir/tests/microbenchs/$TEST ; then
- echo " SUCCESS: STARPU_SCHED=$sched ./microbenchs/$TEST"
- pass="$pass $sched"
- continue
- fi
- failed="$failed $sched"
- if [ -n "$XSUCCESS" ]
- then
- # We have a list of schedulers that are expected to
- # succeed, others are allowed to fail
- case " $XSUCCESS " in
- *\ $sched\ *)
- echo " FAIL: STARPU_SCHED=$sched ./microbenchs/$TEST" | ( tee /dev/tty || true )
- RESULT=1
- ;;
- *)
- echo " XFAIL: STARPU_SCHED=$sched ./microbenchs/$TEST"
- ;;
- esac
- else
- # We have a list of schedulers that are expected to
- # fail, others are expected to succeed
- case " $XFAIL " in
- *\ $sched\ *)
- echo " XFAIL: STARPU_SCHED=$sched ./microbenchs/$TEST"
- ;;
- *)
- echo " FAIL: STARPU_SCHED=$sched ./microbenchs/$TEST" | ( tee /dev/tty || true )
- RESULT=1
- ;;
- esac
- fi
- done
- echo "passed schedulers:$pass" | ( tee /dev/tty || true )
- echo "failed schedulers:$failed" | ( tee /dev/tty || true )
- return $RESULT
- }
|