Issue #31: Inefficient loop nesting

This instruction group also shows symptoms of: Fetch hot-spot, Write-back hot-spot.

Statistics for instructions of this issue

Accesses 9.25e+09
Thread Id Accesses
Thread Total 9.25e+09
23408 3.61e+08
23409 4.34e+08
23410 3.18e+08
23411 3.18e+08
23412 4.77e+08
23413 4.92e+08
23414 3.04e+08
23415 3.33e+08
23416 4.63e+08
23417 2.89e+08
23418 3.47e+08
23419 4.48e+08
23420 3.61e+08
23421 4.34e+08
23422 4.19e+08
23423 3.47e+08
23424 3.76e+08
23425 4.34e+08
23426 3.90e+08
23427 3.76e+08
23428 3.61e+08
23429 3.33e+08
23430 4.05e+08
23431 4.34e+08
Fetch/Miss ratio
Write-back ratio
Utilization
% of misses 2.8%
Thread Id % of misses
Thread Total 2.8%
23408 0.0%
23409 0.2%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.4%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.3%
23425 0.1%
23426 0.3%
23427 0.2%
23428 0.5%
23429 0.2%
23430 0.0%
23431 0.5%
% of bandwidth 3.8%
Thread Id % of bandwidth
Thread Total 3.8%
23408 0.0%
23409 0.3%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.5%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.3%
23425 0.1%
23426 0.3%
23427 0.3%
23428 0.6%
23429 0.3%
23430 0.0%
23431 0.6%
% of fetches 2.8%
Thread Id % of fetches
Thread Total 2.8%
23408 0.0%
23409 0.2%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.4%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.3%
23425 0.1%
23426 0.3%
23427 0.2%
23428 0.5%
23429 0.2%
23430 0.0%
23431 0.5%
% of write-backs 5.9%
Thread Id % of write-backs
Thread Total 5.9%
23408 0.0%
23409 0.5%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.1%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.8%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.5%
23425 0.1%
23426 0.5%
23427 0.5%
23428 1.0%
23429 0.5%
23430 0.0%
23431 1.0%
% of upgrades 15.3%
Thread Id % of upgrades
Thread Total 15.3%
23408 0.0%
23409 0.0%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.0%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.1%
23425 0.0%
23426 0.0%
23427 2.5%
23428 5.1%
23429 2.5%
23430 0.0%
23431 5.1%
Miss ratio 0.9%
Thread Id Total Miss ratio Uncategorized Replacement Coherence Flush
Thread Average 0.9% 0.0% 0.4% 0.5% 0.0%
23408 0.0% 0.0% 0.0% 0.0% 0.0%
23409 1.7% 0.0% 1.7% 0.0% 0.0%
23410 0.0% 0.0% 0.0% 0.0% 0.0%
23411 0.0% 0.0% 0.0% 0.0% 0.0%
23412 0.1% 0.0% 0.1% 0.0% 0.0%
23413 0.2% 0.0% 0.2% 0.0% 0.0%
23414 0.0% 0.0% 0.0% 0.0% 0.0%
23415 0.0% 0.0% 0.0% 0.0% 0.0%
23416 0.1% 0.0% 0.1% 0.0% 0.0%
23417 0.1% 0.0% 0.1% 0.0% 0.0%
23418 0.2% 0.0% 0.2% 0.0% 0.0%
23419 0.0% 0.0% 0.0% 0.0% 0.0%
23420 3.3% 0.0% 3.3% 0.0% 0.0%
23421 0.1% 0.0% 0.1% 0.0% 0.0%
23422 0.0% 0.0% 0.0% 0.0% 0.0%
23423 0.1% 0.0% 0.1% 0.0% 0.0%
23424 2.1% 0.0% 2.0% 0.1% 0.0%
23425 0.5% 0.0% 0.5% 0.0% 0.0%
23426 2.0% 0.0% 2.0% 0.0% 0.0%
23427 1.9% 0.0% 0.0% 1.9% 0.0%
23428 4.0% 0.0% 0.0% 4.0% 0.0%
23429 2.2% 0.0% 0.1% 2.2% 0.0%
23430 0.1% 0.0% 0.1% 0.0% 0.0%
23431 3.3% 0.0% 0.0% 3.3% 0.0%
Fetch ratio 0.9%
Thread Id Total Fetch ratio Uncategorized Replacement Coherence Flush
Thread Average 0.9% 0.0% 0.4% 0.5% 0.0%
23408 0.0% 0.0% 0.0% 0.0% 0.0%
23409 1.7% 0.0% 1.7% 0.0% 0.0%
23410 0.0% 0.0% 0.0% 0.0% 0.0%
23411 0.0% 0.0% 0.0% 0.0% 0.0%
23412 0.1% 0.0% 0.1% 0.0% 0.0%
23413 0.2% 0.0% 0.2% 0.0% 0.0%
23414 0.0% 0.0% 0.0% 0.0% 0.0%
23415 0.0% 0.0% 0.0% 0.0% 0.0%
23416 0.1% 0.0% 0.1% 0.0% 0.0%
23417 0.1% 0.0% 0.1% 0.0% 0.0%
23418 0.2% 0.0% 0.2% 0.0% 0.0%
23419 0.0% 0.0% 0.0% 0.0% 0.0%
23420 3.3% 0.0% 3.3% 0.0% 0.0%
23421 0.1% 0.0% 0.1% 0.0% 0.0%
23422 0.0% 0.0% 0.0% 0.0% 0.0%
23423 0.1% 0.0% 0.1% 0.0% 0.0%
23424 2.1% 0.0% 2.0% 0.1% 0.0%
23425 0.5% 0.0% 0.5% 0.0% 0.0%
23426 2.0% 0.0% 2.0% 0.0% 0.0%
23427 1.9% 0.0% 0.0% 1.9% 0.0%
23428 4.0% 0.0% 0.0% 4.0% 0.0%
23429 2.2% 0.0% 0.1% 2.2% 0.0%
23430 0.1% 0.0% 0.1% 0.0% 0.0%
23431 3.3% 0.0% 0.0% 3.3% 0.0%
Write-back ratio 0.9%
Thread Id Total Write-back ratio Uncategorized Replacement Coherence Flush
Thread Average 0.9% 0.0% 0.4% 0.5% 0.0%
23408 0.0% 0.0% 0.0% 0.0% 0.0%
23409 1.7% 0.0% 1.7% 0.0% 0.0%
23410 0.0% 0.0% 0.0% 0.0% 0.0%
23411 0.0% 0.0% 0.0% 0.0% 0.0%
23412 0.1% 0.0% 0.1% 0.0% 0.0%
23413 0.2% 0.0% 0.2% 0.0% 0.0%
23414 0.0% 0.0% 0.0% 0.0% 0.0%
23415 0.0% 0.0% 0.0% 0.0% 0.0%
23416 0.1% 0.0% 0.1% 0.0% 0.0%
23417 0.1% 0.0% 0.1% 0.0% 0.0%
23418 0.2% 0.0% 0.2% 0.0% 0.0%
23419 0.0% 0.0% 0.0% 0.0% 0.0%
23420 3.3% 0.0% 3.3% 0.0% 0.0%
23421 0.1% 0.0% 0.1% 0.0% 0.0%
23422 0.0% 0.0% 0.0% 0.0% 0.0%
23423 0.1% 0.0% 0.1% 0.0% 0.0%
23424 2.1% 0.0% 2.0% 0.1% 0.0%
23425 0.5% 0.0% 0.5% 0.0% 0.0%
23426 2.0% 0.0% 2.0% 0.0% 0.0%
23427 1.9% 0.0% 0.0% 1.9% 0.0%
23428 4.0% 0.0% 0.0% 4.0% 0.0%
23429 2.2% 0.0% 0.1% 2.2% 0.0%
23430 0.1% 0.0% 0.1% 0.0% 0.0%
23431 3.3% 0.0% 0.0% 3.3% 0.0%
Upgrade ratio 0.5%
Thread Id Upgrade ratio
Thread Average 0.5%
23408 0.0%
23409 0.0%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.0%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.1%
23425 0.0%
23426 0.0%
23427 1.9%
23428 4.0%
23429 2.2%
23430 0.0%
23431 3.3%
Communication ratio 0.9%
Thread Id Comm. ratio
Thread Average 0.9%
23408 0.0%
23409 0.0%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.0%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.2%
23425 0.0%
23426 0.0%
23427 3.8%
23428 8.0%
23429 4.3%
23430 0.0%
23431 6.7%
Fetch utilization 89.2%
Thread Id Fetch utilization
Thread Average 89.2%
23408 100.0%
23409 100.0%
23410 100.0%
23411 100.0%
23412 100.0%
23413 100.0%
23414 100.0%
23415 100.0%
23416 100.0%
23417 100.0%
23418 100.0%
23419 100.0%
23420 8.8%
23421 100.0%
23422 100.0%
23423 100.0%
23424 25.2%
23425 100.0%
23426 45.6%
23427 40.4%
23428 1.1%
23429 42.1%
23430 100.0%
23431 28.5%
Write-back utilization 91.6%
Thread Id Write-back utilization
Thread Average 91.6%
23408 100.0%
23409 49.9%
23410 100.0%
23411 100.0%
23412 100.0%
23413 100.0%
23414 100.0%
23415 100.0%
23416 100.0%
23417 100.0%
23418 100.0%
23419 100.0%
23420 36.1%
23421 100.0%
23422 100.0%
23423 100.0%
23424 62.0%
23425 100.0%
23426 71.5%
23427 65.7%
23428 34.2%
23429 26.6%
23430 100.0%
23431 38.1%
Communication utilization 98.5%
Thread Id Comm. utilization
Thread Average 98.5%
23408 100.0%
23409 100.0%
23410 100.0%
23411 100.0%
23412 100.0%
23413 100.0%
23414 100.0%
23415 100.0%
23416 100.0%
23417 100.0%
23418 100.0%
23419 100.0%
23420 100.0%
23421 84.8%
23422 30.0%
23423 37.5%
23424 37.5%
23425 16.2%
23426 100.0%
23427 60.8%
23428 100.0%
23429 100.0%
23430 100.0%
23431 100.0%
False sharing ratio 0.0%
Thread Id F-S. ratio
Thread Average 0.0%
23408 0.0%
23409 0.0%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.0%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.0%
23425 0.0%
23426 0.0%
23427 0.0%
23428 0.0%
23429 0.0%
23430 0.0%
23431 0.0%
HW prefetch probability 0.0%
Thread Id HW prefetch probability
Thread Average 0.0%
23408 0.0%
23409 0.0%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.0%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.0%
23425 0.0%
23426 0.0%
23427 0.0%
23428 0.0%
23429 0.0%
23430 0.0%
23431 0.0%
Access randomness Low
Thread Id Access randomness
Thread Average Low
23408 Low
23409 Low
23410 Low
23411 Low
23412 Low
23413 Low
23414 Low
23415 Low
23416 Low
23417 Low
23418 Low
23419 Low
23420 Low
23421 Low
23422 Low
23423 Low
23424 Low
23425 Low
23426 Low
23427 Low
23428 Low
23429 Low
23430 Low
23431 Low
Worst instruction "octotiger"!grid::compute_boundary_interactions_multipole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}::operator()(unsigned long) const+0x8d0 (0x9ddf50) [R], grid_fmm.cpp:516

If the program was changed as to reach 100% fetch utilization, fetches in this instruction group would be reduced with 12.4%, and total number of fetches would be reduced with 0.3%.

Instructions involved in this issue

Stack Instruction % of misses % of fetches Fetch ratio Fetch utilization W-B Utilization
"octotiger"!std::enable_if<hpx::traits::detail::is_unique_future<hpx::util::result_of<node_server::nonrefined_step()::{lambda(hpx::lcos::future<void>)#1}::operator()(hpx::lcos::future<void>) const::{lambda(hpx::lcos::future<void>)#1} (hpx::lcos::future<void>)>::type, void>::value, void>::type hpx::lcos::detail::invoke_continuation<node_server::nonrefined_step()::{lambda(hpx::lcos::future<void>)#1}::operator()(hpx::lcos::future<void>) const::{lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void>, hpx::lcos::detail::continuation<hpx::lcos::future<void>, {lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void> > >(hpx::util&, hpx::util::result_of&, hpx::lcos::detail::continuation<hpx::lcos::future<void>, {lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void> >&) [clone .constprop.2248]+0x11e (0x9597fe), node_server_actions_3.cpp:483 [ 20.9% ]
       "octotiger"!node_server::compute_fmm(gsolve_type, bool)+0x6bb (0xa2569b), packaged_continuation.hpp:430 [ 26.9% ]
          "octotiger"!hpx::lcos::detail::future_data<node_server::neighbor_gravity_type>::set_on_completed(hpx::util::unique_function<void (), false>)+0xeb (0x98655b), future_data.hpp:552 [ 26.9% ]
             "octotiger"!hpx::lcos::detail::future_data<node_server::neighbor_gravity_type>::handle_on_completed(hpx::util::unique_function<void (), false>&&)+0x29a (0x98634a), basic_function.hpp:196 [ 27.0% ]
                "octotiger"!hpx::lcos::detail::continuation<hpx::lcos::future<node_server::neighbor_gravity_type>, node_server::compute_fmm(gsolve_type, bool)::{lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, void>::run(boost::intrusive_ptr<hpx::lcos::detail::future_data<node_server::neighbor_gravity_type> > const&)+0x11c (0xa23adc), packaged_continuation.hpp:105 [ 27.0% ]
                   "octotiger"!void hpx::lcos::detail::invoke_continuation<node_server::compute_fmm(gsolve_type, bool)::{lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, hpx::lcos::future<node_server::neighbor_gravity_type>, hpx::lcos::detail::continuation<hpx::lcos::future<node_server::neighbor_gravity_type>, {lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, void> >(node_server::compute_fmm(gsolve_type, bool)::{lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}&, hpx::lcos::future<node_server::neighbor_gravity_type>&, hpx::lcos::detail::continuation<hpx::lcos::future<node_server::neighbor_gravity_type>, {lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, void>&, std::integral_constant<bool, true>) [clone .isra.564] [clone .constprop.1360]+0x125 (0xa237c5), node_server.cpp:444 [ 27.0% ]
                      "octotiger"!grid::compute_boundary_interactions_monopole_monopole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)+0x49c (0x9e64dc), wait_all.hpp:329 [ 27.0% ]
                         "octotiger"!void hpx::lcos::wait_all<hpx::lcos::future<void> >(std::vector<hpx::lcos::future<void>, std::allocator<hpx::lcos::future<void> > > const&)+0x2bf (0x88828f), wait_all.hpp:306 [ 39.4% ]
                            "octotiger"!hpx::lcos::detail::future_data<void>::wait(hpx::error_code&)+0xb4 (0x85b074), future_data.hpp:567 [ 39.8% ]
                               "libhpx.so.1.0.0"!hpx::lcos::local::detail::condition_variable::wait(std::unique_lock<hpx::lcos::local::spinlock>&, char const*, hpx::error_code&)+0xbf (0x7faa7fa0a8ef), thread_helpers.hpp:499 [ 43.6% ]
                                  "libhpx.so.1.0.0"!hpx::this_thread::suspend(hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> const&, hpx::util::thread_description const&, hpx::error_code&)+0xf8 (0x7faa7f577fe8), thread_helpers.cpp:472 [ 61.6% ]
                                     "libhpx.so.1.0.0"!hpx::threads::coroutines::detail::coroutine_self::yield(std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> >)+0xbc (0x7faa7f4f7f6c), context_linux_x86.hpp:374 [ 61.6% ]
                                        "libhpx.so.1.0.0"!void hpx::threads::detail::scheduling_loop<hpx::threads::policies::local_priority_queue_scheduler<boost::mutex, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_lifo> >(unsigned long, hpx::threads::policies::local_priority_queue_scheduler<boost::mutex, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_lifo>&, hpx::threads::detail::scheduling_counters&, hpx::threads::detail::scheduling_callbacks&)+0x21c (0x7faa7f508b3c), scheduling_loop.hpp:329 [ 96.8% ]
                                           "libhpx.so.1.0.0"!hpx::threads::thread_data::operator()()+0xcd (0x7faa7f50331d), context_linux_x86.hpp:374 [ 96.8% ]
                                              "libhpx.so.1.0.0"!void hpx::threads::coroutines::detail::lx::trampoline<hpx::threads::coroutines::detail::coroutine_impl>(hpx::threads::coroutines::detail::coroutine_impl*)+0x9 (0x7faa7f466e09), context_linux_x86.hpp:88 [ 96.8% ]
                                                 "libhpx.so.1.0.0"!hpx::threads::coroutines::detail::coroutine_impl::operator()()+0x12b (0x7faa7f550a9b), basic_function.hpp:196 [ 96.8% ]
                                                    "libhpx.so.1.0.0"!std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > hpx::util::detail::callable_vtable<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (hpx::threads::thread_state_ex_enum)>::_invoke<hpx::util::detail::bound<hpx::util::detail::one_shot_wrapper<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (*)(hpx::util::unique_function<void (), false>)> (hpx::util::unique_function<void (), false>&&)> >(void**, hpx::threads::thread_state_ex_enum&&)+0x46 (0x7faa7f4efdf6), invoke.hpp:36 [ 96.8% ]
                                                       "libhpx.so.1.0.0"!hpx::applier::thread_function_nullary(hpx::util::unique_function<void (), false>)+0xe (0x7faa7f5795be), basic_function.hpp:196 [ 96.8% ]
                                                          "octotiger"!void hpx::util::detail::callable_vtable<void ()>::_invoke<hpx::util::detail::deferred<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (*(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >&&))(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >)> >(void**)+0x22 (0x84a452), invoke.hpp:36 [ 96.8% ]
                                                             "octotiger"!hpx::lcos::detail::task_base<void>::run_impl(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >)+0xd (0x84a3dd), future_data.hpp:782 [ 96.8% ]
                                                                "octotiger"!hpx::lcos::local::detail::task_object<void, hpx::util::detail::deferred<hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v2::detail::part_iterations<grid::compute_boundary_interactions_multipole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}&, int, hpx::util::tuple<> > >& (grid::compute_boundary_interactions_multipole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}&<unsigned long, unsigned long, unsigned long> const&)>, hpx::lcos::detail::task_base<void> >::do_run()+0x3e (0x9e3d4e), invoke.hpp:36
"octotiger"!grid::compute_boundary_interactions_multipole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}::operator()(unsigned long) const+0x8d0 (0x9ddf50) [R], grid_fmm.cpp:516 2.8%
Thread Id % of misses
Thread Total 2.8%
23408 0.0%
23409 0.2%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.4%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.3%
23425 0.1%
23426 0.3%
23427 0.2%
23428 0.5%
23429 0.2%
23430 0.0%
23431 0.5%
2.8%
Thread Id % of fetches
Thread Total 2.8%
23408 0.0%
23409 0.2%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.4%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.3%
23425 0.1%
23426 0.3%
23427 0.2%
23428 0.5%
23429 0.2%
23430 0.0%
23431 0.5%
1.8%
Thread Id Total Fetch ratio Uncategorized Replacement Coherence Flush
Thread Average 1.8% 0.0% 0.9% 0.9% 0.0%
23408 0.0% 0.0% 0.0% 0.0% 0.0%
23409 3.4% 0.0% 3.4% 0.0% 0.0%
23410 0.0% 0.0% 0.0% 0.0% 0.0%
23411 0.1% 0.0% 0.1% 0.0% 0.0%
23412 0.2% 0.0% 0.2% 0.0% 0.0%
23413 0.4% 0.0% 0.4% 0.0% 0.0%
23414 0.0% 0.0% 0.0% 0.0% 0.0%
23415 0.1% 0.0% 0.1% 0.0% 0.0%
23416 0.1% 0.0% 0.1% 0.0% 0.0%
23417 0.2% 0.0% 0.2% 0.0% 0.0%
23418 0.3% 0.0% 0.3% 0.0% 0.0%
23419 0.0% 0.0% 0.0% 0.0% 0.0%
23420 6.5% 0.0% 6.5% 0.0% 0.0%
23421 0.2% 0.0% 0.2% 0.0% 0.0%
23422 0.0% 0.0% 0.0% 0.0% 0.0%
23423 0.2% 0.0% 0.2% 0.0% 0.0%
23424 4.1% 0.0% 3.9% 0.2% 0.0%
23425 1.0% 0.0% 1.0% 0.0% 0.0%
23426 4.0% 0.0% 4.0% 0.0% 0.0%
23427 3.8% 0.0% 0.0% 3.8% 0.0%
23428 8.0% 0.0% 0.0% 8.0% 0.0%
23429 4.5% 0.0% 0.1% 4.3% 0.0%
23430 0.1% 0.0% 0.1% 0.0% 0.0%
23431 6.7% 0.0% 0.0% 6.7% 0.0%
89.2%
Thread Id Fetch utilization
Thread Average 89.2%
23408 100.0%
23409 100.0%
23410 100.0%
23411 100.0%
23412 100.0%
23413 100.0%
23414 100.0%
23415 100.0%
23416 100.0%
23417 100.0%
23418 100.0%
23419 100.0%
23420 8.8%
23421 100.0%
23422 100.0%
23423 100.0%
23424 25.2%
23425 100.0%
23426 45.6%
23427 40.4%
23428 1.1%
23429 42.1%
23430 100.0%
23431 28.5%
91.6%
Thread Id Write-back utilization
Thread Average 91.6%
23408 100.0%
23409 49.9%
23410 100.0%
23411 100.0%
23412 100.0%
23413 100.0%
23414 100.0%
23415 100.0%
23416 100.0%
23417 100.0%
23418 100.0%
23419 100.0%
23420 36.1%
23421 100.0%
23422 100.0%
23423 100.0%
23424 62.0%
23425 100.0%
23426 71.5%
23427 65.7%
23428 34.2%
23429 26.6%
23430 100.0%
23431 38.1%
"octotiger"!grid::compute_boundary_interactions_multipole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}::operator()(unsigned long) const+0x8da (0x9ddf5a) [W], grid_fmm.cpp:516 0.0%
Thread Id % of misses
Thread Total 0.0%
23408 0.0%
23409 0.0%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.0%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.0%
23425 0.0%
23426 0.0%
23427 0.0%
23428 0.0%
23429 0.0%
23430 0.0%
23431 0.0%
0.0%
Thread Id % of fetches
Thread Total 0.0%
23408 0.0%
23409 0.0%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.0%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.0%
23425 0.0%
23426 0.0%
23427 0.0%
23428 0.0%
23429 0.0%
23430 0.0%
23431 0.0%
0.0%
Thread Id Total Fetch ratio Uncategorized Replacement Coherence Flush
Thread Average 0.0% 0.0% 0.0% 0.0% 0.0%
23408 0.0% 0.0% 0.0% 0.0% 0.0%
23409 0.0% 0.0% 0.0% 0.0% 0.0%
23410 0.0% 0.0% 0.0% 0.0% 0.0%
23411 0.0% 0.0% 0.0% 0.0% 0.0%
23412 0.0% 0.0% 0.0% 0.0% 0.0%
23413 0.0% 0.0% 0.0% 0.0% 0.0%
23414 0.0% 0.0% 0.0% 0.0% 0.0%
23415 0.0% 0.0% 0.0% 0.0% 0.0%
23416 0.0% 0.0% 0.0% 0.0% 0.0%
23417 0.0% 0.0% 0.0% 0.0% 0.0%
23418 0.0% 0.0% 0.0% 0.0% 0.0%
23419 0.0% 0.0% 0.0% 0.0% 0.0%
23420 0.0% 0.0% 0.0% 0.0% 0.0%
23421 0.0% 0.0% 0.0% 0.0% 0.0%
23422 0.0% 0.0% 0.0% 0.0% 0.0%
23423 0.0% 0.0% 0.0% 0.0% 0.0%
23424 0.0% 0.0% 0.0% 0.0% 0.0%
23425 0.0% 0.0% 0.0% 0.0% 0.0%
23426 0.0% 0.0% 0.0% 0.0% 0.0%
23427 0.0% 0.0% 0.0% 0.0% 0.0%
23428 0.0% 0.0% 0.0% 0.0% 0.0%
23429 0.0% 0.0% 0.0% 0.0% 0.0%
23430 0.0% 0.0% 0.0% 0.0% 0.0%
23431 0.0% 0.0% 0.0% 0.0% 0.0%
89.2%
Thread Id Fetch utilization
Thread Average 89.2%
23408 100.0%
23409 100.0%
23410 100.0%
23411 100.0%
23412 100.0%
23413 100.0%
23414 100.0%
23415 100.0%
23416 100.0%
23417 100.0%
23418 100.0%
23419 100.0%
23420 8.8%
23421 100.0%
23422 100.0%
23423 100.0%
23424 25.2%
23425 100.0%
23426 45.6%
23427 40.4%
23428 1.1%
23429 42.1%
23430 100.0%
23431 28.5%
91.6%
Thread Id Write-back utilization
Thread Average 91.6%
23408 100.0%
23409 49.9%
23410 100.0%
23411 100.0%
23412 100.0%
23413 100.0%
23414 100.0%
23415 100.0%
23416 100.0%
23417 100.0%
23418 100.0%
23419 100.0%
23420 36.1%
23421 100.0%
23422 100.0%
23423 100.0%
23424 62.0%
23425 100.0%
23426 71.5%
23427 65.7%
23428 34.2%
23429 26.6%
23430 100.0%
23431 38.1%

Instructions previously writing to related data

Stack Instruction
"libhpx.so.1.0.0"!hpx::threads::coroutines::detail::coroutine_impl::operator()()+0x81 (0x7faa7f5509f1), context_linux_x86.hpp:374 [ 62.5% ]
       "libhpx.so.1.0.0"!void hpx::threads::detail::scheduling_loop<hpx::threads::policies::local_priority_queue_scheduler<boost::mutex, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_lifo> >(unsigned long, hpx::threads::policies::local_priority_queue_scheduler<boost::mutex, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_lifo>&, hpx::threads::detail::scheduling_counters&, hpx::threads::detail::scheduling_callbacks&)+0x21c (0x7faa7f508b3c), scheduling_loop.hpp:329
          "libhpx.so.1.0.0"!hpx::threads::thread_data::operator()()+0xcd (0x7faa7f50331d), context_linux_x86.hpp:374
             "libhpx.so.1.0.0"!void hpx::threads::coroutines::detail::lx::trampoline<hpx::threads::coroutines::detail::coroutine_impl>(hpx::threads::coroutines::detail::coroutine_impl*)+0x9 (0x7faa7f466e09), context_linux_x86.hpp:88
                "libhpx.so.1.0.0"!hpx::threads::coroutines::detail::coroutine_impl::operator()()+0x12b (0x7faa7f550a9b), basic_function.hpp:196
                   "libhpx.so.1.0.0"!std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > hpx::util::detail::callable_vtable<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (hpx::threads::thread_state_ex_enum)>::_invoke<hpx::util::detail::bound<hpx::util::detail::one_shot_wrapper<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (*)(hpx::util::unique_function<void (), false>)> (hpx::util::unique_function<void (), false>&&)> >(void**, hpx::threads::thread_state_ex_enum&&)+0x46 (0x7faa7f4efdf6), invoke.hpp:36
                      "libhpx.so.1.0.0"!hpx::applier::thread_function_nullary(hpx::util::unique_function<void (), false>)+0xe (0x7faa7f5795be), basic_function.hpp:196
                         "octotiger"!void hpx::util::detail::callable_vtable<void ()>::_invoke<hpx::util::detail::deferred<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (*(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >&&))(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >)> >(void**)+0x22 (0x84a452), invoke.hpp:36
                            "octotiger"!hpx::lcos::detail::task_base<void>::run_impl(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >)+0xd (0x84a3dd), future_data.hpp:782
                               "octotiger"!hpx::lcos::local::detail::task_object<void, hpx::util::detail::deferred<hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v2::detail::part_iterations<grid::compute_interactions(gsolve_type)::{lambda(unsigned long)#1}&, unsigned long, hpx::util::tuple<> > >& (grid::compute_interactions(gsolve_type)::{lambda(unsigned long)#1}&<long long, unsigned long, unsigned long> const&)>, hpx::lcos::detail::task_base<void> >::do_run()+0x3e (0x9e3c4e), invoke.hpp:36
"octotiger"!grid::compute_interactions(gsolve_type)::{lambda(unsigned long)#1}::operator()(unsigned long) const+0xb2a (0x9dc6aa) [W], grid_fmm.cpp:315
"libhpx.so.1.0.0"!hpx::threads::thread_data::operator()()+0xcd (0x7faa7f50331d), context_linux_x86.hpp:374 [ 62.5% ]
       "libhpx.so.1.0.0"!void hpx::threads::coroutines::detail::lx::trampoline<hpx::threads::coroutines::detail::coroutine_impl>(hpx::threads::coroutines::detail::coroutine_impl*)+0x9 (0x7faa7f466e09), context_linux_x86.hpp:88 [ 62.5% ]
          "libhpx.so.1.0.0"!hpx::threads::coroutines::detail::coroutine_impl::operator()()+0x81 (0x7faa7f5509f1), context_linux_x86.hpp:374 [ 62.5% ]
             "libhpx.so.1.0.0"!void hpx::threads::detail::scheduling_loop<hpx::threads::policies::local_priority_queue_scheduler<boost::mutex, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_lifo> >(unsigned long, hpx::threads::policies::local_priority_queue_scheduler<boost::mutex, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_lifo>&, hpx::threads::detail::scheduling_counters&, hpx::threads::detail::scheduling_callbacks&)+0x21c (0x7faa7f508b3c), scheduling_loop.hpp:329
                "libhpx.so.1.0.0"!hpx::threads::thread_data::operator()()+0xcd (0x7faa7f50331d), context_linux_x86.hpp:374
                   "libhpx.so.1.0.0"!void hpx::threads::coroutines::detail::lx::trampoline<hpx::threads::coroutines::detail::coroutine_impl>(hpx::threads::coroutines::detail::coroutine_impl*)+0x9 (0x7faa7f466e09), context_linux_x86.hpp:88
                      "libhpx.so.1.0.0"!hpx::threads::coroutines::detail::coroutine_impl::operator()()+0x12b (0x7faa7f550a9b), basic_function.hpp:196
                         "libhpx.so.1.0.0"!std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > hpx::util::detail::callable_vtable<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (hpx::threads::thread_state_ex_enum)>::_invoke<hpx::util::detail::bound<hpx::util::detail::one_shot_wrapper<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (*)(hpx::util::unique_function<void (), false>)> (hpx::util::unique_function<void (), false>&&)> >(void**, hpx::threads::thread_state_ex_enum&&)+0x46 (0x7faa7f4efdf6), invoke.hpp:36
                            "libhpx.so.1.0.0"!hpx::applier::thread_function_nullary(hpx::util::unique_function<void (), false>)+0xe (0x7faa7f5795be), basic_function.hpp:196
                               "octotiger"!void hpx::util::detail::callable_vtable<void ()>::_invoke<hpx::util::detail::deferred<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (*(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >&&))(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >)> >(void**)+0x22 (0x84a452), invoke.hpp:36
                                  "octotiger"!hpx::lcos::detail::task_base<void>::run_impl(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >)+0xd (0x84a3dd), future_data.hpp:782
                                     "octotiger"!hpx::lcos::local::detail::task_object<void, hpx::util::detail::deferred<hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v2::detail::part_iterations<grid::compute_interactions(gsolve_type)::{lambda(unsigned long)#1}&, unsigned long, hpx::util::tuple<> > >& (grid::compute_interactions(gsolve_type)::{lambda(unsigned long)#1}&<long long, unsigned long, unsigned long> const&)>, hpx::lcos::detail::task_base<void> >::do_run()+0x3e (0x9e3c4e), invoke.hpp:36
"octotiger"!grid::compute_interactions(gsolve_type)::{lambda(unsigned long)#1}::operator()(unsigned long) const+0xb3a (0x9dc6ba) [W], grid_fmm.cpp:316
"octotiger"!std::enable_if<hpx::traits::detail::is_unique_future<hpx::util::result_of<node_server::nonrefined_step()::{lambda(hpx::lcos::future<void>)#1}::operator()(hpx::lcos::future<void>) const::{lambda(hpx::lcos::future<void>)#1} (hpx::lcos::future<void>)>::type, void>::value, void>::type hpx::lcos::detail::invoke_continuation<node_server::nonrefined_step()::{lambda(hpx::lcos::future<void>)#1}::operator()(hpx::lcos::future<void>) const::{lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void>, hpx::lcos::detail::continuation<hpx::lcos::future<void>, {lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void> > >(hpx::util&, hpx::util::result_of&, hpx::lcos::detail::continuation<hpx::lcos::future<void>, {lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void> >&) [clone .constprop.2248]+0x11e (0x9597fe), node_server_actions_3.cpp:483 [ 22.7% ]
       "octotiger"!std::enable_if<hpx::traits::detail::is_unique_future<hpx::util::result_of<node_server::nonrefined_step()::{lambda(hpx::lcos::future<void>)#1}::operator()(hpx::lcos::future<void>) const::{lambda(hpx::lcos::future<void>)#1} (hpx::lcos::future<void>)>::type, void>::value, void>::type hpx::lcos::detail::invoke_continuation<node_server::nonrefined_step()::{lambda(hpx::lcos::future<void>)#1}::operator()(hpx::lcos::future<void>) const::{lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void>, hpx::lcos::detail::continuation<hpx::lcos::future<void>, {lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void> > >(hpx::util&, hpx::util::result_of&, hpx::lcos::detail::continuation<hpx::lcos::future<void>, {lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void> >&) [clone .constprop.2248]+0x11e (0x9597fe), node_server_actions_3.cpp:483 [ 22.7% ]
          "octotiger"!node_server::compute_fmm(gsolve_type, bool)+0x6bb (0xa2569b), packaged_continuation.hpp:430 [ 22.7% ]
             "octotiger"!hpx::lcos::detail::future_data<node_server::neighbor_gravity_type>::set_on_completed(hpx::util::unique_function<void (), false>)+0xeb (0x98655b), future_data.hpp:552 [ 22.7% ]
                "octotiger"!hpx::lcos::detail::future_data<node_server::neighbor_gravity_type>::handle_on_completed(hpx::util::unique_function<void (), false>&&)+0x29a (0x98634a), basic_function.hpp:196 [ 23.1% ]
                   "octotiger"!hpx::lcos::detail::continuation<hpx::lcos::future<node_server::neighbor_gravity_type>, node_server::compute_fmm(gsolve_type, bool)::{lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, void>::run(boost::intrusive_ptr<hpx::lcos::detail::future_data<node_server::neighbor_gravity_type> > const&)+0x11c (0xa23adc), packaged_continuation.hpp:105 [ 23.1% ]
                      "octotiger"!void hpx::lcos::detail::invoke_continuation<node_server::compute_fmm(gsolve_type, bool)::{lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, hpx::lcos::future<node_server::neighbor_gravity_type>, hpx::lcos::detail::continuation<hpx::lcos::future<node_server::neighbor_gravity_type>, {lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, void> >(node_server::compute_fmm(gsolve_type, bool)::{lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}&, hpx::lcos::future<node_server::neighbor_gravity_type>&, hpx::lcos::detail::continuation<hpx::lcos::future<node_server::neighbor_gravity_type>, {lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, void>&, std::integral_constant<bool, true>) [clone .isra.564] [clone .constprop.1360]+0x125 (0xa237c5), node_server.cpp:444 [ 23.1% ]
                         "octotiger"!grid::compute_boundary_interactions_monopole_monopole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)+0x49c (0x9e64dc), wait_all.hpp:329 [ 23.1% ]
                            "octotiger"!void hpx::lcos::wait_all<hpx::lcos::future<void> >(std::vector<hpx::lcos::future<void>, std::allocator<hpx::lcos::future<void> > > const&)+0x2bf (0x88828f), wait_all.hpp:306 [ 34.4% ]
                               "octotiger"!hpx::lcos::detail::future_data<void>::wait(hpx::error_code&)+0xb4 (0x85b074), future_data.hpp:567 [ 34.6% ]
                                  "libhpx.so.1.0.0"!hpx::lcos::local::detail::condition_variable::wait(std::unique_lock<hpx::lcos::local::spinlock>&, char const*, hpx::error_code&)+0xbf (0x7faa7fa0a8ef), thread_helpers.hpp:499 [ 38.0% ]
                                     "libhpx.so.1.0.0"!hpx::this_thread::suspend(hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> const&, hpx::util::thread_description const&, hpx::error_code&)+0xf8 (0x7faa7f577fe8), thread_helpers.cpp:472 [ 53.8% ]
                                        "libhpx.so.1.0.0"!hpx::threads::coroutines::detail::coroutine_self::yield(std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> >)+0xbc (0x7faa7f4f7f6c), context_linux_x86.hpp:374 [ 53.8% ]
                                           "libhpx.so.1.0.0"!void hpx::threads::detail::scheduling_loop<hpx::threads::policies::local_priority_queue_scheduler<boost::mutex, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_lifo> >(unsigned long, hpx::threads::policies::local_priority_queue_scheduler<boost::mutex, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_lifo>&, hpx::threads::detail::scheduling_counters&, hpx::threads::detail::scheduling_callbacks&)+0x21c (0x7faa7f508b3c), scheduling_loop.hpp:329 [ 84.8% ]
                                              "libhpx.so.1.0.0"!hpx::threads::thread_data::operator()()+0xcd (0x7faa7f50331d), context_linux_x86.hpp:374 [ 84.8% ]
                                                 "libhpx.so.1.0.0"!void hpx::threads::coroutines::detail::lx::trampoline<hpx::threads::coroutines::detail::coroutine_impl>(hpx::threads::coroutines::detail::coroutine_impl*)+0x9 (0x7faa7f466e09), context_linux_x86.hpp:88 [ 84.8% ]
                                                    "libhpx.so.1.0.0"!hpx::threads::coroutines::detail::coroutine_impl::operator()()+0x12b (0x7faa7f550a9b), basic_function.hpp:196 [ 84.8% ]
                                                       "libhpx.so.1.0.0"!std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > hpx::util::detail::callable_vtable<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (hpx::threads::thread_state_ex_enum)>::_invoke<hpx::util::detail::bound<hpx::util::detail::one_shot_wrapper<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (*)(hpx::util::unique_function<void (), false>)> (hpx::util::unique_function<void (), false>&&)> >(void**, hpx::threads::thread_state_ex_enum&&)+0x46 (0x7faa7f4efdf6), invoke.hpp:36 [ 84.8% ]
                                                          "libhpx.so.1.0.0"!hpx::applier::thread_function_nullary(hpx::util::unique_function<void (), false>)+0xe (0x7faa7f5795be), basic_function.hpp:196 [ 84.8% ]
                                                             "octotiger"!void hpx::util::detail::callable_vtable<void ()>::_invoke<hpx::util::detail::deferred<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (*(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >&&))(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >)> >(void**)+0x22 (0x84a452), invoke.hpp:36 [ 84.8% ]
                                                                "octotiger"!hpx::lcos::detail::task_base<void>::run_impl(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >)+0xd (0x84a3dd), future_data.hpp:782 [ 84.8% ]
                                                                   "octotiger"!hpx::lcos::local::detail::task_object<void, hpx::util::detail::deferred<hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v2::detail::part_iterations<grid::compute_boundary_interactions_monopole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}&, int, hpx::util::tuple<> > >& (grid::compute_boundary_interactions_monopole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}&<unsigned long, unsigned long, unsigned long> const&)>, hpx::lcos::detail::task_base<void> >::do_run()+0x3e (0x9e3e4e), invoke.hpp:36
"octotiger"!grid::compute_boundary_interactions_monopole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}::operator()(unsigned long) const+0x69a (0x9dcf7a) [W], grid_fmm.cpp:753
"octotiger"!grid::compute_boundary_interactions_multipole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}::operator()(unsigned long) const+0x8da (0x9ddf5a) [W], grid_fmm.cpp:516
"octotiger"!hpx::lcos::local::detail::task_object<void, hpx::util::detail::deferred<hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v2::detail::part_iterations<grid::compute_interactions(gsolve_type)::{lambda(unsigned long)#1}&, unsigned long, hpx::util::tuple<> > >& (grid::compute_interactions(gsolve_type)::{lambda(unsigned long)#1}&<long long, unsigned long, unsigned long> const&)>, hpx::lcos::detail::task_base<void> >::do_run()+0x3e (0x9e3c4e), invoke.hpp:36
       "octotiger"!grid::compute_interactions(gsolve_type)::{lambda(unsigned long)#1}::operator()(unsigned long) const+0xab4 (0x9dc634), mutex:377
"octotiger"!grid::compute_boundary_interactions_multipole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}::operator()(unsigned long) const+0x8da (0x9ddf5a) [W], grid_fmm.cpp:516
"octotiger"!std::enable_if<hpx::traits::detail::is_unique_future<hpx::util::result_of<node_server::nonrefined_step()::{lambda(hpx::lcos::future<void>)#1}::operator()(hpx::lcos::future<void>) const::{lambda(hpx::lcos::future<void>)#1} (hpx::lcos::future<void>)>::type, void>::value, void>::type hpx::lcos::detail::invoke_continuation<node_server::nonrefined_step()::{lambda(hpx::lcos::future<void>)#1}::operator()(hpx::lcos::future<void>) const::{lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void>, hpx::lcos::detail::continuation<hpx::lcos::future<void>, {lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void> > >(hpx::util&, hpx::util::result_of&, hpx::lcos::detail::continuation<hpx::lcos::future<void>, {lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void> >&) [clone .constprop.2248]+0x11e (0x9597fe), node_server_actions_3.cpp:483 [ 18.5% ]
       "octotiger"!node_server::compute_fmm(gsolve_type, bool)+0x6bb (0xa2569b), packaged_continuation.hpp:430 [ 27.0% ]
          "octotiger"!hpx::lcos::detail::future_data<node_server::neighbor_gravity_type>::set_on_completed(hpx::util::unique_function<void (), false>)+0xeb (0x98655b), future_data.hpp:552 [ 27.0% ]
             "octotiger"!hpx::lcos::detail::future_data<node_server::neighbor_gravity_type>::handle_on_completed(hpx::util::unique_function<void (), false>&&)+0x29a (0x98634a), basic_function.hpp:196 [ 27.1% ]
                "octotiger"!hpx::lcos::detail::continuation<hpx::lcos::future<node_server::neighbor_gravity_type>, node_server::compute_fmm(gsolve_type, bool)::{lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, void>::run(boost::intrusive_ptr<hpx::lcos::detail::future_data<node_server::neighbor_gravity_type> > const&)+0x11c (0xa23adc), packaged_continuation.hpp:105 [ 27.1% ]
                   "octotiger"!void hpx::lcos::detail::invoke_continuation<node_server::compute_fmm(gsolve_type, bool)::{lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, hpx::lcos::future<node_server::neighbor_gravity_type>, hpx::lcos::detail::continuation<hpx::lcos::future<node_server::neighbor_gravity_type>, {lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, void> >(node_server::compute_fmm(gsolve_type, bool)::{lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}&, hpx::lcos::future<node_server::neighbor_gravity_type>&, hpx::lcos::detail::continuation<hpx::lcos::future<node_server::neighbor_gravity_type>, {lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, void>&, std::integral_constant<bool, true>) [clone .isra.564] [clone .constprop.1360]+0x125 (0xa237c5), node_server.cpp:444 [ 27.1% ]
                      "octotiger"!grid::compute_boundary_interactions_monopole_monopole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)+0x49c (0x9e64dc), wait_all.hpp:329 [ 27.1% ]
                         "octotiger"!void hpx::lcos::wait_all<hpx::lcos::future<void> >(std::vector<hpx::lcos::future<void>, std::allocator<hpx::lcos::future<void> > > const&)+0x2bf (0x88828f), wait_all.hpp:306 [ 39.4% ]
                            "octotiger"!hpx::lcos::detail::future_data<void>::wait(hpx::error_code&)+0xb4 (0x85b074), future_data.hpp:567 [ 39.8% ]
                               "libhpx.so.1.0.0"!hpx::lcos::local::detail::condition_variable::wait(std::unique_lock<hpx::lcos::local::spinlock>&, char const*, hpx::error_code&)+0xbf (0x7faa7fa0a8ef), thread_helpers.hpp:499 [ 43.4% ]
                                  "libhpx.so.1.0.0"!hpx::this_thread::suspend(hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> const&, hpx::util::thread_description const&, hpx::error_code&)+0xf8 (0x7faa7f577fe8), thread_helpers.cpp:472 [ 61.9% ]
                                     "libhpx.so.1.0.0"!hpx::threads::coroutines::detail::coroutine_self::yield(std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> >)+0xbc (0x7faa7f4f7f6c), context_linux_x86.hpp:374 [ 61.9% ]
                                        "libhpx.so.1.0.0"!void hpx::threads::detail::scheduling_loop<hpx::threads::policies::local_priority_queue_scheduler<boost::mutex, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_lifo> >(unsigned long, hpx::threads::policies::local_priority_queue_scheduler<boost::mutex, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_lifo>&, hpx::threads::detail::scheduling_counters&, hpx::threads::detail::scheduling_callbacks&)+0x21c (0x7faa7f508b3c), scheduling_loop.hpp:329 [ 96.7% ]
                                           "libhpx.so.1.0.0"!hpx::threads::thread_data::operator()()+0xcd (0x7faa7f50331d), context_linux_x86.hpp:374 [ 96.7% ]
                                              "libhpx.so.1.0.0"!void hpx::threads::coroutines::detail::lx::trampoline<hpx::threads::coroutines::detail::coroutine_impl>(hpx::threads::coroutines::detail::coroutine_impl*)+0x9 (0x7faa7f466e09), context_linux_x86.hpp:88 [ 96.7% ]
                                                 "libhpx.so.1.0.0"!hpx::threads::coroutines::detail::coroutine_impl::operator()()+0x12b (0x7faa7f550a9b), basic_function.hpp:196 [ 96.7% ]
                                                    "libhpx.so.1.0.0"!std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > hpx::util::detail::callable_vtable<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (hpx::threads::thread_state_ex_enum)>::_invoke<hpx::util::detail::bound<hpx::util::detail::one_shot_wrapper<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (*)(hpx::util::unique_function<void (), false>)> (hpx::util::unique_function<void (), false>&&)> >(void**, hpx::threads::thread_state_ex_enum&&)+0x46 (0x7faa7f4efdf6), invoke.hpp:36 [ 96.7% ]
                                                       "libhpx.so.1.0.0"!hpx::applier::thread_function_nullary(hpx::util::unique_function<void (), false>)+0xe (0x7faa7f5795be), basic_function.hpp:196 [ 96.7% ]
                                                          "octotiger"!void hpx::util::detail::callable_vtable<void ()>::_invoke<hpx::util::detail::deferred<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (*(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >&&))(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >)> >(void**)+0x22 (0x84a452), invoke.hpp:36 [ 96.7% ]
                                                             "octotiger"!hpx::lcos::detail::task_base<void>::run_impl(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >)+0xd (0x84a3dd), future_data.hpp:782 [ 96.7% ]
                                                                "octotiger"!hpx::lcos::local::detail::task_object<void, hpx::util::detail::deferred<hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v2::detail::part_iterations<grid::compute_boundary_interactions_multipole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}&, int, hpx::util::tuple<> > >& (grid::compute_boundary_interactions_multipole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}&<unsigned long, unsigned long, unsigned long> const&)>, hpx::lcos::detail::task_base<void> >::do_run()+0x3e (0x9e3d4e), invoke.hpp:36
"octotiger"!grid::compute_boundary_interactions_multipole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}::operator()(unsigned long) const+0x8da (0x9ddf5a) [W], grid_fmm.cpp:516
"octotiger"!node_server::compute_fmm(gsolve_type, bool)+0x6bb (0xa2569b), packaged_continuation.hpp:430 [ 71.9% ]
       "octotiger"!hpx::lcos::detail::future_data<node_server::neighbor_gravity_type>::set_on_completed(hpx::util::unique_function<void (), false>)+0xeb (0x98655b), future_data.hpp:552 [ 71.9% ]
          "octotiger"!hpx::lcos::detail::future_data<node_server::neighbor_gravity_type>::handle_on_completed(hpx::util::unique_function<void (), false>&&)+0x29a (0x98634a), basic_function.hpp:196 [ 71.9% ]
             "octotiger"!hpx::lcos::detail::continuation<hpx::lcos::future<node_server::neighbor_gravity_type>, node_server::compute_fmm(gsolve_type, bool)::{lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, void>::run(boost::intrusive_ptr<hpx::lcos::detail::future_data<node_server::neighbor_gravity_type> > const&)+0x11c (0xa23adc), packaged_continuation.hpp:105 [ 71.9% ]
                "octotiger"!void hpx::lcos::detail::invoke_continuation<node_server::compute_fmm(gsolve_type, bool)::{lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, hpx::lcos::future<node_server::neighbor_gravity_type>, hpx::lcos::detail::continuation<hpx::lcos::future<node_server::neighbor_gravity_type>, {lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, void> >(node_server::compute_fmm(gsolve_type, bool)::{lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}&, hpx::lcos::future<node_server::neighbor_gravity_type>&, hpx::lcos::detail::continuation<hpx::lcos::future<node_server::neighbor_gravity_type>, {lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, void>&, std::integral_constant<bool, true>) [clone .isra.564] [clone .constprop.1360]+0x125 (0xa237c5), node_server.cpp:444 [ 71.9% ]
                   "octotiger"!grid::compute_boundary_interactions_monopole_monopole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)+0x49c (0x9e64dc), wait_all.hpp:329 [ 71.9% ]
                      "octotiger"!void hpx::lcos::wait_all<hpx::lcos::future<void> >(std::vector<hpx::lcos::future<void>, std::allocator<hpx::lcos::future<void> > > const&)+0x2bf (0x88828f), wait_all.hpp:306 [ 95.0% ]
                         "octotiger"!hpx::lcos::detail::future_data<void>::wait(hpx::error_code&)+0xb4 (0x85b074), future_data.hpp:567 [ 95.0% ]
                            "libhpx.so.1.0.0"!hpx::lcos::local::detail::condition_variable::wait(std::unique_lock<hpx::lcos::local::spinlock>&, char const*, hpx::error_code&)+0xbf (0x7faa7fa0a8ef), thread_helpers.hpp:499
"octotiger"!grid::compute_boundary_interactions_multipole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}::operator()(unsigned long) const+0x8da (0x9ddf5a) [W], grid_fmm.cpp:516

Loop statistics

Accesses 1.37e+10
Thread Id Accesses
Thread Total 1.37e+10
23408 5.64e+08
23409 5.71e+08
23410 5.35e+08
23411 4.77e+08
23412 6.72e+08
23413 6.65e+08
23414 5.49e+08
23415 5.86e+08
23416 5.86e+08
23417 4.70e+08
23418 5.20e+08
23419 6.36e+08
23420 5.28e+08
23421 6.51e+08
23422 5.93e+08
23423 5.35e+08
23424 5.49e+08
23425 6.14e+08
23426 5.93e+08
23427 5.06e+08
23428 5.57e+08
23429 4.77e+08
23430 6.29e+08
23431 6.07e+08
Fetch/Miss ratio
Write-back ratio
Utilization
% of misses 2.8%
Thread Id % of misses
Thread Total 2.8%
23408 0.0%
23409 0.2%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.4%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.3%
23425 0.1%
23426 0.3%
23427 0.2%
23428 0.5%
23429 0.2%
23430 0.0%
23431 0.5%
% of bandwidth 3.8%
Thread Id % of bandwidth
Thread Total 3.8%
23408 0.0%
23409 0.3%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.5%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.3%
23425 0.1%
23426 0.3%
23427 0.3%
23428 0.6%
23429 0.3%
23430 0.0%
23431 0.6%
% of fetches 2.8%
Thread Id % of fetches
Thread Total 2.8%
23408 0.0%
23409 0.2%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.4%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.3%
23425 0.1%
23426 0.3%
23427 0.2%
23428 0.5%
23429 0.2%
23430 0.0%
23431 0.5%
% of write-backs 5.9%
Thread Id % of write-backs
Thread Total 5.9%
23408 0.0%
23409 0.5%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.1%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.8%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.5%
23425 0.1%
23426 0.5%
23427 0.5%
23428 1.0%
23429 0.5%
23430 0.0%
23431 1.0%
% of upgrades 15.3%
Thread Id % of upgrades
Thread Total 15.3%
23408 0.0%
23409 0.0%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.0%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.1%
23425 0.0%
23426 0.0%
23427 2.5%
23428 5.1%
23429 2.5%
23430 0.0%
23431 5.1%
Miss ratio 0.6%
Thread Id Total Miss ratio Uncategorized Replacement Coherence Flush
Thread Average 0.6% 0.0% 0.3% 0.3% 0.0%
23408 0.0% 0.0% 0.0% 0.0% 0.0%
23409 1.3% 0.0% 1.3% 0.0% 0.0%
23410 0.0% 0.0% 0.0% 0.0% 0.0%
23411 0.0% 0.0% 0.0% 0.0% 0.0%
23412 0.1% 0.0% 0.1% 0.0% 0.0%
23413 0.1% 0.0% 0.1% 0.0% 0.0%
23414 0.0% 0.0% 0.0% 0.0% 0.0%
23415 0.0% 0.0% 0.0% 0.0% 0.0%
23416 0.1% 0.0% 0.1% 0.0% 0.0%
23417 0.1% 0.0% 0.1% 0.0% 0.0%
23418 0.1% 0.0% 0.1% 0.0% 0.0%
23419 0.0% 0.0% 0.0% 0.0% 0.0%
23420 2.2% 0.0% 2.2% 0.0% 0.0%
23421 0.1% 0.0% 0.1% 0.0% 0.0%
23422 0.0% 0.0% 0.0% 0.0% 0.0%
23423 0.1% 0.0% 0.1% 0.0% 0.0%
23424 1.4% 0.0% 1.4% 0.1% 0.0%
23425 0.3% 0.0% 0.3% 0.0% 0.0%
23426 1.3% 0.0% 1.3% 0.0% 0.0%
23427 1.4% 0.0% 0.0% 1.4% 0.0%
23428 2.6% 0.0% 0.0% 2.6% 0.0%
23429 1.6% 0.0% 0.1% 1.5% 0.0%
23430 0.1% 0.0% 0.1% 0.0% 0.0%
23431 2.4% 0.0% 0.0% 2.4% 0.0%
Fetch ratio 0.6%
Thread Id Total Fetch ratio Uncategorized Replacement Coherence Flush
Thread Average 0.6% 0.0% 0.3% 0.3% 0.0%
23408 0.0% 0.0% 0.0% 0.0% 0.0%
23409 1.3% 0.0% 1.3% 0.0% 0.0%
23410 0.0% 0.0% 0.0% 0.0% 0.0%
23411 0.0% 0.0% 0.0% 0.0% 0.0%
23412 0.1% 0.0% 0.1% 0.0% 0.0%
23413 0.1% 0.0% 0.1% 0.0% 0.0%
23414 0.0% 0.0% 0.0% 0.0% 0.0%
23415 0.0% 0.0% 0.0% 0.0% 0.0%
23416 0.1% 0.0% 0.1% 0.0% 0.0%
23417 0.1% 0.0% 0.1% 0.0% 0.0%
23418 0.1% 0.0% 0.1% 0.0% 0.0%
23419 0.0% 0.0% 0.0% 0.0% 0.0%
23420 2.2% 0.0% 2.2% 0.0% 0.0%
23421 0.1% 0.0% 0.1% 0.0% 0.0%
23422 0.0% 0.0% 0.0% 0.0% 0.0%
23423 0.1% 0.0% 0.1% 0.0% 0.0%
23424 1.4% 0.0% 1.4% 0.1% 0.0%
23425 0.3% 0.0% 0.3% 0.0% 0.0%
23426 1.3% 0.0% 1.3% 0.0% 0.0%
23427 1.4% 0.0% 0.0% 1.4% 0.0%
23428 2.6% 0.0% 0.0% 2.6% 0.0%
23429 1.6% 0.0% 0.1% 1.5% 0.0%
23430 0.1% 0.0% 0.1% 0.0% 0.0%
23431 2.4% 0.0% 0.0% 2.4% 0.0%
Write-back ratio 0.6%
Thread Id Total Write-back ratio Uncategorized Replacement Coherence Flush
Thread Average 0.6% 0.0% 0.3% 0.3% 0.0%
23408 0.0% 0.0% 0.0% 0.0% 0.0%
23409 1.3% 0.0% 1.3% 0.0% 0.0%
23410 0.0% 0.0% 0.0% 0.0% 0.0%
23411 0.0% 0.0% 0.0% 0.0% 0.0%
23412 0.1% 0.0% 0.1% 0.0% 0.0%
23413 0.1% 0.0% 0.1% 0.0% 0.0%
23414 0.0% 0.0% 0.0% 0.0% 0.0%
23415 0.0% 0.0% 0.0% 0.0% 0.0%
23416 0.1% 0.0% 0.1% 0.0% 0.0%
23417 0.1% 0.0% 0.1% 0.0% 0.0%
23418 0.1% 0.0% 0.1% 0.0% 0.0%
23419 0.0% 0.0% 0.0% 0.0% 0.0%
23420 2.2% 0.0% 2.2% 0.0% 0.0%
23421 0.1% 0.0% 0.1% 0.0% 0.0%
23422 0.0% 0.0% 0.0% 0.0% 0.0%
23423 0.1% 0.0% 0.1% 0.0% 0.0%
23424 1.4% 0.0% 1.4% 0.1% 0.0%
23425 0.3% 0.0% 0.3% 0.0% 0.0%
23426 1.3% 0.0% 1.3% 0.0% 0.0%
23427 1.4% 0.0% 0.0% 1.4% 0.0%
23428 2.6% 0.0% 0.0% 2.6% 0.0%
23429 1.6% 0.0% 0.0% 1.5% 0.0%
23430 0.0% 0.0% 0.0% 0.0% 0.0%
23431 2.4% 0.0% 0.0% 2.4% 0.0%
Upgrade ratio 0.3%
Thread Id Upgrade ratio
Thread Average 0.3%
23408 0.0%
23409 0.0%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.0%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.1%
23425 0.0%
23426 0.0%
23427 1.4%
23428 2.6%
23429 1.5%
23430 0.0%
23431 2.4%
Communication ratio 0.6%
Thread Id Comm. ratio
Thread Average 0.6%
23408 0.0%
23409 0.0%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.0%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.1%
23425 0.0%
23426 0.0%
23427 2.9%
23428 5.2%
23429 3.0%
23430 0.0%
23431 4.8%
Fetch utilization 92.4%
Thread Id Fetch utilization
Thread Average 92.4%
23408 100.0%
23409 100.0%
23410 100.0%
23411 100.0%
23412 100.0%
23413 100.0%
23414 100.0%
23415 100.0%
23416 100.0%
23417 100.0%
23418 100.0%
23419 100.0%
23420 9.0%
23421 100.0%
23422 100.0%
23423 100.0%
23424 31.2%
23425 100.0%
23426 45.9%
23427 40.5%
23428 1.3%
23429 42.2%
23430 100.0%
23431 28.9%
Write-back utilization 91.6%
Thread Id Write-back utilization
Thread Average 91.6%
23408 100.0%
23409 49.9%
23410 100.0%
23411 100.0%
23412 100.0%
23413 100.0%
23414 100.0%
23415 100.0%
23416 100.0%
23417 100.0%
23418 100.0%
23419 100.0%
23420 36.1%
23421 100.0%
23422 100.0%
23423 100.0%
23424 62.0%
23425 100.0%
23426 71.5%
23427 65.7%
23428 34.2%
23429 26.6%
23430 100.0%
23431 38.1%
Communication utilization 98.5%
Thread Id Comm. utilization
Thread Average 98.5%
23408 100.0%
23409 100.0%
23410 100.0%
23411 100.0%
23412 100.0%
23413 100.0%
23414 100.0%
23415 100.0%
23416 100.0%
23417 100.0%
23418 100.0%
23419 100.0%
23420 100.0%
23421 84.8%
23422 30.0%
23423 37.5%
23424 37.5%
23425 16.2%
23426 100.0%
23427 60.8%
23428 100.0%
23429 100.0%
23430 100.0%
23431 100.0%
False sharing ratio 0.0%
Thread Id F-S. ratio
Thread Average 0.0%
23408 0.0%
23409 0.0%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.0%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.0%
23425 0.0%
23426 0.0%
23427 0.0%
23428 0.0%
23429 0.0%
23430 0.0%
23431 0.0%
HW prefetch probability 0.0%
Thread Id HW prefetch probability
Thread Average 0.0%
23408 0.0%
23409 0.0%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.0%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.0%
23425 0.0%
23426 0.0%
23427 0.0%
23428 0.0%
23429 0.0%
23430 0.0%
23431 0.0%
Access randomness Low
Thread Id Access randomness
Thread Average Low
23408 Low
23409 Low
23410 Low
23411 Low
23412 Low
23413 Low
23414 Low
23415 Low
23416 Low
23417 Low
23418 Low
23419 Low
23420 Low
23421 Low
23422 Low
23423 Low
23424 Low
23425 Low
23426 Low
23427 Low
23428 Low
23429 Low
23430 Low
23431 Low

Loop instructions

Stack Instruction % of misses % of fetches Fetch ratio Fetch utilization W-B Utilization
"octotiger"!std::enable_if<hpx::traits::detail::is_unique_future<hpx::util::result_of<node_server::nonrefined_step()::{lambda(hpx::lcos::future<void>)#1}::operator()(hpx::lcos::future<void>) const::{lambda(hpx::lcos::future<void>)#1} (hpx::lcos::future<void>)>::type, void>::value, void>::type hpx::lcos::detail::invoke_continuation<node_server::nonrefined_step()::{lambda(hpx::lcos::future<void>)#1}::operator()(hpx::lcos::future<void>) const::{lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void>, hpx::lcos::detail::continuation<hpx::lcos::future<void>, {lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void> > >(hpx::util&, hpx::util::result_of&, hpx::lcos::detail::continuation<hpx::lcos::future<void>, {lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void> >&) [clone .constprop.2248]+0x11e (0x9597fe), node_server_actions_3.cpp:483 [ 20.9% ]
       "octotiger"!node_server::compute_fmm(gsolve_type, bool)+0x6bb (0xa2569b), packaged_continuation.hpp:430 [ 26.9% ]
          "octotiger"!hpx::lcos::detail::future_data<node_server::neighbor_gravity_type>::set_on_completed(hpx::util::unique_function<void (), false>)+0xeb (0x98655b), future_data.hpp:552 [ 26.9% ]
             "octotiger"!hpx::lcos::detail::future_data<node_server::neighbor_gravity_type>::handle_on_completed(hpx::util::unique_function<void (), false>&&)+0x29a (0x98634a), basic_function.hpp:196 [ 27.0% ]
                "octotiger"!hpx::lcos::detail::continuation<hpx::lcos::future<node_server::neighbor_gravity_type>, node_server::compute_fmm(gsolve_type, bool)::{lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, void>::run(boost::intrusive_ptr<hpx::lcos::detail::future_data<node_server::neighbor_gravity_type> > const&)+0x11c (0xa23adc), packaged_continuation.hpp:105 [ 27.0% ]
                   "octotiger"!void hpx::lcos::detail::invoke_continuation<node_server::compute_fmm(gsolve_type, bool)::{lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, hpx::lcos::future<node_server::neighbor_gravity_type>, hpx::lcos::detail::continuation<hpx::lcos::future<node_server::neighbor_gravity_type>, {lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, void> >(node_server::compute_fmm(gsolve_type, bool)::{lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}&, hpx::lcos::future<node_server::neighbor_gravity_type>&, hpx::lcos::detail::continuation<hpx::lcos::future<node_server::neighbor_gravity_type>, {lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, void>&, std::integral_constant<bool, true>) [clone .isra.564] [clone .constprop.1360]+0x125 (0xa237c5), node_server.cpp:444 [ 27.0% ]
                      "octotiger"!grid::compute_boundary_interactions_monopole_monopole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)+0x49c (0x9e64dc), wait_all.hpp:329 [ 27.0% ]
                         "octotiger"!void hpx::lcos::wait_all<hpx::lcos::future<void> >(std::vector<hpx::lcos::future<void>, std::allocator<hpx::lcos::future<void> > > const&)+0x2bf (0x88828f), wait_all.hpp:306 [ 39.4% ]
                            "octotiger"!hpx::lcos::detail::future_data<void>::wait(hpx::error_code&)+0xb4 (0x85b074), future_data.hpp:567 [ 39.8% ]
                               "libhpx.so.1.0.0"!hpx::lcos::local::detail::condition_variable::wait(std::unique_lock<hpx::lcos::local::spinlock>&, char const*, hpx::error_code&)+0xbf (0x7faa7fa0a8ef), thread_helpers.hpp:499 [ 43.6% ]
                                  "libhpx.so.1.0.0"!hpx::this_thread::suspend(hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> const&, hpx::util::thread_description const&, hpx::error_code&)+0xf8 (0x7faa7f577fe8), thread_helpers.cpp:472 [ 61.6% ]
                                     "libhpx.so.1.0.0"!hpx::threads::coroutines::detail::coroutine_self::yield(std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> >)+0xbc (0x7faa7f4f7f6c), context_linux_x86.hpp:374 [ 61.6% ]
                                        "libhpx.so.1.0.0"!void hpx::threads::detail::scheduling_loop<hpx::threads::policies::local_priority_queue_scheduler<boost::mutex, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_lifo> >(unsigned long, hpx::threads::policies::local_priority_queue_scheduler<boost::mutex, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_lifo>&, hpx::threads::detail::scheduling_counters&, hpx::threads::detail::scheduling_callbacks&)+0x21c (0x7faa7f508b3c), scheduling_loop.hpp:329 [ 96.8% ]
                                           "libhpx.so.1.0.0"!hpx::threads::thread_data::operator()()+0xcd (0x7faa7f50331d), context_linux_x86.hpp:374 [ 96.8% ]
                                              "libhpx.so.1.0.0"!void hpx::threads::coroutines::detail::lx::trampoline<hpx::threads::coroutines::detail::coroutine_impl>(hpx::threads::coroutines::detail::coroutine_impl*)+0x9 (0x7faa7f466e09), context_linux_x86.hpp:88 [ 96.8% ]
                                                 "libhpx.so.1.0.0"!hpx::threads::coroutines::detail::coroutine_impl::operator()()+0x12b (0x7faa7f550a9b), basic_function.hpp:196 [ 96.8% ]
                                                    "libhpx.so.1.0.0"!std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > hpx::util::detail::callable_vtable<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (hpx::threads::thread_state_ex_enum)>::_invoke<hpx::util::detail::bound<hpx::util::detail::one_shot_wrapper<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (*)(hpx::util::unique_function<void (), false>)> (hpx::util::unique_function<void (), false>&&)> >(void**, hpx::threads::thread_state_ex_enum&&)+0x46 (0x7faa7f4efdf6), invoke.hpp:36 [ 96.8% ]
                                                       "libhpx.so.1.0.0"!hpx::applier::thread_function_nullary(hpx::util::unique_function<void (), false>)+0xe (0x7faa7f5795be), basic_function.hpp:196 [ 96.8% ]
                                                          "octotiger"!void hpx::util::detail::callable_vtable<void ()>::_invoke<hpx::util::detail::deferred<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (*(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >&&))(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >)> >(void**)+0x22 (0x84a452), invoke.hpp:36 [ 96.8% ]
                                                             "octotiger"!hpx::lcos::detail::task_base<void>::run_impl(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >)+0xd (0x84a3dd), future_data.hpp:782 [ 96.8% ]
                                                                "octotiger"!hpx::lcos::local::detail::task_object<void, hpx::util::detail::deferred<hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v2::detail::part_iterations<grid::compute_boundary_interactions_multipole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}&, int, hpx::util::tuple<> > >& (grid::compute_boundary_interactions_multipole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}&<unsigned long, unsigned long, unsigned long> const&)>, hpx::lcos::detail::task_base<void> >::do_run()+0x3e (0x9e3d4e), invoke.hpp:36
"octotiger"!grid::compute_boundary_interactions_multipole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}::operator()(unsigned long) const+0x8d0 (0x9ddf50) [R], grid_fmm.cpp:516 2.8%
Thread Id % of misses
Thread Total 2.8%
23408 0.0%
23409 0.2%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.4%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.3%
23425 0.1%
23426 0.3%
23427 0.2%
23428 0.5%
23429 0.2%
23430 0.0%
23431 0.5%
2.8%
Thread Id % of fetches
Thread Total 2.8%
23408 0.0%
23409 0.2%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.4%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.3%
23425 0.1%
23426 0.3%
23427 0.2%
23428 0.5%
23429 0.2%
23430 0.0%
23431 0.5%
1.8%
Thread Id Total Fetch ratio Uncategorized Replacement Coherence Flush
Thread Average 1.8% 0.0% 0.9% 0.9% 0.0%
23408 0.0% 0.0% 0.0% 0.0% 0.0%
23409 3.4% 0.0% 3.4% 0.0% 0.0%
23410 0.0% 0.0% 0.0% 0.0% 0.0%
23411 0.1% 0.0% 0.1% 0.0% 0.0%
23412 0.2% 0.0% 0.2% 0.0% 0.0%
23413 0.4% 0.0% 0.4% 0.0% 0.0%
23414 0.0% 0.0% 0.0% 0.0% 0.0%
23415 0.1% 0.0% 0.1% 0.0% 0.0%
23416 0.1% 0.0% 0.1% 0.0% 0.0%
23417 0.2% 0.0% 0.2% 0.0% 0.0%
23418 0.3% 0.0% 0.3% 0.0% 0.0%
23419 0.0% 0.0% 0.0% 0.0% 0.0%
23420 6.5% 0.0% 6.5% 0.0% 0.0%
23421 0.2% 0.0% 0.2% 0.0% 0.0%
23422 0.0% 0.0% 0.0% 0.0% 0.0%
23423 0.2% 0.0% 0.2% 0.0% 0.0%
23424 4.1% 0.0% 3.9% 0.2% 0.0%
23425 1.0% 0.0% 1.0% 0.0% 0.0%
23426 4.0% 0.0% 4.0% 0.0% 0.0%
23427 3.8% 0.0% 0.0% 3.8% 0.0%
23428 8.0% 0.0% 0.0% 8.0% 0.0%
23429 4.5% 0.0% 0.1% 4.3% 0.0%
23430 0.1% 0.0% 0.1% 0.0% 0.0%
23431 6.7% 0.0% 0.0% 6.7% 0.0%
89.2%
Thread Id Fetch utilization
Thread Average 89.2%
23408 100.0%
23409 100.0%
23410 100.0%
23411 100.0%
23412 100.0%
23413 100.0%
23414 100.0%
23415 100.0%
23416 100.0%
23417 100.0%
23418 100.0%
23419 100.0%
23420 8.8%
23421 100.0%
23422 100.0%
23423 100.0%
23424 25.2%
23425 100.0%
23426 45.6%
23427 40.4%
23428 1.1%
23429 42.1%
23430 100.0%
23431 28.5%
91.6%
Thread Id Write-back utilization
Thread Average 91.6%
23408 100.0%
23409 49.9%
23410 100.0%
23411 100.0%
23412 100.0%
23413 100.0%
23414 100.0%
23415 100.0%
23416 100.0%
23417 100.0%
23418 100.0%
23419 100.0%
23420 36.1%
23421 100.0%
23422 100.0%
23423 100.0%
23424 62.0%
23425 100.0%
23426 71.5%
23427 65.7%
23428 34.2%
23429 26.6%
23430 100.0%
23431 38.1%
"octotiger"!std::enable_if<hpx::traits::detail::is_unique_future<hpx::util::result_of<node_server::nonrefined_step()::{lambda(hpx::lcos::future<void>)#1}::operator()(hpx::lcos::future<void>) const::{lambda(hpx::lcos::future<void>)#1} (hpx::lcos::future<void>)>::type, void>::value, void>::type hpx::lcos::detail::invoke_continuation<node_server::nonrefined_step()::{lambda(hpx::lcos::future<void>)#1}::operator()(hpx::lcos::future<void>) const::{lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void>, hpx::lcos::detail::continuation<hpx::lcos::future<void>, {lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void> > >(hpx::util&, hpx::util::result_of&, hpx::lcos::detail::continuation<hpx::lcos::future<void>, {lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void> >&) [clone .constprop.2248]+0x11e (0x9597fe), node_server_actions_3.cpp:483 [ 22.4% ]
       "octotiger"!std::enable_if<hpx::traits::detail::is_unique_future<hpx::util::result_of<node_server::nonrefined_step()::{lambda(hpx::lcos::future<void>)#1}::operator()(hpx::lcos::future<void>) const::{lambda(hpx::lcos::future<void>)#1} (hpx::lcos::future<void>)>::type, void>::value, void>::type hpx::lcos::detail::invoke_continuation<node_server::nonrefined_step()::{lambda(hpx::lcos::future<void>)#1}::operator()(hpx::lcos::future<void>) const::{lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void>, hpx::lcos::detail::continuation<hpx::lcos::future<void>, {lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void> > >(hpx::util&, hpx::util::result_of&, hpx::lcos::detail::continuation<hpx::lcos::future<void>, {lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void> >&) [clone .constprop.2248]+0x11e (0x9597fe), node_server_actions_3.cpp:483 [ 22.4% ]
          "octotiger"!node_server::compute_fmm(gsolve_type, bool)+0x6bb (0xa2569b), packaged_continuation.hpp:430 [ 28.1% ]
             "octotiger"!hpx::lcos::detail::future_data<node_server::neighbor_gravity_type>::set_on_completed(hpx::util::unique_function<void (), false>)+0xeb (0x98655b), future_data.hpp:552 [ 28.1% ]
                "octotiger"!hpx::lcos::detail::future_data<node_server::neighbor_gravity_type>::handle_on_completed(hpx::util::unique_function<void (), false>&&)+0x29a (0x98634a), basic_function.hpp:196 [ 28.5% ]
                   "octotiger"!hpx::lcos::detail::continuation<hpx::lcos::future<node_server::neighbor_gravity_type>, node_server::compute_fmm(gsolve_type, bool)::{lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, void>::run(boost::intrusive_ptr<hpx::lcos::detail::future_data<node_server::neighbor_gravity_type> > const&)+0x11c (0xa23adc), packaged_continuation.hpp:105 [ 28.5% ]
                      "octotiger"!void hpx::lcos::detail::invoke_continuation<node_server::compute_fmm(gsolve_type, bool)::{lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, hpx::lcos::future<node_server::neighbor_gravity_type>, hpx::lcos::detail::continuation<hpx::lcos::future<node_server::neighbor_gravity_type>, {lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, void> >(node_server::compute_fmm(gsolve_type, bool)::{lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}&, hpx::lcos::future<node_server::neighbor_gravity_type>&, hpx::lcos::detail::continuation<hpx::lcos::future<node_server::neighbor_gravity_type>, {lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, void>&, std::integral_constant<bool, true>) [clone .isra.564] [clone .constprop.1360]+0x125 (0xa237c5), node_server.cpp:444 [ 28.5% ]
                         "octotiger"!grid::compute_boundary_interactions_monopole_monopole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)+0x49c (0x9e64dc), wait_all.hpp:329 [ 28.5% ]
                            "octotiger"!void hpx::lcos::wait_all<hpx::lcos::future<void> >(std::vector<hpx::lcos::future<void>, std::allocator<hpx::lcos::future<void> > > const&)+0x2bf (0x88828f), wait_all.hpp:306 [ 42.0% ]
                               "octotiger"!hpx::lcos::detail::future_data<void>::wait(hpx::error_code&)+0xb4 (0x85b074), future_data.hpp:567 [ 42.2% ]
                                  "libhpx.so.1.0.0"!hpx::lcos::local::detail::condition_variable::wait(std::unique_lock<hpx::lcos::local::spinlock>&, char const*, hpx::error_code&)+0xbf (0x7faa7fa0a8ef), thread_helpers.hpp:499 [ 44.9% ]
                                     "libhpx.so.1.0.0"!hpx::this_thread::suspend(hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> const&, hpx::util::thread_description const&, hpx::error_code&)+0xf8 (0x7faa7f577fe8), thread_helpers.cpp:472 [ 64.0% ]
                                        "libhpx.so.1.0.0"!hpx::threads::coroutines::detail::coroutine_self::yield(std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> >)+0xbc (0x7faa7f4f7f6c), context_linux_x86.hpp:374 [ 64.0% ]
                                           "libhpx.so.1.0.0"!void hpx::threads::detail::scheduling_loop<hpx::threads::policies::local_priority_queue_scheduler<boost::mutex, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_lifo> >(unsigned long, hpx::threads::policies::local_priority_queue_scheduler<boost::mutex, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_lifo>&, hpx::threads::detail::scheduling_counters&, hpx::threads::detail::scheduling_callbacks&)+0x21c (0x7faa7f508b3c), scheduling_loop.hpp:329 [ 97.0% ]
                                              "libhpx.so.1.0.0"!hpx::threads::thread_data::operator()()+0xcd (0x7faa7f50331d), context_linux_x86.hpp:374 [ 97.0% ]
                                                 "libhpx.so.1.0.0"!void hpx::threads::coroutines::detail::lx::trampoline<hpx::threads::coroutines::detail::coroutine_impl>(hpx::threads::coroutines::detail::coroutine_impl*)+0x9 (0x7faa7f466e09), context_linux_x86.hpp:88 [ 97.0% ]
                                                    "libhpx.so.1.0.0"!hpx::threads::coroutines::detail::coroutine_impl::operator()()+0x12b (0x7faa7f550a9b), basic_function.hpp:196 [ 97.0% ]
                                                       "libhpx.so.1.0.0"!std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > hpx::util::detail::callable_vtable<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (hpx::threads::thread_state_ex_enum)>::_invoke<hpx::util::detail::bound<hpx::util::detail::one_shot_wrapper<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (*)(hpx::util::unique_function<void (), false>)> (hpx::util::unique_function<void (), false>&&)> >(void**, hpx::threads::thread_state_ex_enum&&)+0x46 (0x7faa7f4efdf6), invoke.hpp:36 [ 97.0% ]
                                                          "libhpx.so.1.0.0"!hpx::applier::thread_function_nullary(hpx::util::unique_function<void (), false>)+0xe (0x7faa7f5795be), basic_function.hpp:196 [ 97.0% ]
                                                             "octotiger"!void hpx::util::detail::callable_vtable<void ()>::_invoke<hpx::util::detail::deferred<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (*(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >&&))(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >)> >(void**)+0x22 (0x84a452), invoke.hpp:36 [ 97.0% ]
                                                                "octotiger"!hpx::lcos::detail::task_base<void>::run_impl(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >)+0xd (0x84a3dd), future_data.hpp:782 [ 97.0% ]
                                                                   "octotiger"!hpx::lcos::local::detail::task_object<void, hpx::util::detail::deferred<hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v2::detail::part_iterations<grid::compute_boundary_interactions_multipole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}&, int, hpx::util::tuple<> > >& (grid::compute_boundary_interactions_multipole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}&<unsigned long, unsigned long, unsigned long> const&)>, hpx::lcos::detail::task_base<void> >::do_run()+0x3e (0x9e3d4e), invoke.hpp:36
"octotiger"!grid::compute_boundary_interactions_multipole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}::operator()(unsigned long) const+0x8d5 (0x9ddf55) [R], grid_fmm.cpp:516 0.0%
Thread Id % of misses
Thread Total 0.0%
23408 0.0%
23409 0.0%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.0%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.0%
23425 0.0%
23426 0.0%
23427 0.0%
23428 0.0%
23429 0.0%
23430 0.0%
23431 0.0%
0.0%
Thread Id % of fetches
Thread Total 0.0%
23408 0.0%
23409 0.0%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.0%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.0%
23425 0.0%
23426 0.0%
23427 0.0%
23428 0.0%
23429 0.0%
23430 0.0%
23431 0.0%
0.0%
Thread Id Total Fetch ratio Uncategorized Replacement Coherence Flush
Thread Average 0.0% 0.0% 0.0% 0.0% 0.0%
23408 0.0% 0.0% 0.0% 0.0% 0.0%
23409 0.0% 0.0% 0.0% 0.0% 0.0%
23410 0.0% 0.0% 0.0% 0.0% 0.0%
23411 0.0% 0.0% 0.0% 0.0% 0.0%
23412 0.0% 0.0% 0.0% 0.0% 0.0%
23413 0.0% 0.0% 0.0% 0.0% 0.0%
23414 0.0% 0.0% 0.0% 0.0% 0.0%
23415 0.0% 0.0% 0.0% 0.0% 0.0%
23416 0.0% 0.0% 0.0% 0.0% 0.0%
23417 0.0% 0.0% 0.0% 0.0% 0.0%
23418 0.1% 0.0% 0.1% 0.0% 0.0%
23419 0.0% 0.0% 0.0% 0.0% 0.0%
23420 0.0% 0.0% 0.0% 0.0% 0.0%
23421 0.0% 0.0% 0.0% 0.0% 0.0%
23422 0.0% 0.0% 0.0% 0.0% 0.0%
23423 0.1% 0.0% 0.1% 0.0% 0.0%
23424 0.0% 0.0% 0.0% 0.0% 0.0%
23425 0.0% 0.0% 0.0% 0.0% 0.0%
23426 0.0% 0.0% 0.0% 0.0% 0.0%
23427 0.0% 0.0% 0.0% 0.0% 0.0%
23428 0.0% 0.0% 0.0% 0.0% 0.0%
23429 0.0% 0.0% 0.0% 0.0% 0.0%
23430 0.0% 0.0% 0.0% 0.0% 0.0%
23431 0.0% 0.0% 0.0% 0.0% 0.0%
100.0%
Thread Id Fetch utilization
Thread Average 100.0%
23408 60.3%
23409 37.1%
23410 100.0%
23411 48.7%
23412 100.0%
23413 100.0%
23414 100.0%
23415 100.0%
23416 66.3%
23417 73.1%
23418 64.3%
23419 64.0%
23420 53.8%
23421 56.6%
23422 42.8%
23423 8.9%
23424 100.0%
23425 70.8%
23426 100.0%
23427 54.2%
23428 36.0%
23429 54.1%
23430 58.8%
23431 100.0%
100.0%
Thread Id Write-back utilization
Thread Average 100.0%
23408 100.0%
23409 100.0%
23410 100.0%
23411 100.0%
23412 100.0%
23413 100.0%
23414 100.0%
23415 100.0%
23416 100.0%
23417 100.0%
23418 100.0%
23419 100.0%
23420 100.0%
23421 100.0%
23422 100.0%
23423 100.0%
23424 100.0%
23425 100.0%
23426 100.0%
23427 100.0%
23428 100.0%
23429 100.0%
23430 100.0%
23431 100.0%
"octotiger"!std::enable_if<hpx::traits::detail::is_unique_future<hpx::util::result_of<node_server::nonrefined_step()::{lambda(hpx::lcos::future<void>)#1}::operator()(hpx::lcos::future<void>) const::{lambda(hpx::lcos::future<void>)#1} (hpx::lcos::future<void>)>::type, void>::value, void>::type hpx::lcos::detail::invoke_continuation<node_server::nonrefined_step()::{lambda(hpx::lcos::future<void>)#1}::operator()(hpx::lcos::future<void>) const::{lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void>, hpx::lcos::detail::continuation<hpx::lcos::future<void>, {lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void> > >(hpx::util&, hpx::util::result_of&, hpx::lcos::detail::continuation<hpx::lcos::future<void>, {lambda(hpx::lcos::future<void>)#1}, hpx::lcos::future<void> >&) [clone .constprop.2248]+0x11e (0x9597fe), node_server_actions_3.cpp:483 [ 18.5% ]
       "octotiger"!node_server::compute_fmm(gsolve_type, bool)+0x6bb (0xa2569b), packaged_continuation.hpp:430 [ 27.0% ]
          "octotiger"!hpx::lcos::detail::future_data<node_server::neighbor_gravity_type>::set_on_completed(hpx::util::unique_function<void (), false>)+0xeb (0x98655b), future_data.hpp:552 [ 27.0% ]
             "octotiger"!hpx::lcos::detail::future_data<node_server::neighbor_gravity_type>::handle_on_completed(hpx::util::unique_function<void (), false>&&)+0x29a (0x98634a), basic_function.hpp:196 [ 27.1% ]
                "octotiger"!hpx::lcos::detail::continuation<hpx::lcos::future<node_server::neighbor_gravity_type>, node_server::compute_fmm(gsolve_type, bool)::{lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, void>::run(boost::intrusive_ptr<hpx::lcos::detail::future_data<node_server::neighbor_gravity_type> > const&)+0x11c (0xa23adc), packaged_continuation.hpp:105 [ 27.1% ]
                   "octotiger"!void hpx::lcos::detail::invoke_continuation<node_server::compute_fmm(gsolve_type, bool)::{lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, hpx::lcos::future<node_server::neighbor_gravity_type>, hpx::lcos::detail::continuation<hpx::lcos::future<node_server::neighbor_gravity_type>, {lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, void> >(node_server::compute_fmm(gsolve_type, bool)::{lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}&, hpx::lcos::future<node_server::neighbor_gravity_type>&, hpx::lcos::detail::continuation<hpx::lcos::future<node_server::neighbor_gravity_type>, {lambda(hpx::lcos::future<node_server::neighbor_gravity_type>)#2}, void>&, std::integral_constant<bool, true>) [clone .isra.564] [clone .constprop.1360]+0x125 (0xa237c5), node_server.cpp:444 [ 27.1% ]
                      "octotiger"!grid::compute_boundary_interactions_monopole_monopole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)+0x49c (0x9e64dc), wait_all.hpp:329 [ 27.1% ]
                         "octotiger"!void hpx::lcos::wait_all<hpx::lcos::future<void> >(std::vector<hpx::lcos::future<void>, std::allocator<hpx::lcos::future<void> > > const&)+0x2bf (0x88828f), wait_all.hpp:306 [ 39.4% ]
                            "octotiger"!hpx::lcos::detail::future_data<void>::wait(hpx::error_code&)+0xb4 (0x85b074), future_data.hpp:567 [ 39.8% ]
                               "libhpx.so.1.0.0"!hpx::lcos::local::detail::condition_variable::wait(std::unique_lock<hpx::lcos::local::spinlock>&, char const*, hpx::error_code&)+0xbf (0x7faa7fa0a8ef), thread_helpers.hpp:499 [ 43.4% ]
                                  "libhpx.so.1.0.0"!hpx::this_thread::suspend(hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> const&, hpx::util::thread_description const&, hpx::error_code&)+0xf8 (0x7faa7f577fe8), thread_helpers.cpp:472 [ 61.9% ]
                                     "libhpx.so.1.0.0"!hpx::threads::coroutines::detail::coroutine_self::yield(std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> >)+0xbc (0x7faa7f4f7f6c), context_linux_x86.hpp:374 [ 61.9% ]
                                        "libhpx.so.1.0.0"!void hpx::threads::detail::scheduling_loop<hpx::threads::policies::local_priority_queue_scheduler<boost::mutex, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_lifo> >(unsigned long, hpx::threads::policies::local_priority_queue_scheduler<boost::mutex, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_fifo, hpx::threads::policies::lockfree_lifo>&, hpx::threads::detail::scheduling_counters&, hpx::threads::detail::scheduling_callbacks&)+0x21c (0x7faa7f508b3c), scheduling_loop.hpp:329 [ 96.7% ]
                                           "libhpx.so.1.0.0"!hpx::threads::thread_data::operator()()+0xcd (0x7faa7f50331d), context_linux_x86.hpp:374 [ 96.7% ]
                                              "libhpx.so.1.0.0"!void hpx::threads::coroutines::detail::lx::trampoline<hpx::threads::coroutines::detail::coroutine_impl>(hpx::threads::coroutines::detail::coroutine_impl*)+0x9 (0x7faa7f466e09), context_linux_x86.hpp:88 [ 96.7% ]
                                                 "libhpx.so.1.0.0"!hpx::threads::coroutines::detail::coroutine_impl::operator()()+0x12b (0x7faa7f550a9b), basic_function.hpp:196 [ 96.7% ]
                                                    "libhpx.so.1.0.0"!std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > hpx::util::detail::callable_vtable<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (hpx::threads::thread_state_ex_enum)>::_invoke<hpx::util::detail::bound<hpx::util::detail::one_shot_wrapper<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (*)(hpx::util::unique_function<void (), false>)> (hpx::util::unique_function<void (), false>&&)> >(void**, hpx::threads::thread_state_ex_enum&&)+0x46 (0x7faa7f4efdf6), invoke.hpp:36 [ 96.7% ]
                                                       "libhpx.so.1.0.0"!hpx::applier::thread_function_nullary(hpx::util::unique_function<void (), false>)+0xe (0x7faa7f5795be), basic_function.hpp:196 [ 96.7% ]
                                                          "octotiger"!void hpx::util::detail::callable_vtable<void ()>::_invoke<hpx::util::detail::deferred<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (*(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >&&))(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >)> >(void**)+0x22 (0x84a452), invoke.hpp:36 [ 96.7% ]
                                                             "octotiger"!hpx::lcos::detail::task_base<void>::run_impl(boost::intrusive_ptr<hpx::lcos::detail::task_base<void> >)+0xd (0x84a3dd), future_data.hpp:782 [ 96.7% ]
                                                                "octotiger"!hpx::lcos::local::detail::task_object<void, hpx::util::detail::deferred<hpx::parallel::util::detail::partitioner_iteration<void, hpx::parallel::v2::detail::part_iterations<grid::compute_boundary_interactions_multipole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}&, int, hpx::util::tuple<> > >& (grid::compute_boundary_interactions_multipole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}&<unsigned long, unsigned long, unsigned long> const&)>, hpx::lcos::detail::task_base<void> >::do_run()+0x3e (0x9e3d4e), invoke.hpp:36
"octotiger"!grid::compute_boundary_interactions_multipole_multipole(gsolve_type, std::vector<boundary_interaction_type, std::allocator<boundary_interaction_type> > const&, gravity_boundary_type const&)::{lambda(unsigned long)#1}::operator()(unsigned long) const+0x8da (0x9ddf5a) [W], grid_fmm.cpp:516 0.0%
Thread Id % of misses
Thread Total 0.0%
23408 0.0%
23409 0.0%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.0%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.0%
23425 0.0%
23426 0.0%
23427 0.0%
23428 0.0%
23429 0.0%
23430 0.0%
23431 0.0%
0.0%
Thread Id % of fetches
Thread Total 0.0%
23408 0.0%
23409 0.0%
23410 0.0%
23411 0.0%
23412 0.0%
23413 0.0%
23414 0.0%
23415 0.0%
23416 0.0%
23417 0.0%
23418 0.0%
23419 0.0%
23420 0.0%
23421 0.0%
23422 0.0%
23423 0.0%
23424 0.0%
23425 0.0%
23426 0.0%
23427 0.0%
23428 0.0%
23429 0.0%
23430 0.0%
23431 0.0%
0.0%
Thread Id Total Fetch ratio Uncategorized Replacement Coherence Flush
Thread Average 0.0% 0.0% 0.0% 0.0% 0.0%
23408 0.0% 0.0% 0.0% 0.0% 0.0%
23409 0.0% 0.0% 0.0% 0.0% 0.0%
23410 0.0% 0.0% 0.0% 0.0% 0.0%
23411 0.0% 0.0% 0.0% 0.0% 0.0%
23412 0.0% 0.0% 0.0% 0.0% 0.0%
23413 0.0% 0.0% 0.0% 0.0% 0.0%
23414 0.0% 0.0% 0.0% 0.0% 0.0%
23415 0.0% 0.0% 0.0% 0.0% 0.0%
23416 0.0% 0.0% 0.0% 0.0% 0.0%
23417 0.0% 0.0% 0.0% 0.0% 0.0%
23418 0.0% 0.0% 0.0% 0.0% 0.0%
23419 0.0% 0.0% 0.0% 0.0% 0.0%
23420 0.0% 0.0% 0.0% 0.0% 0.0%
23421 0.0% 0.0% 0.0% 0.0% 0.0%
23422 0.0% 0.0% 0.0% 0.0% 0.0%
23423 0.0% 0.0% 0.0% 0.0% 0.0%
23424 0.0% 0.0% 0.0% 0.0% 0.0%
23425 0.0% 0.0% 0.0% 0.0% 0.0%
23426 0.0% 0.0% 0.0% 0.0% 0.0%
23427 0.0% 0.0% 0.0% 0.0% 0.0%
23428 0.0% 0.0% 0.0% 0.0% 0.0%
23429 0.0% 0.0% 0.0% 0.0% 0.0%
23430 0.0% 0.0% 0.0% 0.0% 0.0%
23431 0.0% 0.0% 0.0% 0.0% 0.0%
89.2%
Thread Id Fetch utilization
Thread Average 89.2%
23408 100.0%
23409 100.0%
23410 100.0%
23411 100.0%
23412 100.0%
23413 100.0%
23414 100.0%
23415 100.0%
23416 100.0%
23417 100.0%
23418 100.0%
23419 100.0%
23420 8.8%
23421 100.0%
23422 100.0%
23423 100.0%
23424 25.2%
23425 100.0%
23426 45.6%
23427 40.4%
23428 1.1%
23429 42.1%
23430 100.0%
23431 28.5%
91.6%
Thread Id Write-back utilization
Thread Average 91.6%
23408 100.0%
23409 49.9%
23410 100.0%
23411 100.0%
23412 100.0%
23413 100.0%
23414 100.0%
23415 100.0%
23416 100.0%
23417 100.0%
23418 100.0%
23419 100.0%
23420 36.1%
23421 100.0%
23422 100.0%
23423 100.0%
23424 62.0%
23425 100.0%
23426 71.5%
23427 65.7%
23428 34.2%
23429 26.6%
23430 100.0%
23431 38.1%

Copyright (c) 2006-2012 Rogue Wave Software, Inc. All Rights Reserved.
Patents pending.