https://github.com/GPflow/GPflow
Revision 3ff611071ef4bdebad6cbc5987fa0603168313b3 authored by John Pearson on 27 April 2018, 13:36:43 UTC, committed by James Hensman on 27 April 2018, 13:36:43 UTC
- Issue appears to affect only ScipyOptimizer. Does not affect, e.g.,
  AdamOptimizer on doc/source/notebook/classification
- Appears to be due to the fact that TensorFlow variables are not stably
  ordered across across replications, so var_list (and thus random
initial values for optimization) is not either.
1 parent 913bfe3
Raw File
Tip revision: 3ff611071ef4bdebad6cbc5987fa0603168313b3 authored by John Pearson on 27 April 2018, 13:36:43 UTC
returning var_list to Optimizer in order
Tip revision: 3ff6110
run_tests.sh
#!/bin/bash

# Script for running GPflow tests in sequential and parallel modes.
# Running tensorflow based tests in distinct processes prevents
# bad memory accumulations which can lead to crashes or slow runs
# on resource limited hardware.
# Written by Artem Artemev, 06/08/2017

set -e

mode=${1:-"--sequential"}

case "$mode" in
    -p|--parallel)
    numproc=$([[ $(uname) == 'Darwin' ]] && sysctl -n hw.physicalcpu_max || nproc)
    echo ">>> Parallel mode. Number of processes = $numproc"
    echo testing/test_*.py | xargs -n 1 -P "$numproc" bash -c 'nosetests -v --nologcapture $0 || exit 255'
    ;;
    -s|--sequential)
    for test_file in testing/test_*.py; do
      echo ">>> Run $test_file"
      nosetests -v --nologcapture "$test_file"
      rc=$?
      if [ "$rc" != "0" ]; then
        echo ">>> $test_file failed"
        exit $rc
      fi
    done
    ;;
    *)
    ;;
esac
back to top