test.sh 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. #!/bin/bash
  2. CORES=12;
  3. export EXEC=examples/bin/fmm_cheb
  4. # Set run parameters
  5. declare -a nodes=();
  6. declare -a cores=();
  7. declare -a mpi_proc=();
  8. declare -a threads=();
  9. declare -a testcase=();
  10. declare -a n_pts=();
  11. declare -a m=();
  12. declare -a q=();
  13. declare -a tol=();
  14. declare -a depth=();
  15. declare -a unif=();
  16. declare -a adap=();
  17. declare -a max_time=();
  18. nodes+=( 1 1 1 1 ) # Number of compute nodes
  19. cores+=( ${CORES} ${CORES} ${CORES} ${CORES} ) # Number of CPU cores / node
  20. mpi_proc+=( 1 1 1 1 ) # Number of MPI processes
  21. threads+=( ${CORES} ${CORES} ${CORES} ${CORES} ) # Number of OpenMP threads / MPI process
  22. testcase+=( 1 1 1 1 ) # test case: 1) Laplace (smooth) 2) Laplace (discontinuous) ...
  23. n_pts+=( $((8**1)) $((8**1)) $((8**1)) $((8**1)) ) # Total number of points for tree construction
  24. m_pts+=( 1 1 1 1 ) # Maximum number of points per octant
  25. m+=( 10 10 10 10 ) # Multipole order
  26. q+=( 14 14 14 14 ) # Chebyshev order
  27. tol+=( 1e-4 1e-5 1e-6 1e-7 ) # Refinement tolerance
  28. depth+=( 15 15 15 15 ) # Octree maximum depth
  29. unif+=( 0 0 0 0 ) # Uniform point distribution
  30. adap+=( 1 1 1 1 ) # Adaptive refinement
  31. max_time+=( 1000000 1000000 1000000 1000000 ) # Maximum run time
  32. # Export arrays
  33. export nodes_="$(declare -p nodes)";
  34. export cores_="$(declare -p cores)";
  35. export mpi_proc_="$(declare -p mpi_proc)";
  36. export threads_="$(declare -p threads)";
  37. export testcase_="$(declare -p testcase)";
  38. export n_pts_="$(declare -p n_pts)";
  39. export m_pts_="$(declare -p m_pts)";
  40. export m_="$(declare -p m)";
  41. export q_="$(declare -p q)";
  42. export tol_="$(declare -p tol)";
  43. export depth_="$(declare -p depth)";
  44. export unif_="$(declare -p unif)";
  45. export adap_="$(declare -p adap)";
  46. export max_time_="$(declare -p max_time)";
  47. export RESULT_FNAME=$(basename ${0%.*}).out;
  48. export WORK_DIR=$(dirname ${PWD}/$0)/..
  49. cd ${WORK_DIR}
  50. TERM_WIDTH=$(stty size | cut -d ' ' -f 2)
  51. ./scripts/.submit_jobs.sh | cut -b -${TERM_WIDTH}