=== If no file names and line numbers are shown below, one can run addr2line -Cpfie my_exefile my_line_address to convert `my_line_address` (e.g., 0x4a6b) into file name and line number. Or one can use amrex/Tools/Backtrace/parse_bt.py. === Please note that the line number reported by addr2line may not be accurate. One can use readelf -wl my_exefile | grep my_line_address' to find out the offset for that line. 0: ./Castro2d.gnu.TEST.TPROF.MPI.OMP.ex(+0x192bb0) [0x56248546abb0] amrex::BLBackTrace::print_backtrace_info(_IO_FILE*) /raid/testing/castro-gfortran/amrex//Src/Base/AMReX_BLBackTrace.cpp:174:39 1: ./Castro2d.gnu.TEST.TPROF.MPI.OMP.ex(+0x195116) [0x56248546d116] amrex::BLBackTrace::handler(int) /raid/testing/castro-gfortran/amrex//Src/Base/AMReX_BLBackTrace.cpp:80:8 2: ./Castro2d.gnu.TEST.TPROF.MPI.OMP.ex(+0x91a97) [0x562485369a97] amrex::Error_host(char const*) /raid/testing/castro-gfortran/amrex//Src/Base/AMReX.cpp:199:1 3: ./Castro2d.gnu.TEST.TPROF.MPI.OMP.ex(+0x8ab90) [0x562485362b90] amrex::Error(char const*) inlined at /raid/testing/castro-gfortran/Castro//Source/problems/Castro_bc_fill_nd.cpp:90:21 in ca_statefill(amrex::Box const&, amrex::FArrayBox&, int, int, amrex::Geometry const&, double, amrex::Vector > const&, int, int) /raid/testing/castro-gfortran/amrex//Src/Base/AMReX.H:119:5 ca_statefill(amrex::Box const&, amrex::FArrayBox&, int, int, amrex::Geometry const&, double, amrex::Vector > const&, int, int) /raid/testing/castro-gfortran/Castro//Source/problems/Castro_bc_fill_nd.cpp:90:21 4: ./Castro2d.gnu.TEST.TPROF.MPI.OMP.ex(+0x21ffb1) [0x5624854f7fb1] amrex::StateData::FillBoundary(amrex::Box const&, amrex::FArrayBox&, double, amrex::Geometry const&, int, int, int) /raid/testing/castro-gfortran/amrex//Src/Amr/AMReX_StateData.cpp:556:22 5: ./Castro2d.gnu.TEST.TPROF.MPI.OMP.ex(+0x2224f8) [0x5624854fa4f8] amrex::StateDataPhysBCFunct::operator()(amrex::MultiFab&, int, int, amrex::IntVect const&, double, int) [clone ._omp_fn.0] /raid/testing/castro-gfortran/amrex//Src/Amr/AMReX_StateData.cpp:909:44 6: /lib64/libgomp.so.1(GOMP_parallel+0x46) [0x7f69dc25e4c6] GOMP_parallel ??:0 7: ./Castro2d.gnu.TEST.TPROF.MPI.OMP.ex(+0x22048f) [0x5624854f848f] amrex::StateDataPhysBCFunct::operator()(amrex::MultiFab&, int, int, amrex::IntVect const&, double, int) /raid/testing/castro-gfortran/amrex//Src/Amr/AMReX_StateData.cpp:870:5 8: ./Castro2d.gnu.TEST.TPROF.MPI.OMP.ex(+0x21b4e3) [0x5624854f34e3] std::enable_if::value, void>::type amrex::FillPatchSingleLevel(amrex::MultiFab&, amrex::IntVect const&, double, amrex::Vector > const&, amrex::Vector > const&, int, int, int, amrex::Geometry const&, amrex::StateDataPhysBCFunct&, int) /raid/testing/castro-gfortran/amrex//Src/AmrCore/AMReX_FillPatchUtil_I.H:53:5 9: ./Castro2d.gnu.TEST.TPROF.MPI.OMP.ex(+0x210696) [0x5624854e8696] std::vector >::~vector() inlined at /raid/testing/castro-gfortran/amrex//Src/Base/AMReX_Vector.H:22:7 in amrex::FillPatchIterator::FillFromLevel0(double, int, int, int, int) /usr/include/c++/9/bits/stl_vector.h:677:15 amrex::Vector >::~Vector() /raid/testing/castro-gfortran/amrex//Src/Base/AMReX_Vector.H:22:7 amrex::FillPatchIterator::FillFromLevel0(double, int, int, int, int) /raid/testing/castro-gfortran/amrex//Src/Amr/AMReX_AmrLevel.cpp:1098:18 10: ./Castro2d.gnu.TEST.TPROF.MPI.OMP.ex(+0x211624) [0x5624854e9624] amrex::FillPatchIterator::Initialize(int, double, int, int, int) /raid/testing/castro-gfortran/amrex//Src/Amr/AMReX_AmrLevel.cpp:1010:20 11: ./Castro2d.gnu.TEST.TPROF.MPI.OMP.ex(+0x211ea7) [0x5624854e9ea7] amrex::AmrLevel::FillPatch(amrex::AmrLevel&, amrex::MultiFab&, int, double, int, int, int, int) /raid/testing/castro-gfortran/amrex//Src/Amr/AMReX_AmrLevel.cpp:2211:19 12: ./Castro2d.gnu.TEST.TPROF.MPI.OMP.ex(+0x2ae47) [0x562485302e47] Castro::expand_state(amrex::MultiFab&, double, int) /raid/testing/castro-gfortran/Castro//Source/driver/Castro.cpp:4571:22 13: ./Castro2d.gnu.TEST.TPROF.MPI.OMP.ex(+0x402ff) [0x5624853182ff] Castro::initialize_do_advance(double) /raid/testing/castro-gfortran/Castro//Source/driver/Castro_advance.cpp:185:19 14: ./Castro2d.gnu.TEST.TPROF.MPI.OMP.ex(+0x41e71) [0x562485319e71] Castro::do_advance_ctu(double, double, int, int) /raid/testing/castro-gfortran/Castro//Source/driver/Castro_advance_ctu.cpp:55:29 15: ./Castro2d.gnu.TEST.TPROF.MPI.OMP.ex(+0x42f8b) [0x56248531af8b] advance_status::operator=(advance_status&&) inlined at /raid/testing/castro-gfortran/Castro//Source/driver/Castro_advance_ctu.cpp:655:90 in Castro::subcycle_advance_ctu(double, double, int, int) /raid/testing/castro-gfortran/Castro//Source/driver/Castro.H:150:8 Castro::subcycle_advance_ctu(double, double, int, int) /raid/testing/castro-gfortran/Castro//Source/driver/Castro_advance_ctu.cpp:655:90 16: ./Castro2d.gnu.TEST.TPROF.MPI.OMP.ex(+0x40ee9) [0x562485318ee9] double const& std::min(double const&, double const&) inlined at /raid/testing/castro-gfortran/Castro//Source/driver/Castro_advance.cpp:55:92 in Castro::advance(double, double, int, int) /usr/include/c++/9/bits/stl_algobase.h:204:9 Castro::advance(double, double, int, int) /raid/testing/castro-gfortran/Castro//Source/driver/Castro_advance.cpp:55:92 17: ./Castro2d.gnu.TEST.TPROF.MPI.OMP.ex(+0x1ff6c6) [0x5624854d76c6] amrex::Amr::timeStep(int, double, int, int, double) /raid/testing/castro-gfortran/amrex//Src/Amr/AMReX_Amr.cpp:1977:44 18: ./Castro2d.gnu.TEST.TPROF.MPI.OMP.ex(+0x1f1a0a) [0x5624854c9a0a] std::vector >::operator[](unsigned long) inlined at /raid/testing/castro-gfortran/amrex//Src/Base/AMReX_Vector.H:34:54 in amrex::Amr::coarseTimeStep(double) /usr/include/c++/9/bits/stl_vector.h:1042:2 amrex::Vector >::operator[](unsigned long) /raid/testing/castro-gfortran/amrex//Src/Base/AMReX_Vector.H:34:54 amrex::Amr::coarseTimeStep(double) /raid/testing/castro-gfortran/amrex//Src/Amr/AMReX_Amr.cpp:2087:26 19: ./Castro2d.gnu.TEST.TPROF.MPI.OMP.ex(+0x207fc) [0x5624852f87fc] main /raid/testing/castro-gfortran/Castro//Source/driver/main.cpp:143:33 20: /lib64/libc.so.6(__libc_start_main+0xf3) [0x7f69dc06c1a3] __libc_start_main ??:0 21: ./Castro2d.gnu.TEST.TPROF.MPI.OMP.ex(+0x275be) [0x5624852ff5be] _start ??:0 ===== TinyProfilers ====== main() Amr::coarseTimeStep() Amr::timeStep() Castro::advance() Castro::subcycle_advance_ctu() Castro::do_advance_ctu() Castro::initialize_do_advance() Castro::expand_state() FillPatchIterator::Initialize FillPatchSingleLevel StateDataPhysBCFunct::() StateData::FillBoundary(geom)