sscal.sh 5.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. #!/bin/bash
  2. CORES=16;
  3. export EXEC=examples/bin/fmm_cheb
  4. # List arrays and corresponding executable option prefix
  5. declare -a opt_array=(nodes cores mpi_proc threads testcase n_pts m_pts m q tol depth unif adap max_time);
  6. declare -a opt_names=( - - - omp test N M m q tol d unif adap -);
  7. for (( i=0; i<${#opt_names[@]}; i++ )) ; do # Declare arrays
  8. eval "declare -a ${opt_array[$i]}=()";
  9. done
  10. ###################################################################################################
  11. # NON-UNIFORM OCTREE, LAPLACE KERNEL, STRONG SCALABILITY #
  12. ###################################################################################################
  13. # m=10, q=14, octants=
  14. nodes+=( 1 8 64 512 4096 32768 :)
  15. cores+=( ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} :)
  16. mpi_proc+=( 4 32 256 2048 16384 16384 :)
  17. threads+=( ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} :)
  18. testcase+=( 1 1 1 1 1 1 :)
  19. n_pts+=( $((8**7)) $((8**7)) $((8**7)) $((8**7)) $((8**7)) $((8**7)) :)
  20. m_pts+=( 1 1 1 1 1 1 :)
  21. m+=( 10 10 10 10 10 10 :)
  22. q+=( 14 14 14 14 14 14 :)
  23. tol+=( 1e-0 1e-0 1e-0 1e-0 1e-0 1e-0 :)
  24. depth+=( 15 15 15 15 15 15 :)
  25. unif+=( 0 0 0 0 0 0 :)
  26. adap+=( 0 0 0 0 0 0 :)
  27. max_time+=( 800 800 800 800 800 800 :)
  28. ###################################################################################################
  29. # NON-UNIFORM OCTREE, STOKES KERNEL, STRONG SCALABILITY #
  30. ###################################################################################################
  31. # m=10, q=14, octants=
  32. nodes+=( 1 8 64 512 4096 32768 :)
  33. cores+=( ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} :)
  34. mpi_proc+=( 1 8 64 512 4096 32768 :)
  35. threads+=( ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} :)
  36. testcase+=( 3 3 3 3 3 3 :)
  37. n_pts+=( $((8**7)) $((8**7)) $((8**7)) $((8**7)) $((8**7)) $((8**7)) :)
  38. m_pts+=( 1 1 1 1 1 1 :)
  39. m+=( 10 10 10 10 10 10 :)
  40. q+=( 14 14 14 14 14 14 :)
  41. tol+=( 1e-0 1e-0 1e-0 1e-0 1e-0 1e-0 :)
  42. depth+=( 15 15 15 15 15 15 :)
  43. unif+=( 0 0 0 0 0 0 :)
  44. adap+=( 0 0 0 0 0 0 :)
  45. max_time+=( 2400 2400 2400 2400 2400 2400 :)
  46. ###################################################################################################
  47. # UNIFORM OCTREE, HELMHOLTZ KERNEL, STRONG SCALABILITY #
  48. ###################################################################################################
  49. # m=10, q=14, octants=262144
  50. nodes+=( 4 8 16 32 64 128 256 512 1024 :)
  51. cores+=( ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} :)
  52. mpi_proc+=( 4 8 16 32 64 128 256 512 1024 :)
  53. threads+=( ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} ${CORES} :)
  54. testcase+=( 5 5 5 5 5 5 5 5 5 :)
  55. n_pts+=( $((8**6)) $((8**6)) $((8**6)) $((8**6)) $((8**6)) $((8**6)) $((8**6)) $((8**6)) $((8**6)) :)
  56. m_pts+=( 1 1 1 1 1 1 1 1 1 :)
  57. m+=( 10 10 10 10 10 10 10 10 10 :)
  58. q+=( 14 14 14 14 14 14 14 14 14 :)
  59. tol+=( 1e-0 1e-0 1e-0 1e-0 1e-0 1e-0 1e-0 1e-0 1e-0 :)
  60. depth+=( 15 15 15 15 15 15 15 15 15 :)
  61. unif+=( 1 1 1 1 1 1 1 1 1 :)
  62. adap+=( 0 0 0 0 0 0 0 0 0 :)
  63. max_time+=( 2400 2400 2400 2400 2400 2400 2400 2400 2400 :)
  64. ###################################################################################################
  65. WORK_DIR=$(dirname ${PWD}/$0)/..
  66. TERM_WIDTH=$(stty size | cut -d ' ' -f 2)
  67. source ${WORK_DIR}/scripts/.submit_jobs.sh | cut -b -${TERM_WIDTH}