File indexing completed on 2026-04-09 07:49:06
0001
0002 usage(){ cat << EOU
0003 QEvtTest.sh
0004 =============
0005
0006 ::
0007
0008 ~/o/qudarap/tests/QEvtTest.sh
0009 ~/o/qudarap/tests/QEvtTest.sh dbg
0010
0011 TEST=one ~/o/qudarap/tests/QEvtTest.sh
0012 BP=cudaMalloc ~/o/qudarap/tests/QEvtTest.sh
0013
0014
0015 Simple way to check for GPU memory leaks while running
0016 a QEvtTest is to run nvidia-smi in another window::
0017
0018 nvidia-smi -lms 500
0019
0020 Fancier way is to use ~/o/sysrap/smonitor.sh
0021 to collect a memory profile into NumPy array
0022 for plotting.
0023
0024 EOU
0025 }
0026 cd $(dirname $(realpath $BASH_SOURCE))
0027 source dbg__.sh
0028
0029
0030 export GEOM=DummyGEOMForQEvtTest
0031
0032 name=QEvtTest
0033
0034
0035
0036 test=loaded
0037
0038 export TEST=${TEST:-$test}
0039 script0=$name.py
0040 script1=${name}_${TEST}.py
0041
0042
0043
0044 export OPTICKS_NUM_EVENT=10
0045
0046 logging(){
0047 type $FUNCNAME
0048 export QEvt=INFO
0049 export QEvt__LIFECYCLE=1
0050 }
0051 [ -n "$LOG" ] && logging
0052
0053 defarg="info_run"
0054 [ -n "$BP" ] && defarg="info_dbg"
0055 arg=${1:-$defarg}
0056
0057
0058 vars="BASH_SOURCE 0 PWD name test TEST defarg arg BP OPTICKS_NUM_EVENT LOG"
0059
0060 if [ "${arg/info}" != "$arg" ]; then
0061 for var in $vars ; do printf "%20s : %s\n" "$var" "${!var}" ; done
0062 fi
0063
0064 if [ "${arg/run}" != "$arg" ]; then
0065 $name
0066 [ $? -ne 0 ] && echo $BASH_SOURCE run error && exit 1
0067 fi
0068
0069 if [ "${arg/dbg}" != "$arg" ]; then
0070 dbg__ $name
0071 [ $? -ne 0 ] && echo $BASH_SOURCE dbg error && exit 2
0072 fi
0073
0074 if [ "${arg/pdb0}" != "$arg" ]; then
0075 ${IPYTHON:-ipython} --pdb -i $script0
0076 [ $? -ne 0 ] && echo $BASH_SOURCE pdb0 error && exit 2
0077 fi
0078
0079 if [ "${arg/pdb1}" != "$arg" ]; then
0080 ${IPYTHON:-ipython} --pdb -i $script1
0081 [ $? -ne 0 ] && echo $BASH_SOURCE pdb1 error && exit 2
0082 fi
0083
0084
0085
0086
0087 exit 0
0088