Created
January 15, 2018 15:32
-
-
Save aclamk/9d8900b82181cb14f47b1fca03fd88ed to your computer and use it in GitHub Desktop.
Sample wallclock from 4K write
This file has been truncated, but you can view the full file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Thread: 21319 (ceph-osd) - 19934 samples, time suspended=1385ms | |
+ 100.00% _start | |
+ 100.00% __libc_start_main | |
+ 100.00% main | |
+ 100.00% AsyncMessenger::wait() | |
+ 100.00% pthread_cond_wait | |
Thread: 21320 (log) - 19934 samples, time suspended=1362ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% ceph::logging::Log::entry() | |
+ 100.00% pthread_cond_wait | |
Thread: 21321 (msgr-worker-0) - 19934 samples, time suspended=1735ms | |
+ 0.01% #### | |
| + 0.01% std::_Rb_tree_iterator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > > std::_Rb_tree<std::pair<unsigned long, unsigned long>, std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> >, std::_Select1st<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >, std::less<std::pair<unsigned long, unsigned long> >, std::allocator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::pair<unsigned long, unsigned long> const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >, std::piecewise_construct_t const&, std::tuple<std::pair<unsigned long, unsigned long> const&>&&, std::tuple<>&&) | |
| + 0.01% HeapLeakCheckerGlobalPrePost::~HeapLeakCheckerGlobalPrePost() | |
+ 0.01% #### | |
| + 0.01% tc_realloc | |
+ 0.01% hobject_t::~hobject_t() | |
+ 0.01% virtual thunk to boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::bad_get> >::clone() const | |
+ 0.01% OSD::ms_get_authorizer(int, AuthAuthorizer**, bool) | |
+ 0.01% OSD::handle_pg_query(boost::intrusive_ptr<OpRequest>) | |
+ 0.01% OSD::ms_can_fast_dispatch_any() const | |
+ 0.01% MOSDOpReply::~MOSDOpReply() | |
+ 0.01% PG::_scrub_finish() | |
+ 0.03% MOSDOp::get_spg() const | |
+ 0.02% std::_Rb_tree<unsigned long, std::pair<unsigned long const, Objecter::StatfsOp*>, std::_Select1st<std::pair<unsigned long const, Objecter::StatfsOp*> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, Objecter::StatfsOp*> > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator<std::pair<unsigned long const, Objecter::StatfsOp*> >, unsigned long const&) | |
+ 0.01% ceph::buffer::error_code::error_code(int) | |
+ 0.02% ceph::buffer::ptr::swap(ceph::buffer::ptr&) | |
+ 0.01% ceph::buffer::ptr::raw_c_str() const | |
+ 0.01% ceph::buffer::ptr::append(char) | |
+ 0.01% ceph::buffer::raw_mmap_pages::operator delete(void*) | |
+ 0.01% ceph::buffer::ptr::ptr(char const*, unsigned int) | |
+ 0.01% ceph::buffer::list::iterator::copy_deep(unsigned int, ceph::buffer::ptr&) | |
+ 0.01% ceph::buffer::list::read_file(char const*, std::string*) | |
+ 0.02% ceph::buffer::list::crc32c(unsigned int) const | |
+ 0.01% ceph::buffer::list::iterator_impl<false>::end() const | |
+ 0.02% ceph::buffer::list::iterator_impl<false>::advance(int) | |
+ 0.02% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, ceph::buffer::ptr&) | |
+ 0.01% Mutex::Lock(bool) | |
+ 0.01% ceph_ioprio_string_to_class(std::string const&) | |
+ 0.01% Message::dump(ceph::Formatter*) const | |
+ 0.01% ExplicitObjectHitSet::decode(ceph::buffer::list::iterator&) | |
+ 0.01% intrusive_ptr_release(RefCountedObject const*) | |
+ 0.03% PosixConnectedSocketImpl::is_connected() | |
+ 0.02% PosixNetworkStack::~PosixNetworkStack() | |
+ 0.01% OpRequest::set_force_rwordered() | |
+ 0.02% ceph_arch_intel_probe | |
+ 0.20% crc32_iscsi_00 | |
+ 0.01% EpollDriver::resize_events(int) | |
+ 0.01% EpollDriver::init(EventCenter*, int) | |
+ 0.01% ceph_crc32c_sctp | |
+ 0.01% DispatchQueue::post_dispatch(Message*, unsigned long) | |
+ 0.01% AsyncConnection::prepare_send_message(unsigned long, Message*, ceph::buffer::list&) | |
+ 0.01% std::map<int, std::list<std::pair<ceph::buffer::list, Message*>, std::allocator<std::pair<ceph::buffer::list, Message*> > >, std::less<int>, std::allocator<std::pair<int const, std::list<std::pair<ceph::buffer::list, Message*>, std::allocator<std::pair<ceph::buffer::list, Message*> > > > > >::operator[](int&&) | |
+ 0.02% DispatchQueue::queue_refused(Connection*) | |
+ 0.02% AuthNoneSessionHandler::sign_message(Message*) | |
+ 0.01% #### | |
| + 0.01% AsyncConnection::send_keepalive() | |
+ 0.01% #### | |
| + 0.01% ceph::buffer::ptr::clone() | |
+ 0.01% #### | |
| + 0.01% AuthNoneSessionHandler::no_security() | |
+ 0.01% #### | |
| + 0.01% Message::encode_trace(ceph::buffer::list&, unsigned long) const | |
+ 0.01% #### | |
| + 0.01% std::__detail::_List_node_base::swap(std::__detail::_List_node_base&, std::__detail::_List_node_base&) | |
+ 0.01% #### | |
| + 0.01% boost::re_detail_106300::perl_matcher<char const*, std::allocator<boost::sub_match<char const*> >, boost::regex_traits<char, boost::cpp_regex_traits<char> > >::match_word_boundary() | |
+ 0.01% #### | |
| + 0.01% PerfCounters::tinc(int, utime_t, unsigned int) | |
+ 0.01% #### | |
| + 0.01% ceph::buffer::list::iterator::operator++() | |
+ 0.01% #### | |
| + 0.01% MOSDPGQuery::encode_payload(unsigned long) | |
+ 0.01% #### | |
| + 0.01% ceph::buffer::list::iterator_impl<false>::get_bl() const | |
+ 0.01% #### | |
| + 0.01% ceph::buffer::list::iterator_impl<false>::get_bl() const | |
+ 0.01% #### | |
| + 0.01% ceph::buffer::ptr::ptr(ceph::buffer::ptr&&) | |
+ 0.01% #### | |
| + 0.01% MOSDPGQuery::encode_payload(unsigned long) | |
+ 0.01% #### | |
| + 0.01% ceph::buffer::list::iterator::operator++() | |
+ 0.01% #### | |
| + 0.01% Message::encode_trace(ceph::buffer::list&, unsigned long) const | |
+ 0.01% #### | |
| + 0.01% ceph::buffer::raw::is_page_aligned() | |
+ 0.01% #### | |
| + 0.01% std::__detail::_List_node_base::swap(std::__detail::_List_node_base&, std::__detail::_List_node_base&) | |
+ 0.01% #### | |
| + 0.01% pthread_mutexattr_getkind_np | |
+ 0.01% #### | |
| + 0.01% HeapLeakCheckerGlobalPrePost::~HeapLeakCheckerGlobalPrePost() | |
+ 0.01% #### | |
| + 0.01% #### | |
| + 0.01% _L_unlock_713 | |
+ 97.97% clone | |
| + 97.97% start_thread | |
| + 97.97% execute_native_thread_routine_compat | |
| + 97.97% NetworkStack::add_thread(unsigned int)::{lambda()#1}::operator()() const | |
| + 0.01% PerfCounters::tinc(int, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> >, unsigned int) | |
| + 97.93% EventCenter::process_events(int, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> >*) | |
| + 0.24% C_handle_notify::do_request(int) | |
| | + 0.24% __read_nocancel | |
| + 0.01% std::_Deque_base<EventCallback*, std::allocator<EventCallback*> >::~_Deque_base() | |
| | + 0.01% operator delete(void*) | |
| | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| + 87.41% EpollDriver::event_wait(std::vector<FiredFileEvent, std::allocator<FiredFileEvent> >&, timeval*) | |
| | + 0.01% _init | |
| | + 0.05% std::vector<FiredFileEvent, std::allocator<FiredFileEvent> >::_M_default_append(unsigned long) | |
| | | + 0.05% tc_new | |
| | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | + 0.01% SpinLock::SlowLock() | |
| | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | + 0.01% epoll_wait | |
| | + 87.33% __epoll_wait_nocancel | |
| + 4.23% AsyncConnection::handle_write() | |
| | + 0.01% _init | |
| | + 0.01% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | + 0.03% ceph::buffer::list::swap(ceph::buffer::list&) | |
| | | + 0.01% ceph::buffer::list::iterator_impl<false>::advance(int) | |
| | | + 0.01% std::__detail::_List_node_base::swap(std::__detail::_List_node_base&, std::__detail::_List_node_base&) | |
| | + 0.55% AsyncConnection::prepare_send_message(unsigned long, Message*, ceph::buffer::list&) | |
| | | + 0.02% ceph::buffer::list::append(ceph::buffer::list const&) | |
| | | | + 0.01% tc_new | |
| | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | + 0.01% SpinLock::SlowLock() | |
| | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | + 0.51% Message::encode(unsigned long, int) | |
| | | + 0.37% MOSDOpReply::encode_payload(unsigned long) | |
| | | | + 0.04% OSDOp::merge_osd_op_vector_out_data(std::vector<OSDOp, std::allocator<OSDOp> >&, ceph::buffer::list&) | |
| | | | + 0.27% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | + 0.01% ceph::buffer::ptr::ptr(ceph::buffer::raw*) | |
| | | | | + 0.02% ceph::buffer::ptr::unused_tail_length() const | |
| | | | | + 0.11% ceph::buffer::ptr::append(char const*, unsigned int) | |
| | | | | | + 0.01% ceph::buffer::ptr::unused_tail_length() const | |
| | | | | | + 0.05% __memcpy_ssse3 | |
| | | | | + 0.04% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | + 0.02% tc_new | |
| | | | | + 0.01% mempool::pool_t::adjust_count(long, long) | |
| | | | | + 0.04% posix_memalign | |
| | | | | + 0.04% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | + 0.02% tcmalloc::AlignmentForSize(unsigned long) | |
| | | | + 0.03% Message::encode_trace(ceph::buffer::list&, unsigned long) const | |
| | | | + 0.03% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | + 0.01% ceph::buffer::ptr::append(char const*, unsigned int) | |
| | | | + 0.01% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | + 0.08% ceph::buffer::list::crc32c(unsigned int) const | |
| | | | + 0.01% ceph::buffer::ptr::c_str() const | |
| | | | + 0.01% std::_Rb_tree_iterator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > > std::_Rb_tree<std::pair<unsigned long, unsigned long>, std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> >, std::_Select1st<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >, std::less<std::pair<unsigned long, unsigned long> >, std::allocator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::pair<unsigned long, unsigned long> const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >, std::piecewise_construct_t const&, std::tuple<std::pair<unsigned long, unsigned long> const&>&&, std::tuple<>&&) | |
| | | | | + 0.01% std::_Rb_tree<std::pair<unsigned long, unsigned long>, std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> >, std::_Select1st<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >, std::less<std::pair<unsigned long, unsigned long> >, std::allocator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >, std::pair<unsigned long, unsigned long> const&) | |
| | | | + 0.01% ceph_crc32c_intel_fast | |
| | | | + 0.04% ceph_crc32c_intel_baseline | |
| | | + 0.01% ceph_crc32c_intel_fast | |
| | | + 0.02% ceph_crc32c_intel_baseline | |
| | + 3.22% AsyncConnection::write_message(Message*, ceph::buffer::list&, bool) | |
| | | + 0.02% ceph::logging::SubsystemMap::should_gather(unsigned int, int) | |
| | | + 0.87% RefCountedObject::put() const | |
| | | | + 0.87% MOSDOpReply::~MOSDOpReply() | |
| | | | + 0.16% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | + 0.13% ceph::buffer::ptr::release() | |
| | | | | | + 0.01% ceph::buffer::raw_posix_aligned::operator delete(void*) | |
| | | | | | + 0.07% ceph::buffer::raw_posix_aligned::~raw_posix_aligned() | |
| | | | | | | + 0.03% std::_Rb_tree<std::pair<unsigned long, unsigned long>, std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> >, std::_Select1st<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >, std::less<std::pair<unsigned long, unsigned long> >, std::allocator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > > >::_M_erase(std::_Rb_tree_node<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >*) | |
| | | | | | | + 0.03% mempool::pool_t::adjust_count(long, long) | |
| | | | | | | + 0.02% tc_free | |
| | | | | | + 0.02% operator delete[](void*) | |
| | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | + 0.01% operator delete(void*) | |
| | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | + 0.54% Message::~Message() | |
| | | | | + 0.50% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | + 0.49% ceph::buffer::ptr::release() | |
| | | | | | | + 0.02% ceph::buffer::raw_combined::~raw_combined() | |
| | | | | | | | + 0.02% std::_Rb_tree<std::pair<unsigned long, unsigned long>, std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> >, std::_Select1st<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >, std::less<std::pair<unsigned long, unsigned long> >, std::allocator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > > >::_M_erase(std::_Rb_tree_node<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >*) | |
| | | | | | | | + 0.02% operator delete(void*) | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | + 0.46% tc_free | |
| | | | | | | + 0.46% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.46% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.20% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | + 0.13% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | + 0.13% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | + 0.06% SpinLock::SlowLock() | |
| | | | | | | + 0.06% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.01% operator delete(void*) | |
| | | | | + 0.03% RefCountedObject::put() const | |
| | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | + 0.01% std::string::_Rep::_M_dispose(std::allocator<char> const&) | |
| | | | + 0.16% operator delete(void*) | |
| | | | + 0.01% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | + 0.12% tcmalloc::ThreadCache::Scavenge() | |
| | | | + 0.12% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | + 0.05% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | + 0.03% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | + 0.01% _init | |
| | | | | + 0.02% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | + 0.01% madvise | |
| | | | + 0.02% SpinLock::SlowLock() | |
| | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | + 0.01% ceph::buffer::list::claim_append(ceph::buffer::list&, unsigned int) | |
| | | | + 0.01% _init | |
| | | | + 0.01% std::__detail::_List_node_base::_M_transfer(std::__detail::_List_node_base*, std::__detail::_List_node_base*) | |
| | | + 0.08% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | + 0.02% ceph::buffer::ptr::append(char const*, unsigned int) | |
| | | | | + 0.01% ceph::buffer::ptr::unused_tail_length() const | |
| | | | | + 0.01% __memcpy_ssse3 | |
| | | | + 0.06% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | + 0.05% ceph::buffer::ptr::ptr(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | + 0.01% tc_new | |
| | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | + 0.01% SpinLock::SlowLock() | |
| | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | + 0.11% ceph::buffer::list::append(char) | |
| | | | + 0.01% ceph::buffer::ptr::append(char) | |
| | | | | + 0.01% ceph::buffer::ptr::unused_tail_length() const | |
| | | | + 0.03% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | + 0.02% ceph::buffer::ptr::ptr(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | + 0.01% tc_new | |
| | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | + 0.06% mempool::pool_t::adjust_count(long, long) | |
| | | | + 0.02% posix_memalign | |
| | | | + 0.02% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | + 2.13% AsyncConnection::_try_send(bool) | |
| | | | + 0.03% EventCenter::delete_file_event(int, int) | |
| | | | | + 0.03% EpollDriver::del_event(int, int, int) | |
| | | | | + 0.03% epoll_ctl | |
| | | | + 0.07% EventCenter::create_file_event(int, int, EventCallback*) | |
| | | | | + 0.07% EpollDriver::add_event(int, int, int) | |
| | | | | + 0.07% epoll_ctl | |
| | | | + 2.00% PosixConnectedSocketImpl::send(ceph::buffer::list&, bool) | |
| | | | + 0.01% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | + 0.01% operator delete(void*) | |
| | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | + 0.02% ceph::buffer::ptr::operator=(ceph::buffer::ptr&&) | |
| | | | | + 0.02% ceph::buffer::ptr::release() | |
| | | | | + 0.01% ceph::buffer::raw_combined::~raw_combined() | |
| | | | | | + 0.01% mempool::pool_t::adjust_count(long, long) | |
| | | | | | + 0.01% pthread_self | |
| | | | | + 0.01% tc_free | |
| | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | + 1.97% __sendmsg_nocancel | |
| | | + 0.01% AuthNoneSessionHandler::sign_message(Message*) | |
| | + 0.01% std::_Rb_tree<int, std::pair<int const, std::list<std::pair<ceph::buffer::list, Message*>, std::allocator<std::pair<ceph::buffer::list, Message*> > > >, std::_Select1st<std::pair<int const, std::list<std::pair<ceph::buffer::list, Message*>, std::allocator<std::pair<ceph::buffer::list, Message*> > > > >, std::less<int>, std::allocator<std::pair<int const, std::list<std::pair<ceph::buffer::list, Message*>, std::allocator<std::pair<ceph::buffer::list, Message*> > > > > >::erase(int const&) | |
| | | + 0.01% std::_Rb_tree<int, std::pair<int const, std::list<std::pair<ceph::buffer::list, Message*>, std::allocator<std::pair<ceph::buffer::list, Message*> > > >, std::_Select1st<std::pair<int const, std::list<std::pair<ceph::buffer::list, Message*>, std::allocator<std::pair<ceph::buffer::list, Message*> > > > >, std::less<int>, std::allocator<std::pair<int const, std::list<std::pair<ceph::buffer::list, Message*>, std::allocator<std::pair<ceph::buffer::list, Message*> > > > > >::_M_erase(std::_Rb_tree_node<std::pair<int const, std::list<std::pair<ceph::buffer::list, Message*>, std::allocator<std::pair<ceph::buffer::list, Message*> > > > >*) | |
| | | + 0.01% std::_List_base<std::pair<ceph::buffer::list, Message*>, std::allocator<std::pair<ceph::buffer::list, Message*> > >::_M_clear() | |
| | + 0.02% __clock_gettime | |
| | | + 0.01% #### | |
| | | + 0.01% #### | |
| | | + 0.01% #### | |
| | + 0.02% std::__detail::_List_node_base::_M_unhook() | |
| | + 0.02% std::local_Rb_tree_decrement(std::_Rb_tree_node_base*) | |
| | + 0.18% pthread_mutex_lock | |
| | | + 0.14% _L_lock_812 | |
| | | + 0.14% __lll_lock_wait | |
| | + 0.07% __pthread_mutex_unlock | |
| | | + 0.02% _L_unlock_713 | |
| | | + 0.02% __lll_unlock_wake | |
| | + 0.06% operator delete(void*) | |
| | + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | + 0.01% SpinLock::SlowLock() | |
| | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| + 5.87% AsyncConnection::process() | |
| | + 0.01% ceph::logging::SubsystemMap::should_gather(unsigned int, int) | |
| | + 0.01% OSD::ms_fast_preprocess(Message*) | |
| | + 0.02% OSD::ms_can_fast_dispatch(Message const*) const | |
| | + 0.02% RefCountedObject::put() const | |
| | + 0.25% ceph::buffer::list::clear() | |
| | | + 0.20% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | + 0.03% ceph::buffer::ptr::release() | |
| | | | + 0.12% operator delete(void*) | |
| | | | + 0.10% tcmalloc::ThreadCache::Scavenge() | |
| | | | + 0.10% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | + 0.07% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | + 0.03% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | + 0.03% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | + 0.04% SpinLock::SlowLock() | |
| | | | + 0.04% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | + 0.01% ceph::buffer::ptr::operator=(ceph::buffer::ptr&&) | |
| | | | + 0.01% ceph::buffer::ptr::release() | |
| | | + 0.01% ceph::buffer::list::iterator_impl<false>::advance(int) | |
| | | + 0.02% ceph::buffer::list::iterator_impl<false>::iterator_impl(ceph::buffer::list*, unsigned int) | |
| | + 0.01% ceph::buffer::ptr::release() | |
| | + 0.01% ceph::buffer::list::iterator::get_current_ptr() | |
| | | + 0.01% ceph::buffer::ptr::ptr(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | + 0.07% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | + 0.07% tc_new | |
| | | + 0.07% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | + 0.07% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | + 0.03% SpinLock::SlowLock() | |
| | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | + 0.43% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | + 0.04% ceph::buffer::raw_posix_aligned::operator new(unsigned long) | |
| | | + 0.10% mempool::pool_t::adjust_count(long, long) | |
| | | + 0.01% mempool::get_pool(mempool::pool_index_t) | |
| | | + 0.07% operator new[](unsigned long) | |
| | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | + 0.01% SpinLock::SlowLock() | |
| | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | + 0.21% posix_memalign | |
| | | + 0.18% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | + 0.02% tcmalloc::AlignmentForSize(unsigned long) | |
| | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | + 0.04% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | + 0.01% ceph::buffer::create_page_aligned(unsigned int) | |
| | + 0.01% ceph::buffer::list::iterator_impl<false>::advance(int) | |
| | + 0.01% ceph::buffer::list::iterator_impl<false>::iterator_impl(ceph::buffer::list*, unsigned int) | |
| | + 0.03% PerfCounters::inc(int, unsigned long) | |
| | + 0.03% PerfCounters::tinc(int, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> >, unsigned int) | |
| | + 0.05% ceph_clock_now() | |
| | | + 0.04% __clock_gettime | |
| | | + 0.01% #### | |
| | | + 0.01% #### | |
| | | + 0.01% #### | |
| | + 0.18% Throttle::get_or_fail(long) | |
| | | + 0.06% PerfCounters::inc(int, unsigned long) | |
| | | + 0.06% PerfCounters::set(int, unsigned long) | |
| | | + 0.02% pthread_mutex_lock | |
| | | + 0.01% __pthread_mutex_unlock | |
| | + 0.92% decode_message(CephContext*, int, ceph_msg_header&, ceph_msg_footer&, ceph::buffer::list&, ceph::buffer::list&, ceph::buffer::list&, Connection*) | |
| | | + 0.01% RefCountedObject::put() const | |
| | | + 0.02% ceph::buffer::list::clear() | |
| | | | + 0.01% ceph::buffer::ptr::release() | |
| | | + 0.14% MOSDOp::decode_payload() | |
| | | | + 0.08% spg_t::decode(ceph::buffer::list::iterator&) | |
| | | | | + 0.07% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, char*) | |
| | | | | + 0.04% ceph::buffer::ptr::copy_out(unsigned int, unsigned int, char*) const | |
| | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::advance(int) | |
| | | | + 0.03% std::enable_if<denc_traits<osd_reqid_t, void>::supported&&denc_traits<osd_reqid_t, void>::need_contiguous, void>::type decode<osd_reqid_t, denc_traits<osd_reqid_t, void> >(osd_reqid_t&, ceph::buffer::list::iterator&) | |
| | | | | + 0.01% ceph::buffer::ptr::c_str() const | |
| | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::advance(int) | |
| | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::copy_shallow(unsigned int, ceph::buffer::ptr&) | |
| | | | | + 0.01% ceph::buffer::ptr::operator=(ceph::buffer::ptr&&) | |
| | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::advance(int) | |
| | | | + 0.02% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, char*) | |
| | | | | + 0.01% ceph::buffer::ptr::copy_out(unsigned int, unsigned int, char*) const | |
| | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::advance(int) | |
| | | | + 0.02% Message::decode_trace(ceph::buffer::list::iterator&, bool) | |
| | | | | + 0.02% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, char*) | |
| | | | | + 0.02% ceph::buffer::ptr::copy_out(unsigned int, unsigned int, char*) const | |
| | | | + 0.01% reverse_bits | |
| | | + 0.02% ceph::buffer::ptr::ptr(ceph::buffer::ptr const&) | |
| | | + 0.05% ceph::buffer::list::claim(ceph::buffer::list&, unsigned int) | |
| | | | + 0.01% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | + 0.02% ceph::buffer::list::claim_append(ceph::buffer::list&, unsigned int) | |
| | | | + 0.01% _init | |
| | | | + 0.01% std::__detail::_List_node_base::_M_transfer(std::__detail::_List_node_base*, std::__detail::_List_node_base*) | |
| | | + 0.26% ceph::buffer::list::crc32c(unsigned int) const | |
| | | | + 0.19% std::_Rb_tree_iterator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > > std::_Rb_tree<std::pair<unsigned long, unsigned long>, std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> >, std::_Select1st<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >, std::less<std::pair<unsigned long, unsigned long> >, std::allocator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::pair<unsigned long, unsigned long> const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >, std::piecewise_construct_t const&, std::tuple<std::pair<unsigned long, unsigned long> const&>&&, std::tuple<>&&) | |
| | | | | + 0.01% _init | |
| | | | | + 0.01% std::_Rb_tree_insert_and_rebalance(bool, std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node_base&) | |
| | | | | + 0.16% tc_new | |
| | | | | + 0.14% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | + 0.14% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | + 0.09% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 0.05% SpinLock::SlowLock() | |
| | | | | | + 0.05% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | + 0.01% ceph_crc32c_intel_fast | |
| | | | + 0.04% ceph_crc32c_intel_baseline | |
| | | + 0.11% MOSDOp::MOSDOp() | |
| | | | + 0.03% hobject_t::hobject_t() | |
| | | | + 0.08% Message::Message(int, int, int) | |
| | | | + 0.02% ceph::buffer::list::iterator_impl<false>::iterator_impl(ceph::buffer::list*, unsigned int) | |
| | | + 0.08% RefCountedObject::get() const | |
| | | + 0.20% tc_new | |
| | | + 0.14% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | + 0.14% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | + 0.06% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | + 0.01% tcmalloc::CentralFreeList::Populate() | |
| | | | + 0.01% SpinLock::SlowLock() | |
| | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | + 0.07% SpinLock::SlowLock() | |
| | | + 0.07% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | + 0.02% RefCountedObject::get() const | |
| | + 0.01% ceph_crc32c_intel_fast | |
| | + 0.03% ceph_crc32c_intel_baseline | |
| | + 1.39% DispatchQueue::fast_dispatch(Message*) | |
| | | + 0.01% OSD::heartbeat_dispatch(Message*) | |
| | | | + 0.01% OSD::handle_osd_ping(MOSDPing*) | |
| | | | + 0.01% OSDService::get_con_osd_cluster(int, unsigned int) | |
| | | | + 0.01% OSDService::release_map(std::shared_ptr<OSDMap const>) | |
| | | | + 0.01% operator delete(void*) | |
| | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | + 0.01% SpinLock::SlowLock() | |
| | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | + 1.39% OSD::ms_fast_dispatch(Message*) | |
| | | + 0.62% OSD::enqueue_op(spg_t, boost::intrusive_ptr<OpRequest>&, unsigned int) | |
| | | | + 0.01% ceph::logging::SubsystemMap::should_gather(unsigned int, int) | |
| | | | + 0.51% OSD::ShardedOpWQ::_enqueue(std::pair<spg_t, PGQueueable>) | |
| | | | | + 0.01% TrackedOp::put() | |
| | | | | + 0.02% PGQueueable::PGQueueable(PGQueueable const&) | |
| | | | | + 0.23% WeightedPriorityQueue<std::pair<spg_t, PGQueueable>, unsigned long>::Queue::insert(unsigned int, unsigned long, unsigned int, std::pair<spg_t, PGQueueable>&, bool) | |
| | | | | | + 0.03% PGQueueable::PGQueueable(PGQueueable const&) | |
| | | | | | + 0.17% tc_new | |
| | | | | | + 0.09% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.09% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.07% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.11% Mutex::Lock(bool) | |
| | | | | | + 0.08% pthread_mutex_lock | |
| | | | | | + 0.06% _L_lock_812 | |
| | | | | | + 0.06% __lll_lock_wait | |
| | | | | + 0.09% Mutex::Unlock() | |
| | | | | + 0.09% __pthread_mutex_unlock | |
| | | | | + 0.09% _L_unlock_713 | |
| | | | | + 0.09% __lll_unlock_wake | |
| | | | + 0.01% PGQueueable::PGQueueable(PGQueueable const&) | |
| | | | + 0.02% PerfCounters::tinc(int, utime_t, unsigned int) | |
| | | | + 0.03% ceph_clock_now() | |
| | | | | + 0.02% __clock_gettime | |
| | | | | + 0.01% #### | |
| | | | | + 0.01% #### | |
| | | | + 0.04% OpRequest::mark_flag_point(unsigned char, char const*) | |
| | | | + 0.02% TrackedOp::mark_event(char const*, utime_t) | |
| | | | | + 0.01% Mutex::Lock(bool) | |
| | | | | + 0.02% Mutex::Unlock() | |
| | | | | + 0.02% __pthread_mutex_unlock | |
| | | | + 0.01% ceph_clock_now() | |
| | | | + 0.01% __clock_gettime | |
| | | | + 0.01% #### | |
| | | | + 0.01% #### | |
| | | + 0.11% OpTracker::register_inflight_op(TrackedOp*) | |
| | | | + 0.02% Mutex::Lock(bool) | |
| | | | + 0.02% Mutex::Unlock() | |
| | | | | + 0.02% __pthread_mutex_unlock | |
| | | | + 0.03% __pthread_rwlock_rdlock | |
| | | + 0.57% OpRequest::OpRequest(Message*, OpTracker*) | |
| | | | + 0.01% _init | |
| | | | + 0.09% Mutex::Mutex(std::string const&, bool, bool, bool, CephContext*) | |
| | | | | + 0.02% _init | |
| | | | | + 0.04% std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) | |
| | | | | + 0.01% pthread_mutex_init | |
| | | | | + 0.02% pthread_mutexattr_init | |
| | | | + 0.02% std::string::_Rep::_M_dispose(std::allocator<char> const&) | |
| | | | + 0.27% std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) | |
| | | | | + 0.24% char* std::string::_S_construct<char const*>(char const*, char const*, std::allocator<char> const&, std::forward_iterator_tag) | |
| | | | | | + 0.01% _init | |
| | | | | | + 0.01% __memcpy_ssse3 | |
| | | | | | + 0.23% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | + 0.23% tc_new | |
| | | | | | + 0.18% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.18% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.10% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.01% _init | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.07% SpinLock::SlowLock() | |
| | | | | | | + 0.07% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | + 0.02% __strlen_sse42 | |
| | | | | + 0.01% _init | |
| | | | + 0.07% tc_new | |
| | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | + 0.01% _init | |
| | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | + 0.04% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | + 0.06% tc_new | |
| | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | + 0.01% SpinLock::SlowLock() | |
| | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | + 2.19% AsyncConnection::read_until(unsigned int, char*) | |
| | | + 0.01% ceph::logging::SubsystemMap::should_gather(unsigned int, int) | |
| | | + 1.97% AsyncConnection::read_bulk(char*, unsigned int) | |
| | | | + 1.96% PosixConnectedSocketImpl::read(char*, unsigned long) | |
| | | | + 0.02% read | |
| | | | + 1.94% __read_nocancel | |
| | | | + 0.02% __pthread_enable_asynccancel | |
| | | + 0.18% __memcpy_ssse3 | |
| | + 0.03% ceph::buffer::list::push_back(ceph::buffer::raw*) | |
| | | + 0.02% ceph::buffer::ptr::ptr(ceph::buffer::raw*) | |
| | | + 0.01% tc_new | |
| | + 0.02% __clock_gettime | |
| | | + 0.01% #### | |
| | | + 0.01% #### | |
| | + 0.04% pthread_mutex_lock | |
| | + 0.01% __pthread_mutex_unlock | |
| + 0.02% __clock_gettime | |
| | + 0.01% #### | |
| | + 0.01% #### | |
| | + 0.01% #### | |
| + 0.01% tc_new | |
| | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| + 0.04% operator delete(void*) | |
| + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| + 0.01% SpinLock::SlowLock() | |
| + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
+ 0.01% epoll_ctl | |
+ 0.02% __clock_getres | |
+ 0.01% __memcpy_chk_ssse3 | |
+ 0.01% std::__detail::_List_node_base::swap(std::__detail::_List_node_base&, std::__detail::_List_node_base&) | |
+ 0.01% std::strstream::str() | |
+ 0.01% std::_Rb_tree_increment(std::_Rb_tree_node_base const*) | |
+ 0.03% std::_Rb_tree_rotate_right(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*&) | |
+ 0.01% std::string::_Rep::_M_dispose(std::allocator<char> const&) [clone .part.12] | |
+ 0.01% std::string::_Rep::_M_grab(std::allocator<char> const&, std::allocator<char> const&) | |
+ 0.01% std::string::replace(__gnu_cxx::__normal_iterator<char*, std::string>, __gnu_cxx::__normal_iterator<char*, std::string>, __gnu_cxx::__normal_iterator<char const*, std::string>, __gnu_cxx::__normal_iterator<char const*, std::string>) | |
+ 0.02% pthread_timedjoin_np | |
+ 0.01% pthread_mutex_destroy | |
+ 0.02% __pthread_mutex_unlock_usercnt | |
+ 0.02% _L_unlock_32 | |
+ 1.07% pthread_cond_signal | |
+ 0.01% __write_nocancel | |
+ 0.02% tcmalloc::CentralFreeList::Init(unsigned long) | |
+ 0.02% tc_realloc | |
+ 0.01% tc_new_nothrow | |
+ 0.02% tc_memalign | |
+ 0.01% #### | |
+ 0.01% #### | |
+ 0.01% HeapLeakCheckerGlobalPrePost::~HeapLeakCheckerGlobalPrePost() | |
Thread: 21322 (msgr-worker-1) - 19934 samples, time suspended=1433ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% execute_native_thread_routine_compat | |
+ 100.00% NetworkStack::add_thread(unsigned int)::{lambda()#1}::operator()() const | |
+ 100.00% EventCenter::process_events(int, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> >*) | |
+ 99.99% EpollDriver::event_wait(std::vector<FiredFileEvent, std::allocator<FiredFileEvent> >&, timeval*) | |
| + 99.99% __epoll_wait_nocancel | |
+ 0.01% AsyncConnection::process() | |
+ 0.01% DispatchQueue::fast_dispatch(Message*) | |
+ 0.01% OSD::heartbeat_dispatch(Message*) | |
+ 0.01% OSD::handle_osd_ping(MOSDPing*) | |
+ 0.01% Mutex::Lock(bool) | |
+ 0.01% pthread_mutex_lock | |
+ 0.01% _L_lock_812 | |
+ 0.01% __lll_lock_wait | |
Thread: 21323 (msgr-worker-2) - 19934 samples, time suspended=1419ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% execute_native_thread_routine_compat | |
+ 100.00% NetworkStack::add_thread(unsigned int)::{lambda()#1}::operator()() const | |
+ 100.00% EventCenter::process_events(int, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> >*) | |
+ 99.99% EpollDriver::event_wait(std::vector<FiredFileEvent, std::allocator<FiredFileEvent> >&, timeval*) | |
| + 99.99% __epoll_wait_nocancel | |
+ 0.01% AsyncConnection::process() | |
+ 0.01% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
+ 0.01% posix_memalign | |
+ 0.01% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
Thread: 21324 (service) - 19934 samples, time suspended=1389ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% CephContextServiceThread::entry() | |
+ 100.00% pthread_cond_timedwait | |
Thread: 21325 (admin_socket) - 19934 samples, time suspended=1604ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% AdminSocket::entry() | |
+ 100.00% __poll_nocancel | |
Thread: 21327 (ceph-osd) - 19934 samples, time suspended=1446ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% execute_native_thread_routine_compat | |
+ 100.00% ceph::timer_detail::timer<ceph::time_detail::mono_clock>::timer_thread() | |
+ 100.00% pthread_cond_timedwait | |
Thread: 21328 (safe_timer) - 19934 samples, time suspended=1471ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% SafeTimerThread::entry() | |
+ 100.00% SafeTimer::timer_thread() | |
+ 100.00% pthread_cond_timedwait | |
Thread: 21329 (safe_timer) - 19934 samples, time suspended=1343ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% SafeTimerThread::entry() | |
+ 100.00% SafeTimer::timer_thread() | |
+ 0.30% Context::complete(int) | |
| + 0.30% OSD::tick_without_osd_lock() | |
| + 0.30% OSD::sched_scrub() | |
| + 0.30% OSD::_lookup_lock_pg(spg_t) | |
| + 0.30% PG::lock(bool) const | |
| + 0.30% Mutex::Lock(bool) | |
| + 0.30% pthread_mutex_lock | |
| + 0.30% _L_lock_812 | |
| + 0.30% __lll_lock_wait | |
+ 99.70% pthread_cond_timedwait | |
Thread: 21330 (safe_timer) - 19934 samples, time suspended=1228ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% SafeTimerThread::entry() | |
+ 100.00% SafeTimer::timer_thread() | |
+ 100.00% pthread_cond_wait | |
Thread: 21331 (safe_timer) - 19934 samples, time suspended=1220ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% SafeTimerThread::entry() | |
+ 100.00% SafeTimer::timer_thread() | |
+ 100.00% pthread_cond_wait | |
Thread: 21333 (bstore_aio) - 19934 samples, time suspended=1646ms | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% __clock_getres | |
+ 99.98% clone | |
| + 99.98% start_thread | |
| + 99.98% KernelDevice::AioCompletionThread::entry() | |
| + 99.98% KernelDevice::_aio_thread() | |
| + 0.01% aio_cb(void*, void*) | |
| + 0.18% BlueStore::_deferred_aio_finish(BlueStore::OpSequencer*) | |
| | + 0.02% PerfCounters::tinc(int, utime_t, unsigned int) | |
| | + 0.01% Throttle::put(long) | |
| | | + 0.01% pthread_mutex_lock | |
| | + 0.01% std::condition_variable::notify_all() | |
| | + 0.08% pthread_mutex_lock | |
| | | + 0.07% _L_lock_812 | |
| | | + 0.07% __lll_lock_wait | |
| | + 0.04% __pthread_mutex_unlock | |
| | + 0.02% _L_unlock_713 | |
| | + 0.02% __lll_unlock_wake | |
| + 99.76% aio_queue_t::get_next_completed(int, aio_t**, int) | |
| | + 99.75% __io_getevents_0_4 | |
| | + 0.01% io_getevents | |
| + 0.01% __io_getevents_0_4 | |
+ 0.02% pthread_cond_broadcast | |
Thread: 21334 (bstore_aio) - 19934 samples, time suspended=1428ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% KernelDevice::AioCompletionThread::entry() | |
+ 100.00% KernelDevice::_aio_thread() | |
+ 100.00% aio_queue_t::get_next_completed(int, aio_t**, int) | |
+ 100.00% __io_getevents_0_4 | |
Thread: 21335 (bstore_aio) - 19934 samples, time suspended=1470ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% KernelDevice::AioCompletionThread::entry() | |
+ 100.00% KernelDevice::_aio_thread() | |
+ 100.00% aio_queue_t::get_next_completed(int, aio_t**, int) | |
+ 100.00% __io_getevents_0_4 | |
Thread: 21336 (bstore_aio) - 19934 samples, time suspended=1157ms | |
+ 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_mutex_destroy | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_signal | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_signal | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 0.01% #### | |
| + 0.01% KernelDevice::AioCompletionThread::entry() | |
| + 0.01% pthread_cond_broadcast | |
+ 99.00% clone | |
+ 99.00% start_thread | |
+ 99.00% KernelDevice::AioCompletionThread::entry() | |
+ 99.00% KernelDevice::_aio_thread() | |
+ 0.01% ceph::logging::SubsystemMap::should_gather(unsigned int, int) | |
+ 98.91% aio_queue_t::get_next_completed(int, aio_t**, int) | |
| + 98.91% __io_getevents_0_4 | |
+ 0.01% std::condition_variable::notify_all() | |
+ 0.02% pthread_mutex_lock | |
+ 0.01% __pthread_mutex_unlock | |
+ 0.01% _L_unlock_713 | |
+ 0.01% __lll_unlock_wake | |
Thread: 21337 (rocksdb:bg0) - 19934 samples, time suspended=1595ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% execute_native_thread_routine_compat | |
+ 100.00% rocksdb::ThreadPoolImpl::Impl::BGThreadWrapper(void*) | |
+ 100.00% rocksdb::ThreadPoolImpl::Impl::BGThread(unsigned long) | |
+ 0.11% rocksdb::DBImpl::BGWorkCompaction(void*) | |
| + 0.11% rocksdb::DBImpl::BackgroundCallCompaction(rocksdb::DBImpl::PrepickedCompaction*, rocksdb::Env::Priority) | |
| + 0.01% rocksdb::DBImpl::MaybeDumpStats() | |
| | + 0.01% rocksdb::InternalStats::GetStringProperty(rocksdb::DBPropertyInfo const&, rocksdb::Slice const&, std::string*) | |
| | + 0.01% rocksdb::InternalStats::HandleCFStats(std::string*, rocksdb::Slice) | |
| | + 0.01% rocksdb::InternalStats::DumpCFStats(std::string*) | |
| | + 0.01% rocksdb::InternalStats::DumpCFStatsNoFileHistogram(std::string*) | |
| | + 0.01% std::string::append(char const*, unsigned long) | |
| | + 0.01% std::string::reserve(unsigned long) | |
| | + 0.01% operator delete(void*) | |
| | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | + 0.01% SpinLock::SlowLock() | |
| | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| + 0.10% rocksdb::DBImpl::BackgroundCompaction(bool*, rocksdb::JobContext*, rocksdb::LogBuffer*, rocksdb::DBImpl::PrepickedCompaction*) | |
| + 0.10% rocksdb::CompactionJob::Run() | |
| + 0.10% rocksdb::CompactionJob::ProcessKeyValueCompaction(rocksdb::CompactionJob::SubcompactionState*) | |
| + 0.01% rocksdb::MergingIterator::SeekToFirst() | |
| | + 0.01% rocksdb::(anonymous namespace)::TwoLevelIterator::SeekToFirst() | |
| | + 0.01% rocksdb::(anonymous namespace)::TwoLevelIterator::InitDataBlock() | |
| | + 0.01% rocksdb::BlockBasedTable::BlockEntryIteratorState::NewSecondaryIterator(rocksdb::Slice const&) | |
| | + 0.01% rocksdb::BlockBasedTable::NewDataBlockIterator(rocksdb::BlockBasedTable::Rep*, rocksdb::ReadOptions const&, rocksdb::BlockHandle const&, rocksdb::BlockIter*, bool, rocksdb::Status) | |
| | + 0.01% rocksdb::(anonymous namespace)::ReadBlockFromFile(rocksdb::RandomAccessFileReader*, rocksdb::FilePrefetchBuffer*, rocksdb::Footer const&, rocksdb::ReadOptions const&, rocksdb::BlockHandle const&, std::unique_ptr<rocksdb::Block, std::default_delete<rocksdb::Block> >*, rocksdb::ImmutableCFOptions const&, bool, rocksdb::Slice const&, rocksdb::PersistentCacheOptions const&, unsigned long, unsigned long) | |
| | + 0.01% rocksdb::ReadBlockContents(rocksdb::RandomAccessFileReader*, rocksdb::FilePrefetchBuffer*, rocksdb::Footer const&, rocksdb::ReadOptions const&, rocksdb::BlockHandle const&, rocksdb::BlockContents*, rocksdb::ImmutableCFOptions const&, bool, rocksdb::Slice const&, rocksdb::PersistentCacheOptions const&) | |
| | + 0.01% rocksdb::RandomAccessFileReader::Read(unsigned long, unsigned long, rocksdb::Slice*, char*) const | |
| | + 0.01% rocksdb::(anonymous namespace)::ReadaheadRandomAccessFile::Read(unsigned long, unsigned long, rocksdb::Slice*, char*) const | |
| | + 0.01% BlueRocksRandomAccessFile::Read(unsigned long, unsigned long, rocksdb::Slice*, char*) const | |
| | + 0.01% BlueFS::_read_random(BlueFS::FileReader*, unsigned long, unsigned long, char*) | |
| | + 0.01% KernelDevice::read_random(unsigned long, unsigned long, char*, bool) | |
| | + 0.01% __pread_nocancel | |
| + 0.07% rocksdb::CompactionIterator::Next() | |
| | + 0.01% rocksdb::MergingIterator::Next() | |
| | | + 0.01% rocksdb::(anonymous namespace)::TwoLevelIterator::SkipEmptyDataBlocksForward() | |
| | | + 0.01% rocksdb::(anonymous namespace)::TwoLevelIterator::InitDataBlock() | |
| | | + 0.01% rocksdb::BlockBasedTable::BlockEntryIteratorState::NewSecondaryIterator(rocksdb::Slice const&) | |
| | | + 0.01% rocksdb::BlockBasedTable::NewDataBlockIterator(rocksdb::BlockBasedTable::Rep*, rocksdb::ReadOptions const&, rocksdb::BlockHandle const&, rocksdb::BlockIter*, bool, rocksdb::Status) | |
| | | + 0.01% rocksdb::(anonymous namespace)::ReadBlockFromFile(rocksdb::RandomAccessFileReader*, rocksdb::FilePrefetchBuffer*, rocksdb::Footer const&, rocksdb::ReadOptions const&, rocksdb::BlockHandle const&, std::unique_ptr<rocksdb::Block, std::default_delete<rocksdb::Block> >*, rocksdb::ImmutableCFOptions const&, bool, rocksdb::Slice const&, rocksdb::PersistentCacheOptions const&, unsigned long, unsigned long) | |
| | | + 0.01% rocksdb::ReadBlockContents(rocksdb::RandomAccessFileReader*, rocksdb::FilePrefetchBuffer*, rocksdb::Footer const&, rocksdb::ReadOptions const&, rocksdb::BlockHandle const&, rocksdb::BlockContents*, rocksdb::ImmutableCFOptions const&, bool, rocksdb::Slice const&, rocksdb::PersistentCacheOptions const&) | |
| | | + 0.01% rocksdb::(anonymous namespace)::CheckBlockChecksum(rocksdb::ReadOptions const&, rocksdb::Footer const&, rocksdb::Slice const&, unsigned long, rocksdb::RandomAccessFileReader*, rocksdb::BlockHandle const&) [clone .isra.138] | |
| | | + 0.01% unsigned int rocksdb::crc32c::ExtendImpl<&rocksdb::crc32c::Slow_CRC32>(unsigned int, char const*, unsigned long) | |
| | + 0.06% rocksdb::CompactionIterator::NextFromInput() | |
| | + 0.05% rocksdb::MergingIterator::Next() | |
| | | + 0.04% rocksdb::(anonymous namespace)::TwoLevelIterator::SkipEmptyDataBlocksForward() | |
| | | | + 0.03% rocksdb::(anonymous namespace)::TwoLevelIterator::InitDataBlock() | |
| | | | + 0.03% rocksdb::BlockBasedTable::BlockEntryIteratorState::NewSecondaryIterator(rocksdb::Slice const&) | |
| | | | + 0.03% rocksdb::BlockBasedTable::NewDataBlockIterator(rocksdb::BlockBasedTable::Rep*, rocksdb::ReadOptions const&, rocksdb::BlockHandle const&, rocksdb::BlockIter*, bool, rocksdb::Status) | |
| | | | + 0.03% rocksdb::(anonymous namespace)::ReadBlockFromFile(rocksdb::RandomAccessFileReader*, rocksdb::FilePrefetchBuffer*, rocksdb::Footer const&, rocksdb::ReadOptions const&, rocksdb::BlockHandle const&, std::unique_ptr<rocksdb::Block, std::default_delete<rocksdb::Block> >*, rocksdb::ImmutableCFOptions const&, bool, rocksdb::Slice const&, rocksdb::PersistentCacheOptions const&, unsigned long, unsigned long) | |
| | | | + 0.03% rocksdb::ReadBlockContents(rocksdb::RandomAccessFileReader*, rocksdb::FilePrefetchBuffer*, rocksdb::Footer const&, rocksdb::ReadOptions const&, rocksdb::BlockHandle const&, rocksdb::BlockContents*, rocksdb::ImmutableCFOptions const&, bool, rocksdb::Slice const&, rocksdb::PersistentCacheOptions const&) | |
| | | | + 0.02% rocksdb::(anonymous namespace)::CheckBlockChecksum(rocksdb::ReadOptions const&, rocksdb::Footer const&, rocksdb::Slice const&, unsigned long, rocksdb::RandomAccessFileReader*, rocksdb::BlockHandle const&) [clone .isra.138] | |
| | | | | + 0.02% unsigned int rocksdb::crc32c::ExtendImpl<&rocksdb::crc32c::Slow_CRC32>(unsigned int, char const*, unsigned long) | |
| | | | + 0.01% rocksdb::RandomAccessFileReader::Read(unsigned long, unsigned long, rocksdb::Slice*, char*) const | |
| | | | + 0.01% rocksdb::(anonymous namespace)::ReadaheadRandomAccessFile::Read(unsigned long, unsigned long, rocksdb::Slice*, char*) const | |
| | | | + 0.01% BlueRocksRandomAccessFile::Read(unsigned long, unsigned long, rocksdb::Slice*, char*) const | |
| | | | + 0.01% BlueFS::_read_random(BlueFS::FileReader*, unsigned long, unsigned long, char*) | |
| | | | + 0.01% KernelDevice::read_random(unsigned long, unsigned long, char*, bool) | |
| | | | + 0.01% __pread_nocancel | |
| | | + 0.01% rocksdb::(anonymous namespace)::TwoLevelIterator::Next() | |
| | | + 0.01% rocksdb::BlockIter::ParseNextKey() | |
| | + 0.01% rocksdb::(anonymous namespace)::TwoLevelIterator::Valid() const | |
| | + 0.01% rocksdb::Compaction::KeyNotExistsBeyondOutputLevel(rocksdb::Slice const&, std::vector<unsigned long, std::allocator<unsigned long> >*) const | |
| + 0.01% rocksdb::CompactionJob::FinishCompactionOutputFile(rocksdb::Status const&, rocksdb::CompactionJob::SubcompactionState*, rocksdb::RangeDelAggregator*, CompactionIterationStats*, rocksdb::Slice const*) | |
| | + 0.01% rocksdb::WritableFileWriter::Sync(bool) | |
| | + 0.01% rocksdb::WritableFileWriter::SyncInternal(bool) | |
| | + 0.01% BlueRocksWritableFile::Sync() | |
| | + 0.01% BlueFS::_fsync(BlueFS::FileWriter*, std::unique_lock<std::mutex>&) | |
| | + 0.01% BlueFS::_flush_bdev_safely(BlueFS::FileWriter*) | |
| | + 0.01% BlueFS::wait_for_aio(BlueFS::FileWriter*) | |
| | + 0.01% IOContext::aio_wait() | |
| | + 0.01% std::condition_variable::wait(std::unique_lock<std::mutex>&) | |
| | + 0.01% pthread_cond_wait | |
| + 0.02% rocksdb::BlockBasedTableBuilder::Add(rocksdb::Slice const&, rocksdb::Slice const&) | |
| + 0.02% rocksdb::BlockBasedTableBuilder::Flush() | |
| | + 0.01% rocksdb::BlockBasedFilterBlockBuilder::StartBlock(unsigned long) | |
| | | + 0.01% rocksdb::BlockBasedFilterBlockBuilder::GenerateFilter() | |
| | | + 0.01% rocksdb::(anonymous namespace)::BloomFilterPolicy::CreateFilter(rocksdb::Slice const*, int, std::string*) const | |
| | | + 0.01% std::string::append(unsigned long, char) | |
| | | + 0.01% std::string::reserve(unsigned long) | |
| | | + 0.01% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | + 0.01% __memcpy_ssse3 | |
| | + 0.01% rocksdb::BlockBasedTableBuilder::WriteBlock(rocksdb::BlockBuilder*, rocksdb::BlockHandle*, bool) | |
| | + 0.01% rocksdb::BlockBasedTableBuilder::WriteBlock(rocksdb::Slice const&, rocksdb::BlockHandle*, bool) | |
| | + 0.01% rocksdb::BlockBasedTableBuilder::WriteRawBlock(rocksdb::Slice const&, rocksdb::CompressionType, rocksdb::BlockHandle*) | |
| | + 0.01% unsigned int rocksdb::crc32c::ExtendImpl<&rocksdb::crc32c::Slow_CRC32>(unsigned int, char const*, unsigned long) | |
| + 0.01% rocksdb::BlockBuilder::Add(rocksdb::Slice const&, rocksdb::Slice const&) | |
| + 0.01% std::string::append(char const*, unsigned long) | |
| + 0.01% __memcpy_ssse3 | |
+ 99.89% std::condition_variable::wait(std::unique_lock<std::mutex>&) | |
+ 99.89% pthread_cond_wait | |
Thread: 21338 (rocksdb:bg0) - 19934 samples, time suspended=1294ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% execute_native_thread_routine_compat | |
+ 100.00% rocksdb::ThreadPoolImpl::Impl::BGThreadWrapper(void*) | |
+ 100.00% rocksdb::ThreadPoolImpl::Impl::BGThread(unsigned long) | |
+ 0.76% rocksdb::DBImpl::BackgroundCallFlush() | |
| + 0.02% rocksdb::JobContext::Clean() | |
| | + 0.02% rocksdb::SuperVersion::~SuperVersion() | |
| | + 0.02% rocksdb::MemTable::~MemTable() | |
| | + 0.02% rocksdb::Arena::~Arena() | |
| | + 0.02% operator delete[](void*) | |
| | + 0.02% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | + 0.02% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | + 0.02% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | + 0.02% TCMalloc_SystemRelease(void*, unsigned long) | |
| | + 0.02% madvise | |
| + 0.74% rocksdb::DBImpl::BackgroundFlush(bool*, rocksdb::JobContext*, rocksdb::LogBuffer*) | |
| + 0.74% rocksdb::DBImpl::FlushMemTableToOutputFile(rocksdb::ColumnFamilyData*, rocksdb::MutableCFOptions const&, bool*, rocksdb::JobContext*, rocksdb::LogBuffer*) | |
| + 0.01% rocksdb::DBImpl::SyncClosedLogs(rocksdb::JobContext*) | |
| | + 0.01% BlueRocksDirectory::Fsync() | |
| | + 0.01% BlueFS::sync_metadata() | |
| | + 0.01% BlueFS::_compact_log_async(std::unique_lock<std::mutex>&) | |
| | + 0.01% BlueFS::_compact_log_dump_metadata(bluefs_transaction_t*) | |
| | + 0.01% bluefs_transaction_t::op_file_update(bluefs_fnode_t const&) | |
| + 0.74% rocksdb::FlushJob::Run(rocksdb::FileMetaData*) | |
| + 0.73% rocksdb::FlushJob::WriteLevel0Table() | |
| | + 0.73% rocksdb::BuildTable(std::string const&, rocksdb::Env*, rocksdb::ImmutableCFOptions const&, rocksdb::MutableCFOptions const&, rocksdb::EnvOptions const&, rocksdb::TableCache*, rocksdb::InternalIterator*, std::unique_ptr<rocksdb::InternalIterator, std::default_delete<rocksdb::InternalIterator> >, rocksdb::FileMetaData*, rocksdb::InternalKeyComparator const&, std::vector<std::unique_ptr<rocksdb::IntTblPropCollectorFactory, std::default_delete<rocksdb::IntTblPropCollectorFactory> >, std::allocator<std::unique_ptr<rocksdb::IntTblPropCollectorFactory, std::default_delete<rocksdb::IntTblPropCollectorFactory> > > > const*, unsigned int, std::string const&, std::vector<unsigned long, std::allocator<unsigned long> >, unsigned long, rocksdb::CompressionType, rocksdb::CompressionOptions const&, bool, rocksdb::InternalStats*, rocksdb::TableFileCreationReason, rocksdb::EventLogger*, int, rocksdb::Env::IOPriority, rocksdb::TableProperties*, int, unsigned long) | |
| | + 0.03% rocksdb::TableCache::NewIterator(rocksdb::ReadOptions const&, rocksdb::EnvOptions const&, rocksdb::InternalKeyComparator const&, rocksdb::FileDescriptor const&, rocksdb::RangeDelAggregator*, rocksdb::TableReader**, rocksdb::HistogramImpl*, bool, rocksdb::Arena*, bool, int) | |
| | | + 0.03% rocksdb::TableCache::FindTable(rocksdb::EnvOptions const&, rocksdb::InternalKeyComparator const&, rocksdb::FileDescriptor const&, rocksdb::Cache::Handle**, bool, bool, rocksdb::HistogramImpl*, bool, int, bool) | |
| | | + 0.03% rocksdb::TableCache::GetTableReader(rocksdb::EnvOptions const&, rocksdb::InternalKeyComparator const&, rocksdb::FileDescriptor const&, bool, unsigned long, bool, rocksdb::HistogramImpl*, std::unique_ptr<rocksdb::TableReader, std::default_delete<rocksdb::TableReader> >*, bool, int, bool, bool) | |
| | | + 0.03% rocksdb::BlockBasedTableFactory::NewTableReader(rocksdb::TableReaderOptions const&, std::unique_ptr<rocksdb::RandomAccessFileReader, std::default_delete<rocksdb::RandomAccessFileReader> >&&, unsigned long, std::unique_ptr<rocksdb::TableReader, std::default_delete<rocksdb::TableReader> >*, bool) const | |
| | | + 0.03% rocksdb::BlockBasedTable::Open(rocksdb::ImmutableCFOptions const&, rocksdb::EnvOptions const&, rocksdb::BlockBasedTableOptions const&, rocksdb::InternalKeyComparator const&, std::unique_ptr<rocksdb::RandomAccessFileReader, std::default_delete<rocksdb::RandomAccessFileReader> >&&, unsigned long, std::unique_ptr<rocksdb::TableReader, std::default_delete<rocksdb::TableReader> >*, bool, bool, int) | |
| | | + 0.01% rocksdb::BlockBasedTable::GetFilter(rocksdb::FilePrefetchBuffer*, bool) const | |
| | | | + 0.01% rocksdb::BlockBasedTable::GetFilter(rocksdb::FilePrefetchBuffer*, rocksdb::BlockHandle const&, bool, bool) const | |
| | | | + 0.01% rocksdb::BlockBasedTable::ReadFilter(rocksdb::FilePrefetchBuffer*, rocksdb::BlockHandle const&, bool) const | |
| | | | + 0.01% rocksdb::ReadBlockContents(rocksdb::RandomAccessFileReader*, rocksdb::FilePrefetchBuffer*, rocksdb::Footer const&, rocksdb::ReadOptions const&, rocksdb::BlockHandle const&, rocksdb::BlockContents*, rocksdb::ImmutableCFOptions const&, bool, rocksdb::Slice const&, rocksdb::PersistentCacheOptions const&) | |
| | | | + 0.01% rocksdb::(anonymous namespace)::CheckBlockChecksum(rocksdb::ReadOptions const&, rocksdb::Footer const&, rocksdb::Slice const&, unsigned long, rocksdb::RandomAccessFileReader*, rocksdb::BlockHandle const&) [clone .isra.138] | |
| | | | | + 0.01% unsigned int rocksdb::crc32c::ExtendImpl<&rocksdb::crc32c::Slow_CRC32>(unsigned int, char const*, unsigned long) | |
| | | | + 0.01% rocksdb::RandomAccessFileReader::Read(unsigned long, unsigned long, rocksdb::Slice*, char*) const | |
| | | | + 0.01% BlueRocksRandomAccessFile::Read(unsigned long, unsigned long, rocksdb::Slice*, char*) const | |
| | | | + 0.01% BlueFS::_read_random(BlueFS::FileReader*, unsigned long, unsigned long, char*) | |
| | | | + 0.01% KernelDevice::read_random(unsigned long, unsigned long, char*, bool) | |
| | | | + 0.01% KernelDevice::direct_read_unaligned(unsigned long, unsigned long, char*) | |
| | | | + 0.01% __pread_nocancel | |
| | | + 0.02% rocksdb::ReadFooterFromFile(rocksdb::RandomAccessFileReader*, rocksdb::FilePrefetchBuffer*, unsigned long, rocksdb::Footer*, unsigned long) | |
| | | + 0.02% rocksdb::RandomAccessFileReader::Read(unsigned long, unsigned long, rocksdb::Slice*, char*) const | |
| | | + 0.02% BlueRocksRandomAccessFile::Read(unsigned long, unsigned long, rocksdb::Slice*, char*) const | |
| | | + 0.02% BlueFS::_read_random(BlueFS::FileReader*, unsigned long, unsigned long, char*) | |
| | | + 0.02% KernelDevice::read_random(unsigned long, unsigned long, char*, bool) | |
| | | + 0.02% KernelDevice::direct_read_unaligned(unsigned long, unsigned long, char*) | |
| | | + 0.02% __pread_nocancel | |
| | + 0.01% rocksdb::FlushBlockBySizePolicy::~FlushBlockBySizePolicy() | |
| | + 0.02% rocksdb::WritableFileWriter::Sync(bool) | |
| | | + 0.02% rocksdb::WritableFileWriter::SyncInternal(bool) | |
| | | + 0.02% BlueRocksWritableFile::Sync() | |
| | | + 0.02% BlueFS::_fsync(BlueFS::FileWriter*, std::unique_lock<std::mutex>&) | |
| | | + 0.02% BlueFS::_flush_bdev_safely(BlueFS::FileWriter*) | |
| | | + 0.02% BlueFS::wait_for_aio(BlueFS::FileWriter*) | |
| | | + 0.02% IOContext::aio_wait() | |
| | | + 0.02% std::condition_variable::wait(std::unique_lock<std::mutex>&) | |
| | | + 0.02% pthread_cond_wait | |
| | + 0.51% rocksdb::CompactionIterator::Next() | |
| | | + 0.51% rocksdb::CompactionIterator::NextFromInput() | |
| | | + 0.02% rocksdb::MemTableIterator::Next() | |
| | | | + 0.02% rocksdb::(anonymous namespace)::SkipListRep::Iterator::Next() | |
| | | + 0.32% rocksdb::MemTableIterator::key() const | |
| | | + 0.14% rocksdb::MemTableIterator::value() const | |
| | | | + 0.01% rocksdb::GetVarint32PtrFallback(char const*, char const*, unsigned int*) | |
| | | + 0.01% rocksdb::RangeDelAggregator::ShouldDeleteImpl(rocksdb::Slice const&, rocksdb::RangeDelAggregator::RangePositioningMode) | |
| | | | + 0.01% rocksdb::RangeDelAggregator::ShouldDeleteImpl(rocksdb::ParsedInternalKey const&, rocksdb::RangeDelAggregator::RangePositioningMode) | |
| | | + 0.01% rocksdb::(anonymous namespace)::BytewiseComparatorImpl::Equal(rocksdb::Slice const&, rocksdb::Slice const&) const | |
| | | | + 0.01% __memcmp_sse4_1 | |
| | | + 0.01% __wcscpy_ssse3 | |
| | + 0.01% rocksdb::ThreadStatusUpdater::SetThreadOperationProperty(int, unsigned long) | |
| | + 0.17% rocksdb::BlockBasedTableBuilder::Add(rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | + 0.01% rocksdb::NotifyCollectTableCollectorsOnAdd(rocksdb::Slice const&, rocksdb::Slice const&, unsigned long, std::vector<std::unique_ptr<rocksdb::IntTblPropCollector, std::default_delete<rocksdb::IntTblPropCollector> >, std::allocator<std::unique_ptr<rocksdb::IntTblPropCollector, std::default_delete<rocksdb::IntTblPropCollector> > > > const&, rocksdb::Logger*) | |
| | | + 0.01% rocksdb::BlockBasedFilterBlockBuilder::Add(rocksdb::Slice const&) | |
| | | + 0.11% rocksdb::BlockBasedTableBuilder::Flush() | |
| | | | + 0.05% rocksdb::BlockBasedFilterBlockBuilder::StartBlock(unsigned long) | |
| | | | | + 0.05% rocksdb::BlockBasedFilterBlockBuilder::GenerateFilter() | |
| | | | | + 0.05% rocksdb::(anonymous namespace)::BloomFilterPolicy::CreateFilter(rocksdb::Slice const*, int, std::string*) const | |
| | | | | + 0.01% rocksdb::Hash(char const*, unsigned long, unsigned int) | |
| | | | + 0.06% rocksdb::BlockBasedTableBuilder::WriteBlock(rocksdb::BlockBuilder*, rocksdb::BlockHandle*, bool) | |
| | | | + 0.06% rocksdb::BlockBasedTableBuilder::WriteBlock(rocksdb::Slice const&, rocksdb::BlockHandle*, bool) | |
| | | | + 0.06% rocksdb::BlockBasedTableBuilder::WriteRawBlock(rocksdb::Slice const&, rocksdb::CompressionType, rocksdb::BlockHandle*) | |
| | | | + 0.04% unsigned int rocksdb::crc32c::ExtendImpl<&rocksdb::crc32c::Slow_CRC32>(unsigned int, char const*, unsigned long) | |
| | | | + 0.03% rocksdb::WritableFileWriter::Append(rocksdb::Slice const&) | |
| | | | + 0.01% rocksdb::get_iostats_context() | |
| | | | + 0.02% rocksdb::WritableFileWriter::WriteBuffered(char const*, unsigned long) | |
| | | | + 0.02% BlueRocksWritableFile::Append(rocksdb::Slice const&) | |
| | | | + 0.02% __memcpy_ssse3 | |
| | | + 0.04% rocksdb::BlockBuilder::Add(rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | | + 0.01% _init | |
| | | | + 0.01% rocksdb::EncodeVarint32(char*, unsigned int) | |
| | | | + 0.02% std::string::append(char const*, unsigned long) | |
| | | | + 0.02% __memcpy_ssse3 | |
| | | | + 0.01% std::string::reserve(unsigned long) | |
| | | | + 0.01% operator delete(void*) | |
| | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | + 0.01% SpinLock::SlowLock() | |
| | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | + 0.01% rocksdb::ShortenedIndexBuilder::AddIndexEntry(std::string*, rocksdb::Slice const*, rocksdb::BlockHandle const&) | |
| | | | + 0.01% std::string::append(std::string const&, unsigned long, unsigned long) | |
| | | + 0.01% std::string::assign(char const*, unsigned long) | |
| | | + 0.01% std::string::append(std::string const&, unsigned long, unsigned long) | |
| | + 0.01% std::string::_M_replace_safe(unsigned long, unsigned long, char const*, unsigned long) | |
| | + 0.01% std::string::_M_mutate(unsigned long, unsigned long, unsigned long) | |
| + 0.01% rocksdb::MemTableList::InstallMemtableFlushResults(rocksdb::ColumnFamilyData*, rocksdb::MutableCFOptions const&, rocksdb::autovector<rocksdb::MemTable*, 8ul> const&, rocksdb::VersionSet*, rocksdb::InstrumentedMutex*, unsigned long, rocksdb::autovector<rocksdb::MemTable*, 8ul>*, rocksdb::Directory*, rocksdb::LogBuffer*) | |
| + 0.01% rocksdb::VersionSet::LogAndApply(rocksdb::ColumnFamilyData*, rocksdb::MutableCFOptions const&, rocksdb::autovector<rocksdb::VersionEdit*, 8ul> const&, rocksdb::InstrumentedMutex*, rocksdb::Directory*, bool, rocksdb::ColumnFamilyOptions const*) | |
| + 0.01% rocksdb::VersionSet::AppendVersion(rocksdb::ColumnFamilyData*, rocksdb::Version*) | |
| + 0.01% rocksdb::Version::GetPropertiesOfTablesInRange(rocksdb::Range const*, unsigned long, std::unordered_map<std::string, std::shared_ptr<rocksdb::TableProperties const>, std::hash<std::string>, std::equal_to<std::string>, std::allocator<std::pair<std::string const, std::shared_ptr<rocksdb::TableProperties const> > > >*) const | |
+ 99.24% std::condition_variable::wait(std::unique_lock<std::mutex>&) | |
+ 99.24% pthread_cond_wait | |
Thread: 21390 (dfin) - 19934 samples, time suspended=1283ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% Finisher::finisher_thread_entry() | |
+ 100.00% pthread_cond_wait | |
Thread: 21391 (finisher) - 19934 samples, time suspended=1754ms | |
+ 0.01% Context::~Context() | |
+ 0.01% RefCountedObject::get() | |
+ 0.01% intrusive_ptr_add_ref(PrimaryLogPG*) | |
+ 0.01% PrimaryLogPG::do_osd_op_effects(PrimaryLogPG::OpContext*, boost::intrusive_ptr<Connection> const&) | |
+ 0.01% PrimaryLogPG::eval_repop(PrimaryLogPG::RepGather*) | |
+ 0.01% std::ostream& operator<< <OSDOp, std::allocator<OSDOp> >(std::ostream&, std::vector<OSDOp, std::allocator<OSDOp> > const&) | |
+ 0.01% std::map<eversion_t, std::list<std::pair<boost::intrusive_ptr<OpRequest>, unsigned long>, std::allocator<std::pair<boost::intrusive_ptr<OpRequest>, unsigned long> > >, std::less<eversion_t>, std::allocator<std::pair<eversion_t const, std::list<std::pair<boost::intrusive_ptr<OpRequest>, unsigned long>, std::allocator<std::pair<boost::intrusive_ptr<OpRequest>, unsigned long> > > > > >::operator[](eversion_t const&) | |
+ 0.01% OpTracker::check_ops_in_flight(std::vector<std::string, std::allocator<std::string> >&, int*) | |
+ 0.01% MOSDOp::~MOSDOp() | |
+ 0.01% std::_Rb_tree<pg_shard_t, std::pair<pg_shard_t const, std::set<hobject_t, std::less<hobject_t>, std::allocator<hobject_t> > >, std::_Select1st<std::pair<pg_shard_t const, std::set<hobject_t, std::less<hobject_t>, std::allocator<hobject_t> > > >, std::less<pg_shard_t>, std::allocator<std::pair<pg_shard_t const, std::set<hobject_t, std::less<hobject_t>, std::allocator<hobject_t> > > > >::_M_erase(std::_Rb_tree_node<std::pair<pg_shard_t const, std::set<hobject_t, std::less<hobject_t>, std::allocator<hobject_t> > > >*) | |
+ 0.01% C_OSD_OnOpApplied::finish(int) | |
+ 0.01% ceph::buffer::list::iterator_impl<false>::advance(int) | |
+ 0.01% get_quants(long, PerfHistogramCommon::scale_type_d) | |
+ 0.01% Mutex::~Mutex() | |
+ 0.01% ceph_ioprio_string_to_class(std::string const&) | |
+ 0.01% intrusive_ptr_add_ref(RefCountedObject const*) | |
+ 0.01% AsyncConnection::discard_requeued_up_to(unsigned long) | |
+ 0.01% #### | |
| + 0.01% tc_realloc | |
+ 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% std::basic_ios<wchar_t, std::char_traits<wchar_t> >::operator void*() const | |
+ 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% std::basic_ios<wchar_t, std::char_traits<wchar_t> >::operator void*() const | |
+ 99.75% clone | |
| + 99.75% start_thread | |
| + 99.75% Finisher::finisher_thread_entry() | |
| + 94.99% Context::complete(int) | |
| | + 94.92% PrimaryLogPG::BlessedContext::finish(int) | |
| | | + 1.64% Context::complete(int) | |
| | | | + 1.64% ReplicatedBackend::op_commit(ReplicatedBackend::InProgressOp*) | |
| | | | + 1.38% Context::complete(int) | |
| | | | | + 1.38% PrimaryLogPG::repop_all_committed(PrimaryLogPG::RepGather*) | |
| | | | | + 1.35% PrimaryLogPG::eval_repop(PrimaryLogPG::RepGather*) | |
| | | | | + 0.04% std::_Function_base::_Base_manager<PrimaryLogPG::execute_ctx(PrimaryLogPG::OpContext*)::{lambda()#1}>::_M_manager(std::_Any_data&, std::_Function_base::_Base_manager<PrimaryLogPG::execute_ctx(PrimaryLogPG::OpContext*)::{lambda()#1}> const&, std::_Manager_operation) | |
| | | | | | + 0.03% operator delete(void*) | |
| | | | | | + 0.01% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | + 1.20% PrimaryLogPG::execute_ctx(PrimaryLogPG::OpContext*)::{lambda()#1}::operator()() const | |
| | | | | | + 0.17% PrimaryLogPG::log_op_stats(PrimaryLogPG::OpContext*) | |
| | | | | | | + 0.01% TrackedOp::put() | |
| | | | | | | + 0.02% PerfCounters::inc(int, unsigned long) | |
| | | | | | | + 0.03% PerfCounters::tinc(int, utime_t, unsigned int) | |
| | | | | | | + 0.07% PerfCounters::hinc(int, long, long) | |
| | | | | | | | + 0.04% PerfHistogramCommon::get_bucket_for_axis(long, PerfHistogramCommon::axis_config_d const&) | |
| | | | | | | + 0.01% OpRequest::may_read() | |
| | | | | | + 0.04% OpRequest::mark_flag_point(unsigned char, char const*) | |
| | | | | | | + 0.03% TrackedOp::mark_event(char const*, utime_t) | |
| | | | | | | | + 0.01% Mutex::Lock(bool) | |
| | | | | | | | | + 0.01% pthread_mutex_lock | |
| | | | | | | | + 0.02% Mutex::Unlock() | |
| | | | | | | | + 0.02% __pthread_mutex_unlock | |
| | | | | | | + 0.01% ceph_clock_now() | |
| | | | | | + 0.82% AsyncConnection::send_message(Message*) | |
| | | | | | + 0.01% _init | |
| | | | | | + 0.05% ceph::buffer::list::list(ceph::buffer::list&&) | |
| | | | | | | + 0.01% ceph::buffer::ptr::swap(ceph::buffer::ptr&) | |
| | | | | | + 0.02% PerfCounters::inc(int, unsigned long) | |
| | | | | | + 0.02% RefCountedObject::get() const | |
| | | | | | + 0.43% EventCenter::dispatch_event_external(EventCallback*) | |
| | | | | | | + 0.36% EventCenter::wakeup() | |
| | | | | | | | + 0.35% __write_nocancel | |
| | | | | | | + 0.01% void std::deque<EventCallback*, std::allocator<EventCallback*> >::_M_push_back_aux<EventCallback* const&>(EventCallback* const&) | |
| | | | | | | | + 0.01% tc_new | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.05% pthread_mutex_lock | |
| | | | | | | | + 0.01% _L_lock_812 | |
| | | | | | | | + 0.01% __lll_lock_wait | |
| | | | | | | + 0.01% __pthread_mutex_unlock | |
| | | | | | | + 0.01% _L_unlock_713 | |
| | | | | | | + 0.01% __lll_unlock_wake | |
| | | | | | + 0.01% std::_Rb_tree<int, std::pair<int const, std::list<std::pair<ceph::buffer::list, Message*>, std::allocator<std::pair<ceph::buffer::list, Message*> > > >, std::_Select1st<std::pair<int const, std::list<std::pair<ceph::buffer::list, Message*>, std::allocator<std::pair<ceph::buffer::list, Message*> > > > >, std::less<int>, std::allocator<std::pair<int const, std::list<std::pair<ceph::buffer::list, Message*>, std::allocator<std::pair<ceph::buffer::list, Message*> > > > > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator<std::pair<int const, std::list<std::pair<ceph::buffer::list, Message*>, std::allocator<std::pair<ceph::buffer::list, Message*> > > > >, int const&) | |
| | | | | | + 0.01% __memcmp_sse4_1 | |
| | | | | | + 0.01% std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*) | |
| | | | | | + 0.08% pthread_mutex_lock | |
| | | | | | | + 0.06% _L_lock_812 | |
| | | | | | | + 0.06% __lll_lock_wait | |
| | | | | | + 0.05% __pthread_mutex_unlock | |
| | | | | | | + 0.05% _L_unlock_713 | |
| | | | | | | + 0.05% __lll_unlock_wake | |
| | | | | | + 0.13% tc_new | |
| | | | | | + 0.08% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.08% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.07% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.03% std::function<void ()>::operator()() const | |
| | | | | + 0.05% operator delete(void*) | |
| | | | | + 0.04% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | | | + 0.04% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.09% std::_Rb_tree<pg_shard_t, pg_shard_t, std::_Identity<pg_shard_t>, std::less<pg_shard_t>, std::allocator<pg_shard_t> >::erase(pg_shard_t const&) | |
| | | | | + 0.05% std::_Rb_tree<pg_shard_t, pg_shard_t, std::_Identity<pg_shard_t>, std::less<pg_shard_t>, std::allocator<pg_shard_t> >::_M_erase(std::_Rb_tree_node<pg_shard_t>*) | |
| | | | | | + 0.01% std::_Rb_tree<pg_shard_t, pg_shard_t, std::_Identity<pg_shard_t>, std::less<pg_shard_t>, std::allocator<pg_shard_t> >::_M_erase(std::_Rb_tree_node<pg_shard_t>*) | |
| | | | | | + 0.04% operator delete(void*) | |
| | | | | | + 0.01% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.04% std::_Rb_tree<pg_shard_t, pg_shard_t, std::_Identity<pg_shard_t>, std::less<pg_shard_t>, std::allocator<pg_shard_t> >::equal_range(pg_shard_t const&) | |
| | | | + 0.01% C_OSD_RepopCommit::~C_OSD_RepopCommit() | |
| | | | | + 0.01% PG::put(char const*) | |
| | | | + 0.09% TrackedOp::mark_event(char const*, utime_t) | |
| | | | | + 0.01% void std::vector<TrackedOp::Event, std::allocator<TrackedOp::Event> >::emplace_back<TrackedOp::Event>(TrackedOp::Event&&) | |
| | | | | + 0.02% Mutex::Lock(bool) | |
| | | | | | + 0.01% pthread_mutex_lock | |
| | | | | + 0.04% Mutex::Unlock() | |
| | | | | + 0.04% __pthread_mutex_unlock | |
| | | | + 0.01% ceph_clock_now() | |
| | | | | + 0.01% __clock_gettime | |
| | | | | + 0.01% #### | |
| | | | | + 0.01% #### | |
| | | | + 0.01% operator delete(void*) | |
| | | | + 0.01% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | + 93.25% PG::lock(bool) const | |
| | | | + 0.01% ceph::logging::SubsystemMap::should_gather(unsigned int, int) | |
| | | | + 93.24% Mutex::Lock(bool) | |
| | | | + 93.21% pthread_mutex_lock | |
| | | | + 93.20% _L_lock_812 | |
| | | | + 93.20% __lll_lock_wait | |
| | | + 0.01% operator delete(void*) | |
| | | + 0.01% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | + 0.08% Mutex::Unlock() | |
| | + 0.07% __pthread_mutex_unlock | |
| | + 0.07% _L_unlock_713 | |
| | + 0.07% __lll_unlock_wake | |
| + 4.24% C_ContextsBase<Context, Context>::complete(int) | |
| | + 4.23% void finish_contexts<Context>(CephContext*, std::list<Context*, std::allocator<Context*> >&, int) | |
| | + 4.00% Context::complete(int) | |
| | | + 0.44% PG::C_UpdateLastRollbackInfoTrimmedToApplied::finish(int) | |
| | | | + 0.43% PG::lock(bool) const | |
| | | | + 0.42% Mutex::Lock(bool) | |
| | | | + 0.42% pthread_mutex_lock | |
| | | | + 0.41% _L_lock_812 | |
| | | | + 0.41% __lll_lock_wait | |
| | | + 3.52% PrimaryLogPG::BlessedContext::finish(int) | |
| | | | + 3.35% Context::complete(int) | |
| | | | | + 3.35% ReplicatedBackend::op_applied(ReplicatedBackend::InProgressOp*) | |
| | | | | + 1.69% Context::complete(int) | |
| | | | | | + 1.69% PrimaryLogPG::repop_all_applied(PrimaryLogPG::RepGather*) | |
| | | | | | + 1.69% PrimaryLogPG::eval_repop(PrimaryLogPG::RepGather*) | |
| | | | | | + 0.29% PG::publish_stats_to_osd() | |
| | | | | | | + 0.01% PG::get_osdmap() const | |
| | | | | | | + 0.02% PG::_update_blocked_by() | |
| | | | | | | + 0.07% PG::_update_calc_stats() | |
| | | | | | | | + 0.01% std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() | |
| | | | | | | | + 0.04% PG::get_osdmap() const | |
| | | | | | | | + 0.01% std::_Rb_tree<long, std::pair<long const, pg_pool_t>, std::_Select1st<std::pair<long const, pg_pool_t> >, std::less<long>, mempool::pool_allocator<(mempool::pool_index_t)15, std::pair<long const, pg_pool_t> > >::find(long const&) const | |
| | | | | | | + 0.03% pg_stat_t::operator=(pg_stat_t const&) | |
| | | | | | | | + 0.02% std::vector<int, std::allocator<int> >::operator=(std::vector<int, std::allocator<int> > const&) | |
| | | | | | | + 0.01% object_stat_sum_t::add(object_stat_sum_t const&) | |
| | | | | | | + 0.01% operator==(pg_stat_t const&, pg_stat_t const&) | |
| | | | | | | + 0.02% Mutex::Lock(bool) | |
| | | | | | | + 0.02% Mutex::Unlock() | |
| | | | | | | | + 0.02% __pthread_mutex_unlock | |
| | | | | | | + 0.03% __memmove_ssse3 | |
| | | | | | | + 0.01% trunc | |
| | | | | | | + 0.03% tc_new | |
| | | | | | + 0.01% std::_Function_base::_Base_manager<PrimaryLogPG::execute_ctx(PrimaryLogPG::OpContext*)::{lambda()#2}>::_M_manager(std::_Any_data&, std::_Function_base::_Base_manager<PrimaryLogPG::execute_ctx(PrimaryLogPG::OpContext*)::{lambda()#2}> const&, std::_Manager_operation) | |
| | | | | | | + 0.01% operator delete(void*) | |
| | | | | | + 1.07% PrimaryLogPG::remove_repop(PrimaryLogPG::RepGather*) | |
| | | | | | | + 0.01% std::_Function_base::_Base_manager<PrimaryLogPG::execute_ctx(PrimaryLogPG::OpContext*)::{lambda()#3}>::_M_manager(std::_Any_data&, std::_Function_base::_Base_manager<PrimaryLogPG::execute_ctx(PrimaryLogPG::OpContext*)::{lambda()#3}> const&, std::_Manager_operation) | |
| | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | + 0.51% std::_Function_handler<void (), PrimaryLogPG::execute_ctx(PrimaryLogPG::OpContext*)::{lambda()#3}>::_M_invoke(std::_Any_data const&) | |
| | | | | | | | + 0.01% TrackedOp::put() | |
| | | | | | | | + 0.46% PrimaryLogPG::OpContext::~OpContext() | |
| | | | | | | | + 0.03% hobject_t::~hobject_t() | |
| | | | | | | | | + 0.02% std::string::_Rep::_M_dispose(std::allocator<char> const&) | |
| | | | | | | | + 0.11% pg_log_entry_t::~pg_log_entry_t() | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | | + 0.06% std::string::_Rep::_M_dispose(std::allocator<char> const&) | |
| | | | | | | | + 0.01% std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() | |
| | | | | | | | + 0.07% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned long const, unsigned long> >*) | |
| | | | | | | | | + 0.05% operator delete(void*) | |
| | | | | | | | | + 0.03% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | | | | | | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.04% SnapSet::~SnapSet() | |
| | | | | | | | | + 0.01% std::_Rb_tree<snapid_t, std::pair<snapid_t const, interval_set<unsigned long> >, std::_Select1st<std::pair<snapid_t const, interval_set<unsigned long> > >, std::less<snapid_t>, std::allocator<std::pair<snapid_t const, interval_set<unsigned long> > > >::_M_erase(std::_Rb_tree_node<std::pair<snapid_t const, interval_set<unsigned long> > >*) | |
| | | | | | | | + 0.08% object_info_t::~object_info_t() | |
| | | | | | | | | + 0.07% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned long const, unsigned long> >*) | |
| | | | | | | | | + 0.05% operator delete(void*) | |
| | | | | | | | | + 0.04% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | | | | | | | + 0.04% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.09% operator delete(void*) | |
| | | | | | | | + 0.04% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | | | | | | + 0.04% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.04% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.04% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.04% std::function<void ()>::operator()() const | |
| | | | | | | + 0.23% PrimaryLogPG::release_object_locks(ObcLockManager&) | |
| | | | | | | | + 0.01% hobject_t::~hobject_t() | |
| | | | | | | | | + 0.01% std::string::_Rep::_M_dispose(std::allocator<char> const&) | |
| | | | | | | | + 0.10% hobject_t::hobject_t(hobject_t const&) | |
| | | | | | | | | + 0.09% std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) | |
| | | | | | | | + 0.01% PG::requeue_ops(std::list<boost::intrusive_ptr<OpRequest>, std::allocator<boost::intrusive_ptr<OpRequest> > >&) | |
| | | | | | | | + 0.02% std::_Rb_tree<hobject_t, std::pair<hobject_t const, ObcLockManager::ObjectLockState>, std::_Select1st<std::pair<hobject_t const, ObcLockManager::ObjectLockState> >, std::less<hobject_t>, std::allocator<std::pair<hobject_t const, ObcLockManager::ObjectLockState> > >::_M_erase(std::_Rb_tree_node<std::pair<hobject_t const, ObcLockManager::ObjectLockState> >*) | |
| | | | | | | | | + 0.01% std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() | |
| | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | + 0.03% std::_List_base<std::pair<hobject_t, std::list<boost::intrusive_ptr<OpRequest>, std::allocator<boost::intrusive_ptr<OpRequest> > > >, std::allocator<std::pair<hobject_t, std::list<boost::intrusive_ptr<OpRequest>, std::allocator<boost::intrusive_ptr<OpRequest> > > > > >::_M_clear() | |
| | | | | | | | | + 0.01% hobject_t::~hobject_t() | |
| | | | | | | | | | + 0.01% std::string::_Rep::_M_dispose(std::allocator<char> const&) | |
| | | | | | | | | + 0.02% operator delete(void*) | |
| | | | | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% std::__detail::_List_node_base::_M_reverse() | |
| | | | | | | | + 0.02% std::_Rb_tree_increment(std::_Rb_tree_node_base*) | |
| | | | | | | | + 0.01% tc_new | |
| | | | | | | + 0.02% PerfCounters::dec(int, unsigned long) | |
| | | | | | | + 0.27% operator delete(void*) | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.24% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.24% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.11% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.07% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.07% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | | + 0.01% madvise | |
| | | | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | | | + 0.04% SpinLock::SlowLock() | |
| | | | | | | | + 0.04% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | + 0.20% std::_Function_handler<void (), PrimaryLogPG::execute_ctx(PrimaryLogPG::OpContext*)::{lambda()#2}>::_M_invoke(std::_Any_data const&) | |
| | | | | | | + 0.02% RefCountedObject::put() const | |
| | | | | | | + 0.14% PrimaryLogPG::do_osd_op_effects(PrimaryLogPG::OpContext*, boost::intrusive_ptr<Connection> const&) | |
| | | | | | | | + 0.01% RefCountedObject::get() | |
| | | | | | | | + 0.01% RefCountedObject::put() const | |
| | | | | | | | + 0.05% std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_add_ref_copy() | |
| | | | | | | | + 0.01% PrimaryLogPG::complete_disconnect_watches(std::shared_ptr<ObjectContext>, std::list<PrimaryLogPG::watch_disconnect_t, std::allocator<PrimaryLogPG::watch_disconnect_t> > const&) | |
| | | | | | | | + 0.02% Mutex::Lock(bool) | |
| | | | | | | | | + 0.02% pthread_mutex_lock | |
| | | | | | | | + 0.01% RefCountedObject::get() const | |
| | | | | | | + 0.01% RefCountedObject::get() const | |
| | | | | | + 0.01% std::function<void ()>::operator()() const | |
| | | | | | + 0.04% PG::calc_min_last_complete_ondisk() | |
| | | | | | | + 0.01% std::_Rb_tree_increment(std::_Rb_tree_node_base*) | |
| | | | | | + 0.01% operator delete(void*) | |
| | | | | + 0.05% std::_Rb_tree<pg_shard_t, pg_shard_t, std::_Identity<pg_shard_t>, std::less<pg_shard_t>, std::allocator<pg_shard_t> >::erase(pg_shard_t const&) | |
| | | | | | + 0.04% std::_Rb_tree<pg_shard_t, pg_shard_t, std::_Identity<pg_shard_t>, std::less<pg_shard_t>, std::allocator<pg_shard_t> >::_M_erase(std::_Rb_tree_node<pg_shard_t>*) | |
| | | | | | | + 0.04% operator delete(void*) | |
| | | | | | | + 0.03% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | | | | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.01% std::_Rb_tree<pg_shard_t, pg_shard_t, std::_Identity<pg_shard_t>, std::less<pg_shard_t>, std::allocator<pg_shard_t> >::equal_range(pg_shard_t const&) | |
| | | | | + 0.01% PrimaryLogPG::op_applied(eversion_t const&) | |
| | | | | | + 0.01% operator==(hobject_t const&, hobject_t const&) | |
| | | | | + 0.09% C_OSD_RepopApplied::~C_OSD_RepopApplied() | |
| | | | | | + 0.01% PG::put(char const*) | |
| | | | | | + 0.03% intrusive_ptr_release(PrimaryLogPG::RepGather*) | |
| | | | | | | + 0.01% hobject_t::~hobject_t() | |
| | | | | | | | + 0.01% std::string::_Rep::_M_dispose(std::allocator<char> const&) | |
| | | | | | | + 0.02% TrackedOp::put() | |
| | | | | | | + 0.01% std::_Rb_tree<hobject_t, std::pair<hobject_t const, ObcLockManager::ObjectLockState>, std::_Select1st<std::pair<hobject_t const, ObcLockManager::ObjectLockState> >, std::less<hobject_t>, std::allocator<std::pair<hobject_t const, ObcLockManager::ObjectLockState> > >::_M_erase(std::_Rb_tree_node<std::pair<hobject_t const, ObcLockManager::ObjectLockState> >*) | |
| | | | | | + 0.05% operator delete(void*) | |
| | | | | | + 0.01% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.04% TrackedOp::mark_event(char const*, utime_t) | |
| | | | | | + 0.03% Mutex::Unlock() | |
| | | | | | + 0.03% __pthread_mutex_unlock | |
| | | | | + 1.43% std::_Rb_tree<unsigned long, std::pair<unsigned long const, ReplicatedBackend::InProgressOp>, std::_Select1st<std::pair<unsigned long const, ReplicatedBackend::InProgressOp> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, ReplicatedBackend::InProgressOp> > >::erase(unsigned long const&) | |
| | | | | | + 0.10% std::_Rb_tree<unsigned long, std::pair<unsigned long const, ReplicatedBackend::InProgressOp>, std::_Select1st<std::pair<unsigned long const, ReplicatedBackend::InProgressOp> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, ReplicatedBackend::InProgressOp> > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned long const, ReplicatedBackend::InProgressOp> >*) | |
| | | | | | | + 0.10% OpTracker::unregister_inflight_op(TrackedOp*) | |
| | | | | | | + 0.01% OpHistory::insert(utime_t, boost::intrusive_ptr<TrackedOp>) | |
| | | | | | | | + 0.01% OpHistory::cleanup(utime_t) | |
| | | | | | | | + 0.01% std::_Rb_tree<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> >, std::pair<utime_t, boost::intrusive_ptr<TrackedOp> >, std::_Identity<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> > >, std::less<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> > >, std::allocator<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> > > >::erase(std::pair<utime_t, boost::intrusive_ptr<TrackedOp> > const&) | |
| | | | | | | | + 0.01% std::_Rb_tree<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> >, std::pair<utime_t, boost::intrusive_ptr<TrackedOp> >, std::_Identity<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> > >, std::less<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> > >, std::allocator<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> > > >::_M_erase_aux(std::_Rb_tree_const_iterator<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> > >) | |
| | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | + 0.01% Mutex::Lock(bool) | |
| | | | | | | | + 0.01% pthread_mutex_lock | |
| | | | | | | + 0.06% OpRequest::_unregistered() | |
| | | | | | | | + 0.03% MOSDOp::clear_buffers() | |
| | | | | | | | | + 0.03% OSDOp::clear_data(std::vector<OSDOp, std::allocator<OSDOp> >&) | |
| | | | | | | | | + 0.01% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | + 0.02% ceph::buffer::list::clear() | |
| | | | | | | | | + 0.01% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | | | + 0.01% ceph::buffer::raw_posix_aligned::~raw_posix_aligned() | |
| | | | | | | | | | + 0.01% tc_free | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::operator=(ceph::buffer::ptr&&) | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | + 0.02% Throttle::put(long) | |
| | | | | | | | + 0.01% PerfCounters::inc(int, unsigned long) | |
| | | | | | | | + 0.01% pthread_mutex_lock | |
| | | | | | | + 0.02% OpRequest::~OpRequest() | |
| | | | | | | + 0.01% RefCountedObject::put() const | |
| | | | | | | | + 0.01% MOSDOp::~MOSDOp() | |
| | | | | | | | + 0.01% Message::~Message() | |
| | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | + 0.01% Mutex::~Mutex() | |
| | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | + 0.01% operator delete(void*) | |
| | | | | | + 1.29% std::_Rb_tree<unsigned long, std::pair<unsigned long const, ReplicatedBackend::InProgressOp>, std::_Select1st<std::pair<unsigned long const, ReplicatedBackend::InProgressOp> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, ReplicatedBackend::InProgressOp> > >::_M_erase_aux(std::_Rb_tree_const_iterator<std::pair<unsigned long const, ReplicatedBackend::InProgressOp> >) | |
| | | | | | + 0.04% TrackedOp::put() | |
| | | | | | | + 0.03% TrackedOp::mark_event(char const*, utime_t) | |
| | | | | | | | + 0.01% void std::vector<TrackedOp::Event, std::allocator<TrackedOp::Event> >::emplace_back<TrackedOp::Event>(TrackedOp::Event&&) | |
| | | | | | | | + 0.01% Mutex::Lock(bool) | |
| | | | | | | | + 0.01% pthread_mutex_lock | |
| | | | | | | + 0.01% ceph_clock_now() | |
| | | | | | | + 0.01% __clock_gettime | |
| | | | | | | + 0.01% #### | |
| | | | | | | + 0.01% #### | |
| | | | | | + 1.21% OpTracker::unregister_inflight_op(TrackedOp*) | |
| | | | | | | + 0.01% TrackedOp::put() | |
| | | | | | | + 0.21% OpHistory::insert(utime_t, boost::intrusive_ptr<TrackedOp>) | |
| | | | | | | | + 0.07% OpHistory::cleanup(utime_t) | |
| | | | | | | | | + 0.02% std::_Rb_tree<std::pair<double, boost::intrusive_ptr<TrackedOp> >, std::pair<double, boost::intrusive_ptr<TrackedOp> >, std::_Identity<std::pair<double, boost::intrusive_ptr<TrackedOp> > >, std::less<std::pair<double, boost::intrusive_ptr<TrackedOp> > >, std::allocator<std::pair<double, boost::intrusive_ptr<TrackedOp> > > >::_M_erase_aux(std::_Rb_tree_const_iterator<std::pair<double, boost::intrusive_ptr<TrackedOp> > >) | |
| | | | | | | | | | + 0.01% TrackedOp::put() | |
| | | | | | | | | | + 0.01% std::_Rb_tree_rebalance_for_erase(std::_Rb_tree_node_base*, std::_Rb_tree_node_base&) | |
| | | | | | | | | + 0.03% std::_Rb_tree<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> >, std::pair<utime_t, boost::intrusive_ptr<TrackedOp> >, std::_Identity<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> > >, std::less<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> > >, std::allocator<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> > > >::erase(std::pair<utime_t, boost::intrusive_ptr<TrackedOp> > const&) | |
| | | | | | | | | + 0.01% std::_Rb_tree<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> >, std::pair<utime_t, boost::intrusive_ptr<TrackedOp> >, std::_Identity<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> > >, std::less<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> > >, std::allocator<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> > > >::equal_range(std::pair<utime_t, boost::intrusive_ptr<TrackedOp> > const&) | |
| | | | | | | | | + 0.01% std::_Rb_tree_increment(std::_Rb_tree_node_base*) | |
| | | | | | | | + 0.02% std::pair<std::_Rb_tree_iterator<std::pair<double, boost::intrusive_ptr<TrackedOp> > >, bool> std::_Rb_tree<std::pair<double, boost::intrusive_ptr<TrackedOp> >, std::pair<double, boost::intrusive_ptr<TrackedOp> >, std::_Identity<std::pair<double, boost::intrusive_ptr<TrackedOp> > >, std::less<std::pair<double, boost::intrusive_ptr<TrackedOp> > >, std::allocator<std::pair<double, boost::intrusive_ptr<TrackedOp> > > >::_M_insert_unique<std::pair<double, boost::intrusive_ptr<TrackedOp> > >(std::pair<double, boost::intrusive_ptr<TrackedOp> >&&) | |
| | | | | | | | + 0.03% std::pair<std::_Rb_tree_iterator<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> > >, bool> std::_Rb_tree<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> >, std::pair<utime_t, boost::intrusive_ptr<TrackedOp> >, std::_Identity<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> > >, std::less<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> > >, std::allocator<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> > > >::_M_insert_unique<std::pair<utime_t, boost::intrusive_ptr<TrackedOp> > >(std::pair<utime_t, boost::intrusive_ptr<TrackedOp> >&&) | |
| | | | | | | | + 0.04% Mutex::Lock(bool) | |
| | | | | | | | | + 0.03% pthread_mutex_lock | |
| | | | | | | | + 0.01% Mutex::Unlock() | |
| | | | | | | | + 0.01% __pthread_mutex_unlock | |
| | | | | | | + 0.02% Mutex::Lock(bool) | |
| | | | | | | | + 0.01% pthread_mutex_lock | |
| | | | | | | + 0.03% Mutex::Unlock() | |
| | | | | | | | + 0.03% __pthread_mutex_unlock | |
| | | | | | | + 0.01% ceph_clock_now() | |
| | | | | | | | + 0.01% __clock_gettime | |
| | | | | | | | + 0.01% #### | |
| | | | | | | + 0.38% OpRequest::_unregistered() | |
| | | | | | | | + 0.09% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | + 0.05% ceph::buffer::ptr::release() | |
| | | | | | | | | + 0.02% operator delete(void*) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.02% RefCountedObject::put() const | |
| | | | | | | | + 0.12% MOSDOp::clear_buffers() | |
| | | | | | | | | + 0.12% OSDOp::clear_data(std::vector<OSDOp, std::allocator<OSDOp> >&) | |
| | | | | | | | | + 0.02% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | + 0.07% ceph::buffer::list::clear() | |
| | | | | | | | | | + 0.05% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | | + 0.02% ceph::buffer::ptr::release() | |
| | | | | | | | | | | | + 0.01% ceph::buffer::raw_posix_aligned::~raw_posix_aligned() | |
| | | | | | | | | | | | + 0.01% mempool::pool_t::adjust_count(long, long) | |
| | | | | | | | | | | | + 0.01% tc_free | |
| | | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::operator=(ceph::buffer::ptr&&) | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::operator=(ceph::buffer::ptr&&) | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | + 0.01% ceph::buffer::ptr::operator=(ceph::buffer::ptr&&) | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | + 0.07% Throttle::put(long) | |
| | | | | | | | + 0.01% PerfCounters::inc(int, unsigned long) | |
| | | | | | | | + 0.01% PerfCounters::set(int, unsigned long) | |
| | | | | | | | + 0.04% pthread_mutex_lock | |
| | | | | | | + 0.49% OpRequest::~OpRequest() | |
| | | | | | | | + 0.01% _init | |
| | | | | | | | + 0.26% RefCountedObject::put() const | |
| | | | | | | | | + 0.24% MOSDOp::~MOSDOp() | |
| | | | | | | | | + 0.02% Message::~Message() | |
| | | | | | | | | | + 0.02% Throttle::put(long) | |
| | | | | | | | | | + 0.01% pthread_mutex_lock | |
| | | | | | | | | | + 0.01% __pthread_mutex_unlock | |
| | | | | | | | | + 0.02% std::string::_Rep::_M_dispose(std::allocator<char> const&) | |
| | | | | | | | | + 0.20% operator delete(void*) | |
| | | | | | | | | + 0.03% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | | | | | | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.13% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.13% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.07% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.05% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | + 0.04% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | | + 0.01% madvise | |
| | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.06% Mutex::~Mutex() | |
| | | | | | | | | + 0.02% operator delete(void*) | |
| | | | | | | | | + 0.02% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.15% operator delete(void*) | |
| | | | | | | | + 0.05% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | | | | | | + 0.05% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.10% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.10% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.05% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.03% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.03% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | + 0.01% madvise | |
| | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.03% __pthread_rwlock_rdlock | |
| | | | | | | + 0.01% pthread_rwlock_unlock | |
| | | | | | + 0.03% std::_Rb_tree_rebalance_for_erase(std::_Rb_tree_node_base*, std::_Rb_tree_node_base&) | |
| | | | | | + 0.01% operator delete(void*) | |
| | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | + 0.02% ceph_clock_now() | |
| | | | | | + 0.02% __clock_gettime | |
| | | | | | + 0.01% #### | |
| | | | | | + 0.01% #### | |
| | | | | + 0.02% operator delete(void*) | |
| | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.15% PG::lock(bool) const | |
| | | | | + 0.14% Mutex::Lock(bool) | |
| | | | | + 0.14% pthread_mutex_lock | |
| | | | | + 0.14% _L_lock_812 | |
| | | | | + 0.14% __lll_lock_wait | |
| | | | + 0.01% operator delete(void*) | |
| | | + 0.04% Mutex::Unlock() | |
| | | + 0.04% __pthread_mutex_unlock | |
| | | + 0.02% _L_unlock_713 | |
| | | + 0.02% __lll_unlock_wake | |
| | + 0.02% PG::C_UpdateLastRollbackInfoTrimmedToApplied::~C_UpdateLastRollbackInfoTrimmedToApplied() | |
| | | + 0.02% PG::put(char const*) | |
| | + 0.01% std::__detail::_List_node_base::swap(std::__detail::_List_node_base&, std::__detail::_List_node_base&) | |
| | + 0.13% operator delete(void*) | |
| | + 0.07% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | + 0.07% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | + 0.02% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | + 0.02% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | + 0.01% madvise | |
| | + 0.01% SpinLock::SlowLock() | |
| | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| + 0.45% pthread_cond_wait | |
| + 0.05% operator delete(void*) | |
| + 0.05% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | + 0.05% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| + 0.01% tcmalloc::DLL_Remove(tcmalloc::Span*) | |
+ 0.02% __clock_getres | |
+ 0.01% __memmove_chk_ssse3 | |
+ 0.01% __wcscpy_ssse3 | |
+ 0.01% std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*) | |
+ 0.01% std::string::_Rep::_M_dispose(std::allocator<char> const&) [clone .part.12] | |
+ 0.01% __pthread_rwlock_destroy | |
+ 0.01% tcmalloc::CentralFreeList::Init(unsigned long) | |
+ 0.01% tcmalloc::PageHeap::CommitSpan(tcmalloc::Span*) | |
+ 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
+ 0.01% tcmalloc::ThreadCache::Cleanup() | |
+ 0.01% #### | |
+ 0.01% #### | |
| + 0.01% std::string::_S_construct_aux_2(unsigned long, char, std::allocator<char> const&) | |
+ 0.01% #### | |
| + 0.01% void boost::intrusive::detail::destructor_impl<boost::intrusive::generic_hook<(boost::intrusive::algo_types)0, boost::intrusive::list_node_traits<void*>, boost::intrusive::member_tag, (boost::intrusive::link_mode_type)1, (boost::intrusive::base_hook_type)0> >(boost::intrusive::generic_hook<(boost::intrusive::algo_types)0, boost::intrusive::list_node_traits<void*>, boost::intrusive::member_tag, (boost::intrusive::link_mode_type)1, (boost::intrusive::base_hook_type)0>&, boost::intrusive::detail::link_dispatch<(boost::intrusive::link_mode_type)1>) [clone .isra.470] | |
+ 0.01% #### | |
| + 0.01% _L_unlock_32 | |
+ 0.01% #### | |
+ 0.01% PG::requeue_op(boost::intrusive_ptr<OpRequest>) | |
Thread: 21392 (bstore_kv_sync) - 19934 samples, time suspended=1650ms | |
+ 0.01% #### | |
| + 0.01% ceph::buffer::ptr::ptr(ceph::buffer::ptr&&) | |
+ 0.01% #### | |
| + 0.01% tc_realloc | |
+ 0.01% virtual thunk to boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::bad_get> >::clone() const | |
+ 0.01% request_redirect_t::~request_redirect_t() | |
+ 0.01% std::_Deque_base<BlueStore::TransContext*, std::allocator<BlueStore::TransContext*> >::~_Deque_base() | |
+ 0.01% RocksDBStore::RocksDBTransactionImpl::rm_single_key(std::string const&, std::string const&) | |
| + 0.01% rocksdb::WriteBatch::Delete(rocksdb::ColumnFamilyHandle*, rocksdb::SliceParts const&) | |
+ 0.01% std::_Sp_counted_ptr_inplace<RocksDBStore::RocksDBTransactionImpl, std::allocator<RocksDBStore::RocksDBTransactionImpl>, (__gnu_cxx::_Lock_policy)2>::~_Sp_counted_ptr_inplace() | |
+ 0.01% std::_Sp_counted_ptr_inplace<RocksDBStore::RocksDBWholeSpaceIteratorImpl, std::allocator<RocksDBStore::RocksDBWholeSpaceIteratorImpl>, (__gnu_cxx::_Lock_policy)2>::_M_destroy() | |
+ 0.01% RocksDBStore::combine_strings(std::string const&, std::string const&) | |
+ 0.01% BlueFS::_shutdown_logger() | |
+ 0.01% BlueFS::_compact_log_dump_metadata(bluefs_transaction_t*) | |
+ 0.02% BlueFS::_flush_range(BlueFS::FileWriter*, unsigned long, unsigned long) | |
+ 0.01% ceph::buffer::list::page_aligned_appender::flush() | |
+ 0.01% BlueFS::FileReader::~FileReader() | |
+ 0.01% std::_Rb_tree_iterator<std::pair<unsigned long const, boost::intrusive::list<BlueFS::File, boost::intrusive::member_hook<BlueFS::File, boost::intrusive::list_member_hook<void, void, void>, &BlueFS::File::dirty_item>, void, void, void> > > std::_Rb_tree<unsigned long, std::pair<unsigned long const, boost::intrusive::list<BlueFS::File, boost::intrusive::member_hook<BlueFS::File, boost::intrusive::list_member_hook<void, void, void>, &BlueFS::File::dirty_item>, void, void, void> >, std::_Select1st<std::pair<unsigned long const, boost::intrusive::list<BlueFS::File, boost::intrusive::member_hook<BlueFS::File, boost::intrusive::list_member_hook<void, void, void>, &BlueFS::File::dirty_item>, void, void, void> > >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, boost::intrusive::list<BlueFS::File, boost::intrusive::member_hook<BlueFS::File, boost::intrusive::list_member_hook<void, void, void>, &BlueFS::File::dirty_item>, void, void, void> > > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<unsigned long const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<unsigned long const, boost::intrusive::list<BlueFS::File, boost::intrusive::member_hook<BlueFS::File, boost::intrusive::list_member_hook<void, void, void>, &BlueFS::File::dirty_item>, void, void, void> > >, std::piecewise_construct_t const&, std::tuple<unsigned long const&>&&, std::tuple<>&&) | |
+ 0.01% bluefs_super_t::encode(ceph::buffer::list&) const | |
+ 0.02% KernelDevice::invalidate_cache(unsigned long, unsigned long) | |
+ 0.03% KernelDevice::debug_aio_link(aio_t&) | |
+ 0.01% KernelDevice::aio_submit(IOContext*) | |
| + 0.01% io_getevents | |
+ 0.01% KernelDevice::_aio_thread() | |
+ 0.01% KernelDevice::read(unsigned long, unsigned long, ceph::buffer::list*, IOContext*, bool) | |
+ 0.01% btree::btree_iterator<btree::btree_node<btree::btree_map_params<unsigned long, unsigned long, std::less<unsigned long>, mempool::pool_allocator<(mempool::pool_index_t)1, std::pair<unsigned long const, unsigned long> >, 256> >, std::pair<unsigned long const, unsigned long>&, std::pair<unsigned long const, unsigned long>*> btree::btree<btree::btree_map_params<unsigned long, unsigned long, std::less<unsigned long>, mempool::pool_allocator<(mempool::pool_index_t)1, std::pair<unsigned long const, unsigned long> >, 256> >::internal_lower_bound<btree::btree_iterator<btree::btree_node<btree::btree_map_params<unsigned long, unsigned long, std::less<unsigned long>, mempool::pool_allocator<(mempool::pool_index_t)1, std::pair<unsigned long const, unsigned long> >, 256> >, std::pair<unsigned long const, unsigned long>&, std::pair<unsigned long const, unsigned long>*> >(unsigned long const&, btree::btree_iterator<btree::btree_node<btree::btree_map_params<unsigned long, unsigned long, std::less<unsigned long>, mempool::pool_allocator<(mempool::pool_index_t)1, std::pair<unsigned long const, unsigned long> >, 256> >, std::pair<unsigned long const, unsigned long>&, std::pair<unsigned long const, unsigned long>*>) const [clone .isra.86] [clone .constprop.99] | |
+ 0.02% StupidAllocator::_insert_free(unsigned long, unsigned long) | |
+ 0.02% void std::vector<BitMapArea*, std::allocator<BitMapArea*> >::emplace_back<BitMapArea*>(BitMapArea*&&) | |
+ 0.01% ceph::buffer::ptr::ptr(ceph::buffer::ptr&&) | |
+ 0.02% ceph::buffer::ptr::swap(ceph::buffer::ptr&) | |
+ 0.02% ceph::buffer::ptr::release() | |
+ 0.02% ceph::buffer::ptr::end_c_str() | |
+ 0.02% ceph::buffer::ptr::raw_c_str() const | |
+ 0.01% ceph::buffer::list::append(ceph::buffer::ptr&&) | |
+ 0.01% ceph::buffer::list::iterator::advance(int) | |
+ 0.01% ceph::buffer::list::write(int, int, std::ostream&) const | |
+ 0.01% ceph::buffer::list::iterator::copy_in(unsigned int, char const*, bool) | |
+ 0.01% ceph::buffer::create_malloc(unsigned int) | |
+ 0.02% ceph::buffer::ptr::zero(bool) | |
+ 0.01% ceph::buffer::ptr::ptr(char const*, unsigned int) | |
+ 0.01% ceph::buffer::list::get_contiguous(unsigned int, unsigned int) | |
+ 0.01% ceph::buffer::list::rebuild_page_aligned() | |
+ 0.04% ceph::buffer::list::crc32c(unsigned int) const | |
+ 0.05% ceph::buffer::list::iterator_impl<false>::advance(int) | |
+ 0.01% ceph::buffer::raw_malloc::~raw_malloc() | |
+ 0.01% PerfCounters::get(int) const | |
+ 0.02% ceph_ioprio_string_to_class(std::string const&) | |
+ 0.01% __tcf_0 | |
+ 0.01% BackoffThrottle::put(unsigned long) | |
+ 0.01% ceph_arch_intel_probe | |
+ 0.03% crc32_iscsi_00 | |
+ 0.01% ceph_crc32c_sctp | |
+ 0.01% rocksdb::(anonymous namespace)::BatchContentClassifier::~BatchContentClassifier() | |
+ 0.01% rocksdb::WriteBatchInternal::AppendedByteSize(unsigned long, unsigned long) | |
+ 0.01% #### | |
| + 0.01% RocksDBStore::RocksDBTransactionImpl::RocksDBTransactionImpl(RocksDBStore*) | |
| + 0.01% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
+ 0.01% #### | |
| + 0.01% RocksDBStore::submit_common(rocksdb::WriteOptions&, std::shared_ptr<KeyValueDB::TransactionImpl>) | |
| + 0.01% rocksdb::DBImpl::WriteImplWALOnly(rocksdb::WriteOptions const&, rocksdb::WriteBatch*, rocksdb::WriteCallback*, unsigned long*, unsigned long, unsigned long*) | |
+ 0.01% #### | |
| + 0.01% rocksdb::DBImpl::WriteImpl(rocksdb::WriteOptions const&, rocksdb::WriteBatch*, rocksdb::WriteCallback*, unsigned long*, unsigned long, bool, unsigned long*) | |
+ 0.01% #### | |
| + 0.01% #### | |
+ 0.01% #### | |
| + 0.01% RocksDBStore::RocksDBTransactionImpl::~RocksDBTransactionImpl() | |
| + 0.01% tc_new_nothrow | |
+ 0.01% #### | |
| + 0.01% RocksDBStore::submit_common(rocksdb::WriteOptions&, std::shared_ptr<KeyValueDB::TransactionImpl>) | |
+ 0.01% #### | |
| + 0.01% std::__detail::_List_node_base::swap(std::__detail::_List_node_base&, std::__detail::_List_node_base&) | |
+ 0.01% #### | |
| + 0.01% #### | |
+ 0.01% #### | |
| + 0.01% ceph::buffer::ptr::swap(ceph::buffer::ptr&) | |
+ 0.01% #### | |
| + 0.01% RocksDBStore::create_db_dir() | |
+ 0.01% #### | |
| + 0.01% ceph::buffer::raw::is_page_aligned() | |
+ 0.01% #### | |
| + 0.01% __memset_chk_sse2 | |
+ 0.01% #### | |
| + 0.01% #### | |
+ 0.01% #### | |
| + 0.01% tc_realloc | |
+ 0.01% #### | |
| + 0.01% __pthread_mutex_unlock_usercnt | |
+ 0.01% #### | |
| + 0.01% rocksdb::DBImpl::WriteImpl(rocksdb::WriteOptions const&, rocksdb::WriteBatch*, rocksdb::WriteCallback*, unsigned long*, unsigned long, bool, unsigned long*) | |
+ 0.01% #### | |
| + 0.01% rocksdb::DBImpl::WriteImpl(rocksdb::WriteOptions const&, rocksdb::WriteBatch*, rocksdb::WriteCallback*, unsigned long*, unsigned long, bool, unsigned long*) | |
+ 0.01% #### | |
| + 0.01% RocksDBStore::RocksDBTransactionImpl::~RocksDBTransactionImpl() | |
| + 0.01% std::string::_S_construct_aux_2(unsigned long, char, std::allocator<char> const&) | |
+ 0.01% #### | |
| + 0.01% #### | |
+ 0.01% #### | |
| + 0.01% rocksdb::InternalKeyComparator::Compare(rocksdb::Slice const&, rocksdb::Slice const&) const | |
| + 0.01% ceph::buffer::ptr::ptr(ceph::buffer::ptr&&) | |
+ 0.01% #### | |
| + 0.01% ceph::buffer::raw::is_page_aligned() | |
+ 0.01% #### | |
| + 0.01% ceph::buffer::raw::is_page_aligned() | |
+ 0.01% #### | |
| + 0.01% ceph_ioprio_string_to_class(std::string const&) | |
+ 0.01% #### | |
| + 0.01% ceph::buffer::list::list(ceph::buffer::list const&) | |
+ 0.01% #### | |
| + 0.01% rocksdb::DBImpl::WriteImpl(rocksdb::WriteOptions const&, rocksdb::WriteBatch*, rocksdb::WriteCallback*, unsigned long*, unsigned long, bool, unsigned long*) | |
+ 0.01% #### | |
| + 0.01% rocksdb::DBImpl::WriteImpl(rocksdb::WriteOptions const&, rocksdb::WriteBatch*, rocksdb::WriteCallback*, unsigned long*, unsigned long, bool, unsigned long*) | |
+ 0.01% #### | |
| + 0.01% rocksdb::DBImpl::WriteImpl(rocksdb::WriteOptions const&, rocksdb::WriteBatch*, rocksdb::WriteCallback*, unsigned long*, unsigned long, bool, unsigned long*) | |
+ 0.01% #### | |
| + 0.01% KernelDevice::aio_submit(IOContext*) | |
| + 0.01% io_getevents | |
+ 0.01% #### | |
| + 0.01% BitmapFreelistManager::~BitmapFreelistManager() | |
+ 0.01% #### | |
| + 0.01% BlueFS::_pad_bl(ceph::buffer::list&) | |
+ 0.01% #### | |
| + 0.01% TCMallocImplementation::GetAllocatedSize(void const*) | |
+ 0.01% __memset_chk_sse2 | |
+ 0.05% sync | |
+ 98.13% clone | |
| + 98.13% start_thread | |
| + 98.13% BlueStore::KVSyncThread::entry() | |
| + 98.13% BlueStore::_kv_sync_thread() | |
| + 0.01% _init | |
| + 0.01% ceph::logging::SubsystemMap::should_gather(unsigned int, int) | |
| + 0.04% std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() | |
| | + 0.01% std::_Sp_counted_ptr_inplace<RocksDBStore::RocksDBTransactionImpl, std::allocator<RocksDBStore::RocksDBTransactionImpl>, (__gnu_cxx::_Lock_policy)2>::_M_dispose() | |
| | + 0.03% RocksDBStore::RocksDBTransactionImpl::~RocksDBTransactionImpl() | |
| | + 0.03% rocksdb::WriteBatch::~WriteBatch() | |
| | + 0.01% _init | |
| | + 0.01% _init | |
| | + 0.01% operator delete(void*) | |
| + 0.01% operator-(utime_t const&, utime_t const&) | |
| + 0.02% std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_add_ref_copy() | |
| + 0.25% BlueStore::_txc_applied_kv(BlueStore::TransContext*) | |
| | + 0.01% std::condition_variable::notify_all() | |
| | | + 0.01% _init | |
| | + 0.02% pthread_mutex_lock | |
| | + 0.01% __pthread_mutex_unlock | |
| + 0.01% BlueStore::_balance_bluefs_freespace(std::vector<bluestore_pextent_t, mempool::pool_allocator<(mempool::pool_index_t)4, bluestore_pextent_t> >*) | |
| | + 0.01% md_config_t::get_val_generic(std::string const&) const | |
| | + 0.01% Mutex::Lock(bool) | |
| | + 0.01% pthread_mutex_lock | |
| | + 0.01% _L_lock_870 | |
| | + 0.01% __lll_lock_wait | |
| + 0.04% std::_Deque_base<BlueStore::TransContext*, std::allocator<BlueStore::TransContext*> >::_Deque_base() | |
| | + 0.04% tc_new | |
| + 0.01% std::_Deque_base<BlueStore::TransContext*, std::allocator<BlueStore::TransContext*> >::~_Deque_base() | |
| | + 0.01% operator delete(void*) | |
| + 0.07% std::_Deque_base<BlueStore::DeferredBatch*, std::allocator<BlueStore::DeferredBatch*> >::_Deque_base() | |
| | + 0.06% tc_new | |
| + 0.06% std::_Deque_base<BlueStore::DeferredBatch*, std::allocator<BlueStore::DeferredBatch*> >::~_Deque_base() | |
| | + 0.04% operator delete(void*) | |
| + 0.03% void std::deque<BlueStore::DeferredBatch*, std::allocator<BlueStore::DeferredBatch*> >::_M_range_insert_aux<std::_Deque_iterator<BlueStore::DeferredBatch*, BlueStore::DeferredBatch*&, BlueStore::DeferredBatch**> >(std::_Deque_iterator<BlueStore::DeferredBatch*, BlueStore::DeferredBatch*&, BlueStore::DeferredBatch**>, std::_Deque_iterator<BlueStore::DeferredBatch*, BlueStore::DeferredBatch*&, BlueStore::DeferredBatch**>, std::_Deque_iterator<BlueStore::DeferredBatch*, BlueStore::DeferredBatch*&, BlueStore::DeferredBatch**>, std::forward_iterator_tag) | |
| | + 0.01% std::deque<BlueStore::DeferredBatch*, std::allocator<BlueStore::DeferredBatch*> >::_M_new_elements_at_front(unsigned long) | |
| | + 0.01% tc_new | |
| + 11.50% RocksDBStore::submit_transaction(std::shared_ptr<KeyValueDB::TransactionImpl>) | |
| | + 0.01% std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() | |
| | + 11.38% RocksDBStore::submit_common(rocksdb::WriteOptions&, std::shared_ptr<KeyValueDB::TransactionImpl>) | |
| | | + 11.36% rocksdb::DBImpl::Write(rocksdb::WriteOptions const&, rocksdb::WriteBatch*) | |
| | | + 0.01% rocksdb::DBImpl::ScheduleFlushes(rocksdb::DBImpl::WriteContext*) | |
| | | + 11.33% rocksdb::DBImpl::WriteImpl(rocksdb::WriteOptions const&, rocksdb::WriteBatch*, rocksdb::WriteCallback*, unsigned long*, unsigned long, bool, unsigned long*) | |
| | | | + 0.01% rocksdb::DBImpl::WriteCallbackStatusCheck(rocksdb::Status const&) | |
| | | | + 0.01% rocksdb::DBImpl::MemTableInsertStatusCheck(rocksdb::Status const&) | |
| | | | + 0.04% rocksdb::DBImpl::PreprocessWrite(rocksdb::WriteOptions const&, bool*, rocksdb::DBImpl::WriteContext*) | |
| | | | | + 0.01% rocksdb::DBImpl::GetMaxTotalWalSize() const | |
| | | | | + 0.01% rocksdb::WriteController::IsStopped() const | |
| | | | + 4.12% rocksdb::DBImpl::WriteToWAL(rocksdb::WriteThread::WriteGroup const&, rocksdb::log::Writer*, unsigned long*, bool, bool, unsigned long) | |
| | | | | + 0.01% rocksdb::DBImpl::MergeBatch(rocksdb::WriteThread::WriteGroup const&, rocksdb::WriteBatch*, unsigned long*) | |
| | | | | + 4.05% rocksdb::DBImpl::WriteToWAL(rocksdb::WriteBatch const&, rocksdb::log::Writer*, unsigned long*, unsigned long*) | |
| | | | | | + 4.01% rocksdb::log::Writer::AddRecord(rocksdb::Slice const&) | |
| | | | | | + 3.96% rocksdb::log::Writer::EmitPhysicalRecord(rocksdb::log::RecordType, char const*, unsigned long) | |
| | | | | | | + 0.01% rocksdb::WritableFile::Fsync() | |
| | | | | | | + 0.01% std::_Sp_counted_ptr<rocksdb::Logger*, (__gnu_cxx::_Lock_policy)2>::_M_get_deleter(std::type_info const&) | |
| | | | | | | + 0.01% BlueRocksWritableFile::GetUniqueId(char*, unsigned long) const | |
| | | | | | | + 2.10% unsigned int rocksdb::crc32c::ExtendImpl<&rocksdb::crc32c::Slow_CRC32>(unsigned int, char const*, unsigned long) | |
| | | | | | | + 0.01% rocksdb::crc32c::Extend(unsigned int, char const*, unsigned long) | |
| | | | | | | + 0.16% rocksdb::WritableFileWriter::Flush() | |
| | | | | | | | + 0.15% BlueRocksWritableFile::Flush() | |
| | | | | | | | + 0.13% BlueFS::_flush(BlueFS::FileWriter*, bool) | |
| | | | | | | | | + 0.03% ceph::buffer::ptr::c_str() | |
| | | | | | | | | | + 0.01% ceph::buffer::raw::get_data() | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::raw_length() const | |
| | | | | | | | | + 0.08% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | + 0.02% ceph::buffer::ptr::release() | |
| | | | | | | | | + 0.01% std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*) | |
| | | | | | | | | + 0.03% tc_new | |
| | | | | | | | + 0.01% pthread_mutex_lock | |
| | | | | | | | + 0.01% __pthread_mutex_unlock | |
| | | | | | | + 1.66% rocksdb::WritableFileWriter::Append(rocksdb::Slice const&) | |
| | | | | | | + 0.02% rocksdb::WritableFile::PrepareWrite(unsigned long, unsigned long) | |
| | | | | | | + 0.01% rocksdb::get_iostats_context() | |
| | | | | | | + 1.60% rocksdb::WritableFileWriter::WriteBuffered(char const*, unsigned long) | |
| | | | | | | + 1.56% BlueRocksWritableFile::Append(rocksdb::Slice const&) | |
| | | | | | | + 0.02% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | + 0.01% mempool::pool_t::adjust_count(long, long) | |
| | | | | | | | + 0.01% posix_memalign | |
| | | | | | | | + 0.01% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | + 0.01% (anonymous namespace)::do_malloc_pages(tcmalloc::ThreadCache*, unsigned long) | |
| | | | | | | | + 0.01% tcmalloc::PageHeap::New(unsigned long) | |
| | | | | | | | | + 0.01% tcmalloc::PageHeap::AllocLarge(unsigned long) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | + 1.52% __memcpy_ssse3 | |
| | | | | | + 0.01% rocksdb::ConcurrentArena::Repick() | |
| | | | | | + 0.01% rocksdb::crc32c::IsFastCrc32Supported() | |
| | | | | | + 0.01% rocksdb::WritableFileWriter::Sync(bool) | |
| | | | | + 0.03% rocksdb::WriteBatchInternal::SetSequence(rocksdb::WriteBatch*, unsigned long) | |
| | | | | | + 0.01% std::string::_M_leak_hard() | |
| | | | | + 0.03% std::string::_M_mutate(unsigned long, unsigned long, unsigned long) | |
| | | | + 0.01% rocksdb::WriteBatchInternal::Sequence(rocksdb::WriteBatch const*) | |
| | | | + 6.84% rocksdb::WriteBatchInternal::InsertInto(rocksdb::WriteThread::WriteGroup&, unsigned long, rocksdb::ColumnFamilyMemTables*, rocksdb::FlushScheduler*, bool, unsigned long, rocksdb::DB*, bool) | |
| | | | | + 0.01% rocksdb::WriteBatch::Handler::LogData(rocksdb::Slice const&) | |
| | | | | + 6.81% rocksdb::WriteBatch::Iterate(rocksdb::WriteBatch::Handler*) const | |
| | | | | | + 0.01% rocksdb::SaveValue(void*, char const*) | |
| | | | | | + 0.08% rocksdb::ReadRecordFromWriteBatch(rocksdb::Slice*, char*, unsigned int*, rocksdb::Slice*, rocksdb::Slice*, rocksdb::Slice*, rocksdb::Slice*) | |
| | | | | | + 0.01% rocksdb::WriteBatchInternal::Count(rocksdb::WriteBatch const*) | |
| | | | | | + 6.26% rocksdb::MemTableInserter::PutCF(unsigned int, rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | | | | | + 0.01% rocksdb::MemTable::ShouldFlushNow() const | |
| | | | | | | + 6.03% rocksdb::MemTable::Add(unsigned long, rocksdb::ValueType, rocksdb::Slice const&, rocksdb::Slice const&, bool, rocksdb::MemTablePostProcessInfo*) | |
| | | | | | | | + 0.01% _init | |
| | | | | | | | + 0.02% rocksdb::MemTable::KeyComparator::operator()(char const*, rocksdb::Slice const&) const | |
| | | | | | | | + 0.02% rocksdb::MemTableOptions::MemTableOptions(rocksdb::ImmutableCFOptions const&, rocksdb::MutableCFOptions const&) | |
| | | | | | | | + 0.10% rocksdb::MemTable::UpdateFlushState() | |
| | | | | | | | | + 0.07% rocksdb::MemTable::ShouldFlushNow() const | |
| | | | | | | | | + 0.02% rocksdb::AllocTracker::~AllocTracker() | |
| | | | | | | | + 0.16% rocksdb::(anonymous namespace)::SkipListRep::Allocate(unsigned long, char**) | |
| | | | | | | | | + 0.13% rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::AllocateNode(unsigned long, int) [clone .isra.79] | |
| | | | | | | | | | + 0.10% rocksdb::ConcurrentArena::AllocateAligned(unsigned long, unsigned long, rocksdb::Logger*) | |
| | | | | | | | | | + 0.01% rocksdb::Arena::AllocateAligned(unsigned long, unsigned long, rocksdb::Logger*) | |
| | | | | | | | | + 0.01% rocksdb::Random::GetTLSInstance() | |
| | | | | | | | + 0.01% rocksdb::(anonymous namespace)::SkipListRep::LookaheadIterator::SeekToLast() | |
| | | | | | | | + 4.66% void rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Insert<false>(char const*, rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Splice*, bool) | |
| | | | | | | | | + 0.01% rocksdb::InternalKeyComparator::Name() const | |
| | | | | | | | | + 0.32% rocksdb::MemTable::KeyComparator::operator()(char const*, char const*) const | |
| | | | | | | | | | + 0.23% rocksdb::InternalKeyComparator::Compare(rocksdb::Slice const&, rocksdb::Slice const&) const | |
| | | | | | | | | | + 0.01% rocksdb::get_perf_context() | |
| | | | | | | | | | + 0.14% rocksdb::(anonymous namespace)::BytewiseComparatorImpl::Compare(rocksdb::Slice const&, rocksdb::Slice const&) const | |
| | | | | | | | | | | + 0.06% __memcmp_sse4_1 | |
| | | | | | | | | | + 0.02% __wcscpy_ssse3 | |
| | | | | | | | | + 4.16% rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::RecomputeSpliceLevels(char const*, rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Splice*, int) [clone .isra.101] | |
| | | | | | | | | + 0.02% rocksdb::MemTable::KeyComparator::operator()(char const*, rocksdb::Slice const&) const | |
| | | | | | | | | + 4.07% rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::FindSpliceForLevel(char const*, rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Node*, rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Node*, int, rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Node**, rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Node**) | |
| | | | | | | | | + 3.70% rocksdb::MemTable::KeyComparator::operator()(char const*, char const*) const | |
| | | | | | | | | + 1.77% rocksdb::InternalKeyComparator::Compare(rocksdb::Slice const&, rocksdb::Slice const&) const | |
| | | | | | | | | + 0.03% rocksdb::get_perf_context() | |
| | | | | | | | | + 1.53% rocksdb::(anonymous namespace)::BytewiseComparatorImpl::Compare(rocksdb::Slice const&, rocksdb::Slice const&) const | |
| | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | + 1.40% __memcmp_sse4_1 | |
| | | | | | | | | + 0.02% __wcscpy_ssse3 | |
| | | | | | | | + 0.03% rocksdb::EncodeVarint32(char*, unsigned int) | |
| | | | | | | | + 0.01% MurmurHash64A(void const*, int, unsigned int) | |
| | | | | | | | + 0.89% __memcpy_ssse3 | |
| | | | | | | + 0.02% rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::AllocateNode(unsigned long, int) [clone .isra.79] | |
| | | | | | | + 0.02% rocksdb::(anonymous namespace)::SkipListRep::InsertWithHint(void*, void**) | |
| | | | | | | + 0.01% rocksdb::ColumnFamilyMemTablesImpl::GetMemTable() const | |
| | | | | | | + 0.08% rocksdb::ColumnFamilyMemTablesImpl::Seek(unsigned int) | |
| | | | | | | + 0.01% rocksdb::(anonymous namespace)::SetupDelay(rocksdb::WriteController*, unsigned long, unsigned long, bool, bool) | |
| | | | | | | + 0.01% rocksdb::ColumnFamilySet::GetDefault() const | |
| | | | | | | + 0.05% rocksdb::ColumnFamilySet::GetColumnFamily(unsigned int) const | |
| | | | | | | + 0.03% std::_Hashtable<unsigned int, std::pair<unsigned int const, rocksdb::ColumnFamilyData*>, std::allocator<std::pair<unsigned int const, rocksdb::ColumnFamilyData*> >, std::__detail::_Select1st, std::equal_to<unsigned int>, std::hash<unsigned int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >::_M_find_before_node(unsigned long, unsigned int const&, unsigned long) const [clone .isra.667] | |
| | | | | | + 0.39% rocksdb::MemTableInserter::DeleteCF(unsigned int, rocksdb::Slice const&) | |
| | | | | | | + 0.38% rocksdb::MemTable::Add(unsigned long, rocksdb::ValueType, rocksdb::Slice const&, rocksdb::Slice const&, bool, rocksdb::MemTablePostProcessInfo*) | |
| | | | | | | | + 0.01% rocksdb::MemTable::UpdateFlushState() | |
| | | | | | | | | + 0.01% rocksdb::MemTable::ShouldFlushNow() const | |
| | | | | | | | | + 0.01% rocksdb::AllocTracker::~AllocTracker() | |
| | | | | | | | + 0.01% rocksdb::(anonymous namespace)::SkipListRep::Allocate(unsigned long, char**) | |
| | | | | | | | | + 0.01% rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::AllocateNode(unsigned long, int) [clone .isra.79] | |
| | | | | | | | + 0.35% void rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Insert<false>(char const*, rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Splice*, bool) | |
| | | | | | | | + 0.02% rocksdb::MemTable::KeyComparator::operator()(char const*, char const*) const | |
| | | | | | | | | + 0.02% rocksdb::InternalKeyComparator::Compare(rocksdb::Slice const&, rocksdb::Slice const&) const | |
| | | | | | | | | + 0.01% rocksdb::(anonymous namespace)::BytewiseComparatorImpl::Compare(rocksdb::Slice const&, rocksdb::Slice const&) const | |
| | | | | | | | | + 0.01% __memcmp_sse4_1 | |
| | | | | | | | + 0.32% rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::RecomputeSpliceLevels(char const*, rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Splice*, int) [clone .isra.101] | |
| | | | | | | | + 0.01% rocksdb::MemTable::KeyComparator::operator()(char const*, rocksdb::Slice const&) const | |
| | | | | | | | + 0.31% rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::FindSpliceForLevel(char const*, rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Node*, rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Node*, int, rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Node**, rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Node**) | |
| | | | | | | | + 0.01% rocksdb::InternalKeyComparator::Name() const | |
| | | | | | | | + 0.28% rocksdb::MemTable::KeyComparator::operator()(char const*, char const*) const | |
| | | | | | | | + 0.15% rocksdb::InternalKeyComparator::Compare(rocksdb::Slice const&, rocksdb::Slice const&) const | |
| | | | | | | | + 0.01% rocksdb::get_perf_context() | |
| | | | | | | | + 0.10% rocksdb::(anonymous namespace)::BytewiseComparatorImpl::Compare(rocksdb::Slice const&, rocksdb::Slice const&) const | |
| | | | | | | | | + 0.08% __memcmp_sse4_1 | |
| | | | | | | | + 0.01% __wcscpy_ssse3 | |
| | | | | | | + 0.01% rocksdb::ColumnFamilyMemTablesImpl::Seek(unsigned int) | |
| | | | | | | + 0.01% rocksdb::(anonymous namespace)::SetupDelay(rocksdb::WriteController*, unsigned long, unsigned long, bool, bool) | |
| | | | | | + 0.02% rocksdb::EncodeVarint32(char*, unsigned int) | |
| | | | | | + 0.01% rocksdb::ColumnFamilyMemTablesImpl::GetLogNumber() const | |
| | | | | | + 0.01% rocksdb::ColumnFamilySet::GetColumnFamily(unsigned int) const | |
| | | | | | + 0.01% rocksdb::ColumnFamilyHandleImpl::cfd() const | |
| | | | | + 0.01% rocksdb::WriteBatchInternal::SetSequence(rocksdb::WriteBatch*, unsigned long) | |
| | | | | + 0.01% std::_Rb_tree<rocksdb::MemTable*, std::pair<rocksdb::MemTable* const, rocksdb::MemTablePostProcessInfo>, std::_Select1st<std::pair<rocksdb::MemTable* const, rocksdb::MemTablePostProcessInfo> >, std::less<rocksdb::MemTable*>, std::allocator<std::pair<rocksdb::MemTable* const, rocksdb::MemTablePostProcessInfo> > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator<std::pair<rocksdb::MemTable* const, rocksdb::MemTablePostProcessInfo> >, rocksdb::MemTable* const&) | |
| | | | + 0.01% rocksdb::WriteThread::SetState(rocksdb::WriteThread::Writer*, unsigned char) | |
| | | | + 0.03% rocksdb::WriteThread::JoinBatchGroup(rocksdb::WriteThread::Writer*) | |
| | | | | + 0.01% rocksdb::WriteThread::LinkOne(rocksdb::WriteThread::Writer*, std::atomic<rocksdb::WriteThread::Writer*>*) | |
| | | | + 0.06% rocksdb::WriteThread::EnterAsBatchGroupLeader(rocksdb::WriteThread::Writer*, rocksdb::WriteThread::WriteGroup*) | |
| | | | + 0.02% rocksdb::WriteThread::ExitAsBatchGroupLeader(rocksdb::WriteThread::WriteGroup&, rocksdb::Status) | |
| | | | + 0.06% rocksdb::InstrumentedMutex::Lock() | |
| | | | | + 0.04% rocksdb::port::Mutex::Lock() | |
| | | | | + 0.01% _init | |
| | | | | + 0.03% pthread_mutex_lock | |
| | | | | + 0.01% _L_lock_812 | |
| | | | | + 0.01% __lll_lock_wait | |
| | | | + 0.01% rocksdb::get_perf_context() | |
| | | | + 0.01% rocksdb::port::Mutex::~Mutex() | |
| | | | + 0.02% rocksdb::port::Mutex::Unlock() | |
| | | | + 0.01% __pthread_mutex_unlock | |
| | | + 0.01% rocksdb::WriteThread::CompleteFollower(rocksdb::WriteThread::Writer*, rocksdb::WriteThread::WriteGroup&) | |
| | | + 0.01% rocksdb::IOStatsContext::ToString(bool) const | |
| | + 0.04% PerfCounters::inc(int, unsigned long) | |
| | + 0.02% PerfCounters::tinc(int, utime_t, unsigned int) | |
| | + 0.05% ceph_clock_now() | |
| | + 0.05% __clock_gettime | |
| | + 0.01% #### | |
| | + 0.01% #### | |
| | + 0.01% #### | |
| | + 0.01% #### | |
| | + 0.01% #### | |
| + 23.03% RocksDBStore::submit_transaction_sync(std::shared_ptr<KeyValueDB::TransactionImpl>) | |
| | + 0.03% std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() | |
| | + 22.94% RocksDBStore::submit_common(rocksdb::WriteOptions&, std::shared_ptr<KeyValueDB::TransactionImpl>) | |
| | | + 22.91% rocksdb::DBImpl::Write(rocksdb::WriteOptions const&, rocksdb::WriteBatch*) | |
| | | + 0.02% std::_Hashtable<std::string, std::pair<std::string const, rocksdb::OptionsSanityCheckLevel>, std::allocator<std::pair<std::string const, rocksdb::OptionsSanityCheckLevel> >, std::__detail::_Select1st, std::equal_to<std::string>, std::hash<std::string>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_Hashtable<std::pair<std::string const, rocksdb::OptionsSanityCheckLevel> const*>(std::pair<std::string const, rocksdb::OptionsSanityCheckLevel> const*, std::pair<std::string const, rocksdb::OptionsSanityCheckLevel> const*, unsigned long, std::hash<std::string> const&, std::__detail::_Mod_range_hashing const&, std::__detail::_Default_ranged_hash const&, std::equal_to<std::string> const&, std::__detail::_Select1st const&, std::allocator<std::pair<std::string const, rocksdb::OptionsSanityCheckLevel> > const&) | |
| | | + 22.85% rocksdb::DBImpl::WriteImpl(rocksdb::WriteOptions const&, rocksdb::WriteBatch*, rocksdb::WriteCallback*, unsigned long*, unsigned long, bool, unsigned long*) | |
| | | | + 0.05% rocksdb::DBImpl::MarkLogsSynced(unsigned long, bool, rocksdb::Status const&) | |
| | | | | + 0.01% rocksdb::port::CondVar::SignalAll() | |
| | | | | | + 0.01% _init | |
| | | | | + 0.01% pthread_cond_signal | |
| | | | | + 0.02% pthread_cond_broadcast | |
| | | | + 0.01% rocksdb::DBImpl::WriteCallbackStatusCheck(rocksdb::Status const&) | |
| | | | + 0.02% rocksdb::DBImpl::PreprocessWrite(rocksdb::WriteOptions const&, bool*, rocksdb::DBImpl::WriteContext*) | |
| | | | | + 0.01% rocksdb::InstrumentedCondVar::Wait() | |
| | | | | + 0.01% rocksdb::port::CondVar::Wait() | |
| | | | | + 0.01% pthread_cond_wait | |
| | | | + 22.04% rocksdb::DBImpl::WriteToWAL(rocksdb::WriteThread::WriteGroup const&, rocksdb::log::Writer*, unsigned long*, bool, bool, unsigned long) | |
| | | | | + 0.01% rocksdb::DBImpl::MergeBatch(rocksdb::WriteThread::WriteGroup const&, rocksdb::WriteBatch*, unsigned long*) | |
| | | | | + 0.19% rocksdb::DBImpl::WriteToWAL(rocksdb::WriteBatch const&, rocksdb::log::Writer*, unsigned long*, unsigned long*) | |
| | | | | | + 0.18% rocksdb::log::Writer::AddRecord(rocksdb::Slice const&) | |
| | | | | | + 0.17% rocksdb::log::Writer::EmitPhysicalRecord(rocksdb::log::RecordType, char const*, unsigned long) | |
| | | | | | + 0.05% unsigned int rocksdb::crc32c::ExtendImpl<&rocksdb::crc32c::Slow_CRC32>(unsigned int, char const*, unsigned long) | |
| | | | | | + 0.04% rocksdb::WritableFileWriter::Flush() | |
| | | | | | | + 0.04% BlueRocksWritableFile::Flush() | |
| | | | | | | + 0.03% BlueFS::_flush(BlueFS::FileWriter*, bool) | |
| | | | | | | | + 0.01% ceph::buffer::ptr::c_str() | |
| | | | | | | | + 0.01% ceph::buffer::ptr::raw_length() const | |
| | | | | | | | + 0.02% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | + 0.01% pthread_mutex_lock | |
| | | | | | + 0.06% rocksdb::WritableFileWriter::Append(rocksdb::Slice const&) | |
| | | | | | + 0.05% rocksdb::WritableFileWriter::WriteBuffered(char const*, unsigned long) | |
| | | | | | + 0.03% BlueRocksWritableFile::Append(rocksdb::Slice const&) | |
| | | | | | + 0.03% __memcpy_ssse3 | |
| | | | | + 0.01% rocksdb::WriteBatchInternal::SetSequence(rocksdb::WriteBatch*, unsigned long) | |
| | | | | + 21.77% rocksdb::WritableFileWriter::Sync(bool) | |
| | | | | | + 21.72% rocksdb::WritableFileWriter::SyncInternal(bool) | |
| | | | | | | + 21.71% BlueRocksWritableFile::Sync() | |
| | | | | | | + 21.66% BlueFS::_fsync(BlueFS::FileWriter*, std::unique_lock<std::mutex>&) | |
| | | | | | | | + 13.53% BlueFS::_flush_bdev_safely(BlueFS::FileWriter*) | |
| | | | | | | | | + 0.32% std::_List_base<aio_t, std::allocator<aio_t> >::_M_clear() | |
| | | | | | | | | | + 0.29% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | | + 0.24% ceph::buffer::ptr::release() | |
| | | | | | | | | | | | + 0.21% ceph::buffer::raw_posix_aligned::~raw_posix_aligned() | |
| | | | | | | | | | | | + 0.21% tc_free | |
| | | | | | | | | | | | + 0.21% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | | | | + 0.21% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | | | | + 0.21% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | | | | + 0.21% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | | | | + 0.21% madvise | |
| | | | | | | | | | | + 0.04% operator delete(void*) | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | + 0.02% BlueFS::_claim_completed_aios(BlueFS::FileWriter*, std::list<aio_t, std::allocator<aio_t> >*) | |
| | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | + 0.01% std::__detail::_List_node_base::_M_transfer(std::__detail::_List_node_base*, std::__detail::_List_node_base*) | |
| | | | | | | | | + 12.47% BlueFS::wait_for_aio(BlueFS::FileWriter*) | |
| | | | | | | | | | + 12.46% IOContext::aio_wait() | |
| | | | | | | | | | | + 12.25% std::condition_variable::wait(std::unique_lock<std::mutex>&) | |
| | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | | + 12.24% pthread_cond_wait | |
| | | | | | | | | | | | + 0.01% __pthread_mutex_unlock_usercnt | |
| | | | | | | | | | | | + 0.01% __pthread_enable_asynccancel | |
| | | | | | | | | | | | + 0.01% __pthread_mutex_cond_lock | |
| | | | | | | | | | | | + 0.01% _L_cond_lock_789 | |
| | | | | | | | | | | | + 0.01% __lll_lock_wait | |
| | | | | | | | | | | + 0.02% pthread_mutex_lock | |
| | | | | | | | | | | + 0.18% __pthread_mutex_unlock | |
| | | | | | | | | | | + 0.18% _L_unlock_713 | |
| | | | | | | | | | | + 0.18% __lll_unlock_wake | |
| | | | | | | | | | + 0.01% ceph_clock_now() | |
| | | | | | | | | + 0.73% BlueFS::flush_bdev() | |
| | | | | | | | | + 0.73% KernelDevice::flush() | |
| | | | | | | | | + 0.04% ceph_clock_now() | |
| | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | + 0.03% __clock_gettime | |
| | | | | | | | | | + 0.01% #### | |
| | | | | | | | | | + 0.01% #### | |
| | | | | | | | | + 0.02% fdatasync | |
| | | | | | | | | + 0.64% __fdatasync_nocancel | |
| | | | | | | | | + 0.01% pthread_mutex_lock | |
| | | | | | | | + 2.93% BlueFS::_flush(BlueFS::FileWriter*, bool) | |
| | | | | | | | | + 2.91% BlueFS::_flush_range(BlueFS::FileWriter*, unsigned long, unsigned long) | |
| | | | | | | | | + 0.01% _init | |
| | | | | | | | | + 0.01% ceph::logging::SubsystemMap::should_gather(unsigned int, int) | |
| | | | | | | | | + 0.01% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | + 0.01% ceph::buffer::list::list() | |
| | | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::iterator_impl(ceph::buffer::list*, unsigned int) | |
| | | | | | | | | + 0.06% IOContext::aio_wait() | |
| | | | | | | | | | + 0.03% pthread_mutex_lock | |
| | | | | | | | | | + 0.01% __pthread_mutex_unlock | |
| | | | | | | | | + 0.01% std::map<unsigned long, boost::intrusive::list<BlueFS::File, boost::intrusive::member_hook<BlueFS::File, boost::intrusive::list_member_hook<void, void, void>, &BlueFS::File::dirty_item>, void, void, void>, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, boost::intrusive::list<BlueFS::File, boost::intrusive::member_hook<BlueFS::File, boost::intrusive::list_member_hook<void, void, void>, &BlueFS::File::dirty_item>, void, void, void> > > >::operator[](unsigned long const&) | |
| | | | | | | | | | + 0.01% std::_Rb_tree_iterator<std::pair<unsigned long const, boost::intrusive::list<BlueFS::File, boost::intrusive::member_hook<BlueFS::File, boost::intrusive::list_member_hook<void, void, void>, &BlueFS::File::dirty_item>, void, void, void> > > std::_Rb_tree<unsigned long, std::pair<unsigned long const, boost::intrusive::list<BlueFS::File, boost::intrusive::member_hook<BlueFS::File, boost::intrusive::list_member_hook<void, void, void>, &BlueFS::File::dirty_item>, void, void, void> >, std::_Select1st<std::pair<unsigned long const, boost::intrusive::list<BlueFS::File, boost::intrusive::member_hook<BlueFS::File, boost::intrusive::list_member_hook<void, void, void>, &BlueFS::File::dirty_item>, void, void, void> > >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, boost::intrusive::list<BlueFS::File, boost::intrusive::member_hook<BlueFS::File, boost::intrusive::list_member_hook<void, void, void>, &BlueFS::File::dirty_item>, void, void, void> > > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<unsigned long const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<unsigned long const, boost::intrusive::list<BlueFS::File, boost::intrusive::member_hook<BlueFS::File, boost::intrusive::list_member_hook<void, void, void>, &BlueFS::File::dirty_item>, void, void, void> > >, std::piecewise_construct_t const&, std::tuple<unsigned long const&>&&, std::tuple<>&&) | |
| | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | + 0.04% bluefs_fnode_t::seek(unsigned long, unsigned long*) | |
| | | | | | | | | + 2.20% KernelDevice::aio_submit(IOContext*) | |
| | | | | | | | | | + 2.18% aio_queue_t::submit_batch(std::_List_iterator<aio_t>, std::_List_iterator<aio_t>, unsigned short, void*, int*) | |
| | | | | | | | | | | + 2.18% io_submit | |
| | | | | | | | | | + 0.02% std::__detail::_List_node_base::_M_transfer(std::__detail::_List_node_base*, std::__detail::_List_node_base*) | |
| | | | | | | | | + 0.20% KernelDevice::aio_write(unsigned long, ceph::buffer::list&, IOContext*, bool) | |
| | | | | | | | | | + 0.01% KernelDevice::_aio_log_start(IOContext*, unsigned long, unsigned long) | |
| | | | | | | | | | + 0.02% ceph::buffer::list::claim_append(ceph::buffer::list&, unsigned int) | |
| | | | | | | | | | | + 0.01% ceph::buffer::ptr::make_shareable() | |
| | | | | | | | | | | + 0.01% std::__detail::_List_node_base::_M_transfer(std::__detail::_List_node_base*, std::__detail::_List_node_base*) | |
| | | | | | | | | | + 0.05% ceph::buffer::list::list(ceph::buffer::list&&) | |
| | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | + 0.01% ceph::buffer::ptr::swap(ceph::buffer::ptr&) | |
| | | | | | | | | | | + 0.02% ceph::buffer::list::iterator_impl<false>::iterator_impl(ceph::buffer::list*, unsigned int) | |
| | | | | | | | | | | + 0.01% std::__detail::_List_node_base::swap(std::__detail::_List_node_base&, std::__detail::_List_node_base&) | |
| | | | | | | | | | + 0.02% ceph::buffer::list::rebuild_aligned_size_and_memory(unsigned int, unsigned int) | |
| | | | | | | | | | | + 0.01% ceph::buffer::ptr::c_str() const | |
| | | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::iterator_impl(ceph::buffer::list*, unsigned int) | |
| | | | | | | | | | + 0.01% __memset_sse2 | |
| | | | | | | | | | + 0.03% tc_new | |
| | | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::raw_length() const | |
| | | | | | | | | + 0.04% ceph::buffer::list::substr_of(ceph::buffer::list const&, unsigned int, unsigned int) | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::ptr(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::operator=(ceph::buffer::ptr&&) | |
| | | | | | | | | + 0.16% ceph::buffer::list::claim_append_piecewise(ceph::buffer::list&) | |
| | | | | | | | | | + 0.09% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | | + 0.02% ceph::buffer::ptr::release() | |
| | | | | | | | | | | + 0.06% operator delete(void*) | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::operator=(ceph::buffer::ptr&&) | |
| | | | | | | | | | + 0.03% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::ptr(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::raw_length() const | |
| | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | + 0.02% ceph::buffer::ptr::zero(bool) | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::c_str() | |
| | | | | | | | | + 0.03% PerfCounters::inc(int, unsigned long) | |
| | | | | | | | | + 0.01% ceph_clock_now() | |
| | | | | | | | | | + 0.01% __clock_gettime | |
| | | | | | | | | | + 0.01% #### | |
| | | | | | | | | + 0.04% __memset_sse2 | |
| | | | | | | | + 5.17% BlueFS::_flush_and_sync_log(std::unique_lock<std::mutex>&, unsigned long, unsigned long) | |
| | | | | | | | + 0.02% _init | |
| | | | | | | | + 0.01% ceph::logging::SubsystemMap::should_gather(unsigned int, int) | |
| | | | | | | | + 0.01% ceph::buffer::list::list() | |
| | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::iterator_impl(ceph::buffer::list*, unsigned int) | |
| | | | | | | | + 0.10% BlueFS::_update_logger_stats() | |
| | | | | | | | | + 0.02% StupidAllocator::get_free() | |
| | | | | | | | | | + 0.01% pthread_mutex_lock | |
| | | | | | | | | | + 0.01% __pthread_mutex_unlock | |
| | | | | | | | | + 0.04% PerfCounters::set(int, unsigned long) | |
| | | | | | | | + 0.08% BlueFS::_pad_bl(ceph::buffer::list&) | |
| | | | | | | | | + 0.07% ceph::buffer::list::append_zero(unsigned int) | |
| | | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::ptr&&) | |
| | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | + 0.03% ceph::buffer::ptr::ptr(unsigned int) | |
| | | | | | | | | | + 0.03% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | | + 0.02% mempool::pool_t::adjust_count(long, long) | |
| | | | | | | | | | + 0.02% posix_memalign | |
| | | | | | | | | | + 0.02% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.01% tcmalloc::AlignmentForSize(unsigned long) | |
| | | | | | | | | + 0.02% __memset_sse2 | |
| | | | | | | | + 2.52% BlueFS::_flush_bdev_safely(BlueFS::FileWriter*) | |
| | | | | | | | | + 0.05% std::_List_base<aio_t, std::allocator<aio_t> >::_M_clear() | |
| | | | | | | | | | + 0.04% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | | + 0.03% ceph::buffer::ptr::release() | |
| | | | | | | | | | | | + 0.01% ceph::buffer::raw_posix_aligned::operator delete(void*) | |
| | | | | | | | | | | | + 0.02% ceph::buffer::raw_posix_aligned::~raw_posix_aligned() | |
| | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | | + 0.01% mempool::get_pool(mempool::pool_index_t) | |
| | | | | | | | | | | | + 0.01% tc_free | |
| | | | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | + 2.13% BlueFS::wait_for_aio(BlueFS::FileWriter*) | |
| | | | | | | | | | + 2.11% IOContext::aio_wait() | |
| | | | | | | | | | | + 2.02% std::condition_variable::wait(std::unique_lock<std::mutex>&) | |
| | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | | + 2.01% pthread_cond_wait | |
| | | | | | | | | | | | + 0.01% __pthread_mutex_unlock_usercnt | |
| | | | | | | | | | | | + 0.01% __pthread_enable_asynccancel | |
| | | | | | | | | | | + 0.09% __pthread_mutex_unlock | |
| | | | | | | | | | | + 0.09% _L_unlock_713 | |
| | | | | | | | | | | + 0.09% __lll_unlock_wake | |
| | | | | | | | | | + 0.01% ceph_clock_now() | |
| | | | | | | | | | + 0.01% __clock_gettime | |
| | | | | | | | | | + 0.01% #### | |
| | | | | | | | | + 0.35% BlueFS::flush_bdev() | |
| | | | | | | | | + 0.34% KernelDevice::flush() | |
| | | | | | | | | + 0.01% ceph_clock_now() | |
| | | | | | | | | | + 0.01% __clock_gettime | |
| | | | | | | | | + 0.01% fdatasync | |
| | | | | | | | | + 0.33% __fdatasync_nocancel | |
| | | | | | | | | + 0.01% __libc_enable_asynccancel | |
| | | | | | | | + 1.48% BlueFS::_flush(BlueFS::FileWriter*, bool) | |
| | | | | | | | | + 1.46% BlueFS::_flush_range(BlueFS::FileWriter*, unsigned long, unsigned long) | |
| | | | | | | | | + 0.01% ceph::logging::SubsystemMap::should_gather(unsigned int, int) | |
| | | | | | | | | + 0.03% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | + 0.03% ceph::buffer::ptr::release() | |
| | | | | | | | | | + 0.02% tc_free | |
| | | | | | | | | + 0.02% ceph::buffer::list::clear() | |
| | | | | | | | | | + 0.02% ceph::buffer::ptr::operator=(ceph::buffer::ptr&&) | |
| | | | | | | | | | + 0.02% ceph::buffer::ptr::release() | |
| | | | | | | | | + 0.02% bluefs_fnode_t::seek(unsigned long, unsigned long*) | |
| | | | | | | | | + 0.93% KernelDevice::aio_submit(IOContext*) | |
| | | | | | | | | | + 0.92% aio_queue_t::submit_batch(std::_List_iterator<aio_t>, std::_List_iterator<aio_t>, unsigned short, void*, int*) | |
| | | | | | | | | | + 0.91% io_submit | |
| | | | | | | | | + 0.36% KernelDevice::aio_write(unsigned long, ceph::buffer::list&, IOContext*, bool) | |
| | | | | | | | | | + 0.01% KernelDevice::_aio_log_start(IOContext*, unsigned long, unsigned long) | |
| | | | | | | | | | + 0.02% ceph::buffer::list::list(ceph::buffer::list&&) | |
| | | | | | | | | | | + 0.01% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::iterator_impl(ceph::buffer::list*, unsigned int) | |
| | | | | | | | | | + 0.28% ceph::buffer::list::rebuild_aligned_size_and_memory(unsigned int, unsigned int) | |
| | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | + 0.02% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | | | + 0.01% ceph::buffer::ptr::ptr(ceph::buffer::ptr const&) | |
| | | | | | | | | | | + 0.02% ceph::buffer::ptr::release() | |
| | | | | | | | | | | + 0.15% ceph::buffer::list::rebuild(ceph::buffer::ptr&) | |
| | | | | | | | | | | | + 0.04% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | | | | + 0.02% ceph::buffer::ptr::release() | |
| | | | | | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | | | | + 0.02% ceph::buffer::ptr::c_str() | |
| | | | | | | | | | | | | + 0.01% ceph::buffer::raw::get_data() | |
| | | | | | | | | | | | + 0.02% ceph::buffer::ptr::copy_in(unsigned int, unsigned int, char const*, bool) | |
| | | | | | | | | | | | + 0.01% ceph::buffer::list::invalidate_crc() | |
| | | | | | | | | | | | + 0.07% __memcpy_ssse3 | |
| | | | | | | | | | | + 0.05% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | | | | + 0.03% ceph::buffer::raw_posix_aligned::operator new(unsigned long) | |
| | | | | | | | | | | | + 0.01% mempool::pool_t::adjust_count(long, long) | |
| | | | | | | | | | | | + 0.01% mempool::get_pool(mempool::pool_index_t) | |
| | | | | | | | | | | | + 0.01% posix_memalign | |
| | | | | | | | | | | | + 0.01% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | | | | + 0.01% tcmalloc::AlignmentForSize(unsigned long) | |
| | | | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::iterator_impl(ceph::buffer::list*, unsigned int) | |
| | | | | | | | | | | + 0.02% tc_new | |
| | | | | | | | | | | + 0.02% operator delete(void*) | |
| | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | + 0.02% ceph::buffer::list::substr_of(ceph::buffer::list const&, unsigned int, unsigned int) | |
| | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::ptr(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | + 0.06% ceph::buffer::list::claim_append_piecewise(ceph::buffer::list&) | |
| | | | | | | | | + 0.03% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | + 0.02% ceph::buffer::ptr::release() | |
| | | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | + 0.02% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::ptr(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | + 0.01% tc_new | |
| | | | | | | | + 0.56% bluefs_transaction_t::op_file_update(bluefs_fnode_t const&) | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::end_c_str() | |
| | | | | | | | | | + 0.01% ceph::buffer::raw::get_data() | |
| | | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::ptr&&) | |
| | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | + 0.01% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | + 0.13% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::ptr(ceph::buffer::raw*) | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::operator=(ceph::buffer::ptr&&) | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::append(char const*, unsigned int) | |
| | | | | | | | | | + 0.02% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | + 0.02% mempool::pool_t::adjust_count(long, long) | |
| | | | | | | | | | + 0.06% posix_memalign | |
| | | | | | | | | | + 0.06% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | + 0.01% tcmalloc::AlignmentForSize(unsigned long) | |
| | | | | | | | | + 0.01% std::__detail::_List_node_base::_M_reverse() | |
| | | | | | | | + 0.05% bluefs_transaction_t::clear() | |
| | | | | | | | | + 0.03% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::operator=(ceph::buffer::ptr&&) | |
| | | | | | | | | + 0.01% std::__detail::_List_node_base::swap(std::__detail::_List_node_base&, std::__detail::_List_node_base&) | |
| | | | | | | | + 0.01% std::vector<interval_set<unsigned long>, std::allocator<interval_set<unsigned long> > >::~vector() | |
| | | | | | | | + 0.20% bluefs_transaction_t::encode(ceph::buffer::list&) const | |
| | | | | | | | | + 0.02% ceph::buffer::list::append(ceph::buffer::list const&) | |
| | | | | | | | | | + 0.02% tc_new | |
| | | | | | | | | + 0.01% ceph::buffer::list::iterator::copy_in(unsigned int, char const*, bool) | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::copy_in(unsigned int, unsigned int, char const*, bool) | |
| | | | | | | | | + 0.06% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | | | | + 0.02% ceph::buffer::ptr::append(char const*, unsigned int) | |
| | | | | | | | | | + 0.02% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | + 0.02% posix_memalign | |
| | | | | | | | | | + 0.02% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.01% tcmalloc::AlignmentForSize(unsigned long) | |
| | | | | | | | | + 0.12% ceph::buffer::list::crc32c(unsigned int) const | |
| | | | | | | | | | + 0.05% std::_Rb_tree_iterator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > > std::_Rb_tree<std::pair<unsigned long, unsigned long>, std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> >, std::_Select1st<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >, std::less<std::pair<unsigned long, unsigned long> >, std::allocator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::pair<unsigned long, unsigned long> const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >, std::piecewise_construct_t const&, std::tuple<std::pair<unsigned long, unsigned long> const&>&&, std::tuple<>&&) | |
| | | | | | | | | | | + 0.02% _init | |
| | | | | | | | | | | + 0.01% std::_Rb_tree<std::pair<unsigned long, unsigned long>, std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> >, std::_Select1st<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >, std::less<std::pair<unsigned long, unsigned long> >, std::allocator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >, std::pair<unsigned long, unsigned long> const&) | |
| | | | | | | | | | | + 0.01% std::_Rb_tree_insert_and_rebalance(bool, std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node_base&) | |
| | | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | + 0.01% ceph_crc32c_intel_fast | |
| | | | | | | | | | + 0.05% ceph_crc32c_intel_baseline | |
| | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::advance(int) | |
| | | | | | | | + 0.03% ceph::buffer::ptr::release() | |
| | | | | | | | | + 0.02% ceph::buffer::raw_combined::~raw_combined() | |
| | | | | | | | + 0.01% ceph::buffer::list::claim_append(ceph::buffer::list&, unsigned int) | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::make_shareable() | |
| | | | | | | | + 0.01% PerfCounters::set(int, unsigned long) | |
| | | | | | | | + 0.02% std::_Rb_tree_rebalance_for_erase(std::_Rb_tree_node_base*, std::_Rb_tree_node_base&) | |
| | | | | | | | + 0.01% std::condition_variable::notify_all() | |
| | | | | | | | + 0.02% tc_new | |
| | | | | | | | + 0.05% operator delete(void*) | |
| | | | | | | + 0.01% __pthread_mutex_unlock | |
| | | | | | + 0.02% rocksdb::WritableFileWriter::Flush() | |
| | | | | | + 0.01% BlueRocksWritableFile::Flush() | |
| | | | | | + 0.01% __pthread_mutex_unlock | |
| | | | | + 0.01% std::string::_M_mutate(unsigned long, unsigned long, unsigned long) | |
| | | | + 0.01% rocksdb::FlushScheduler::TakeNextColumnFamily() | |
| | | | + 0.01% rocksdb::WriteBatch::MarkWalTerminationPoint() | |
| | | | + 0.01% rocksdb::WriteBatchInternal::Sequence(rocksdb::WriteBatch const*) | |
| | | | + 0.50% rocksdb::WriteBatchInternal::InsertInto(rocksdb::WriteThread::WriteGroup&, unsigned long, rocksdb::ColumnFamilyMemTables*, rocksdb::FlushScheduler*, bool, unsigned long, rocksdb::DB*, bool) | |
| | | | | + 0.01% rocksdb::(anonymous namespace)::BatchContentClassifier::MarkRollback(rocksdb::Slice const&) | |
| | | | | + 0.01% rocksdb::WriteBatch::Handler::LogData(rocksdb::Slice const&) | |
| | | | | + 0.46% rocksdb::WriteBatch::Iterate(rocksdb::WriteBatch::Handler*) const | |
| | | | | | + 0.02% rocksdb::ReadRecordFromWriteBatch(rocksdb::Slice*, char*, unsigned int*, rocksdb::Slice*, rocksdb::Slice*, rocksdb::Slice*, rocksdb::Slice*) | |
| | | | | | + 0.01% rocksdb::WriteBatchInternal::Count(rocksdb::WriteBatch const*) | |
| | | | | | + 0.40% rocksdb::MemTableInserter::SingleDeleteCF(unsigned int, rocksdb::Slice const&) | |
| | | | | | + 0.38% rocksdb::MemTable::Add(unsigned long, rocksdb::ValueType, rocksdb::Slice const&, rocksdb::Slice const&, bool, rocksdb::MemTablePostProcessInfo*) | |
| | | | | | | + 0.01% rocksdb::PackSequenceAndType(unsigned long, rocksdb::ValueType) | |
| | | | | | | + 0.01% rocksdb::MemTable::KeyComparator::operator()(char const*, rocksdb::Slice const&) const | |
| | | | | | | + 0.01% rocksdb::MemTable::UpdateFlushState() | |
| | | | | | | | + 0.01% rocksdb::MemTable::ShouldFlushNow() const | |
| | | | | | | | + 0.01% rocksdb::AllocTracker::~AllocTracker() | |
| | | | | | | + 0.02% rocksdb::(anonymous namespace)::SkipListRep::Allocate(unsigned long, char**) | |
| | | | | | | | + 0.01% rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::AllocateNode(unsigned long, int) [clone .isra.79] | |
| | | | | | | | + 0.01% rocksdb::ConcurrentArena::AllocateAligned(unsigned long, unsigned long, rocksdb::Logger*) | |
| | | | | | | | + 0.01% rocksdb::Arena::AllocateAligned(unsigned long, unsigned long, rocksdb::Logger*) | |
| | | | | | | + 0.33% void rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Insert<false>(char const*, rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Splice*, bool) | |
| | | | | | | | + 0.03% rocksdb::MemTable::KeyComparator::operator()(char const*, char const*) const | |
| | | | | | | | | + 0.02% rocksdb::InternalKeyComparator::Compare(rocksdb::Slice const&, rocksdb::Slice const&) const | |
| | | | | | | | | | + 0.01% rocksdb::(anonymous namespace)::BytewiseComparatorImpl::Compare(rocksdb::Slice const&, rocksdb::Slice const&) const | |
| | | | | | | | | | + 0.01% __memcmp_sse4_1 | |
| | | | | | | | | + 0.01% rocksdb::(anonymous namespace)::ReverseBytewiseComparatorImpl::Compare(rocksdb::Slice const&, rocksdb::Slice const&) const | |
| | | | | | | | + 0.29% rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::RecomputeSpliceLevels(char const*, rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Splice*, int) [clone .isra.101] | |
| | | | | | | | + 0.01% rocksdb::MemTable::KeyComparator::operator()(char const*, rocksdb::Slice const&) const | |
| | | | | | | | + 0.27% rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::FindSpliceForLevel(char const*, rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Node*, rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Node*, int, rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Node**, rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Node**) | |
| | | | | | | | + 0.01% rocksdb::InternalKeyComparator::Name() const | |
| | | | | | | | + 0.22% rocksdb::MemTable::KeyComparator::operator()(char const*, char const*) const | |
| | | | | | | | + 0.14% rocksdb::InternalKeyComparator::Compare(rocksdb::Slice const&, rocksdb::Slice const&) const | |
| | | | | | | | + 0.01% rocksdb::get_perf_context() | |
| | | | | | | | + 0.07% rocksdb::(anonymous namespace)::BytewiseComparatorImpl::Compare(rocksdb::Slice const&, rocksdb::Slice const&) const | |
| | | | | | | | | + 0.05% __memcmp_sse4_1 | |
| | | | | | | | + 0.01% __wcscpy_ssse3 | |
| | | | | | | + 0.01% rocksdb::EncodeVarint32(char*, unsigned int) | |
| | | | | | | + 0.01% __memcpy_ssse3 | |
| | | | | | + 0.01% rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::AllocateNode(unsigned long, int) [clone .isra.79] | |
| | | | | | + 0.01% rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::FindSpliceForLevel(char const*, rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Node*, rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Node*, int, rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Node**, rocksdb::InlineSkipList<rocksdb::MemTableRep::KeyComparator const&>::Node**) | |
| | | | | | + 0.01% rocksdb::ColumnFamilyMemTablesImpl::GetMemTable() const | |
| | | | | + 0.02% rocksdb::WriteBatchInternal::SetSequence(rocksdb::WriteBatch*, unsigned long) | |
| | | | + 0.01% rocksdb::WriteThread::JoinBatchGroup(rocksdb::WriteThread::Writer*) | |
| | | | | + 0.01% rocksdb::WriteThread::LinkOne(rocksdb::WriteThread::Writer*, std::atomic<rocksdb::WriteThread::Writer*>*) | |
| | | | + 0.01% rocksdb::WriteThread::EnterAsBatchGroupLeader(rocksdb::WriteThread::Writer*, rocksdb::WriteThread::WriteGroup*) | |
| | | | + 0.04% rocksdb::WriteThread::ExitAsBatchGroupLeader(rocksdb::WriteThread::WriteGroup&, rocksdb::Status) | |
| | | | + 0.04% rocksdb::InstrumentedMutex::Lock() | |
| | | | | + 0.02% rocksdb::port::Mutex::Lock() | |
| | | | | + 0.01% pthread_mutex_lock | |
| | | | + 0.01% rocksdb::get_perf_context() | |
| | | | + 0.01% rocksdb::port::Mutex::Unlock() | |
| | | | + 0.01% __pthread_mutex_unlock | |
| | | + 0.01% rocksdb::InstrumentedMutex::LockInternal() | |
| | | + 0.01% rocksdb::IOStatsContext::ToString(bool) const | |
| | | + 0.01% rocksdb::port::Mutex::Lock() | |
| | + 0.01% PerfCounters::inc(int, unsigned long) | |
| | + 0.02% PerfCounters::tinc(int, utime_t, unsigned int) | |
| | + 0.03% ceph_clock_now() | |
| | + 0.03% __clock_gettime | |
| | + 0.01% #### | |
| | + 0.01% #### | |
| + 0.06% RocksDBStore::RocksDBTransactionImpl::rm_single_key(std::string const&, std::string const&) | |
| | + 0.02% std::_Hashtable<std::string, std::pair<std::string const, void*>, std::allocator<std::pair<std::string const, void*> >, std::__detail::_Select1st, std::equal_to<std::string>, std::hash<std::string>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::find(std::string const&) | |
| | + 0.05% rocksdb::WriteBatch::SingleDelete(rocksdb::ColumnFamilyHandle*, rocksdb::Slice const&) | |
| | + 0.03% rocksdb::WriteBatchInternal::SingleDelete(rocksdb::WriteBatch*, unsigned int, rocksdb::Slice const&) | |
| | | + 0.01% std::string::reserve(unsigned long) | |
| | | | + 0.01% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | + 0.01% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | + 0.01% tc_new | |
| | | + 0.02% std::string::append(char const*, unsigned long) | |
| | | + 0.01% __memcpy_ssse3 | |
| | | + 0.01% std::string::reserve(unsigned long) | |
| | | + 0.01% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | + 0.01% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | + 0.01% tc_new | |
| | + 0.01% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | + 0.01% std::string::append(std::string const&, unsigned long, unsigned long) | |
| + 0.11% RocksDBStore::get_transaction() | |
| | + 0.08% RocksDBStore::RocksDBTransactionImpl::RocksDBTransactionImpl(RocksDBStore*) | |
| | | + 0.08% rocksdb::WriteBatch::WriteBatch(unsigned long, unsigned long) | |
| | | + 0.06% std::string::reserve(unsigned long) | |
| | | | + 0.05% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | + 0.04% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | + 0.04% tc_new | |
| | | + 0.01% std::string::append(unsigned long, char) | |
| | | | + 0.01% __memset_sse2 | |
| | | + 0.01% std::string::resize(unsigned long, char) | |
| | + 0.02% std::_Sp_counted_ptr_inplace<RocksDBStore::RocksDBTransactionImpl, std::allocator<RocksDBStore::RocksDBTransactionImpl>, (__gnu_cxx::_Lock_policy)2>::_M_get_deleter(std::type_info const&) | |
| | + 0.02% tc_new | |
| + 0.04% KernelDevice::flush() | |
| | + 0.03% __fdatasync_nocancel | |
| | + 0.01% pthread_mutex_lock | |
| + 0.03% StupidAllocator::release(interval_set<unsigned long> const&) | |
| | + 0.01% pthread_mutex_lock | |
| + 0.04% PerfCounters::tinc(int, utime_t, unsigned int) | |
| + 0.03% ceph_clock_now() | |
| | + 0.03% __clock_gettime | |
| | + 0.01% #### | |
| | + 0.01% #### | |
| + 0.01% mempool::get_pool(mempool::pool_index_t) | |
| + 0.05% Throttle::put(long) | |
| | + 0.01% PerfCounters::inc(int, unsigned long) | |
| | + 0.01% PerfCounters::set(int, unsigned long) | |
| | + 0.01% pthread_mutex_lock | |
| + 62.05% std::condition_variable::wait(std::unique_lock<std::mutex>&) | |
| | + 0.01% _init | |
| | + 62.04% pthread_cond_wait | |
| | + 0.01% __pthread_mutex_cond_lock | |
| | + 0.01% _L_cond_lock_789 | |
| | + 0.01% __lll_lock_wait | |
| + 0.02% std::condition_variable::notify_one() | |
| | + 0.02% _init | |
| + 0.05% pthread_mutex_lock | |
| + 0.10% __pthread_mutex_unlock | |
| | + 0.10% _L_unlock_713 | |
| | + 0.10% __lll_unlock_wake | |
| + 0.04% operator delete(void*) | |
+ 0.02% __lll_unlock_wake_private | |
+ 0.02% __clock_getres | |
+ 0.01% __memcpy_chk_ssse3 | |
+ 0.01% std::basic_ios<wchar_t, std::char_traits<wchar_t> >::operator void*() const | |
+ 0.01% std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*) | |
+ 0.01% std::_Rb_tree_increment(std::_Rb_tree_node_base*) | |
+ 0.02% std::_Rb_tree_rotate_right(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*&) | |
+ 0.04% std::condition_variable::wait(std::unique_lock<std::mutex>&) | |
+ 0.01% std::condition_variable::notify_one() | |
+ 0.01% pthread_mutex_destroy | |
+ 0.03% __pthread_mutex_unlock_usercnt | |
+ 0.03% _L_lock_135 | |
+ 0.70% pthread_cond_signal | |
+ 0.05% pthread_cond_broadcast | |
+ 0.01% __lll_unlock_wake_private | |
+ 0.01% malloc | |
+ 0.02% tc_realloc | |
+ 0.01% tc_new_nothrow | |
+ 0.01% tc_newarray_nothrow | |
+ 0.01% tc_memalign | |
+ 0.01% #### | |
+ 0.01% #### | |
| + 0.01% std::string::_Rep::_M_refcopy() | |
+ 0.01% #### | |
| + 0.01% std::string::_Rep::_M_refcopy() | |
+ 0.01% #### | |
| + 0.01% std::string::_Rep::_M_refcopy() | |
+ 0.01% #### | |
| + 0.01% tc_realloc | |
+ 0.01% #### | |
| + 0.01% std::string::_Rep::_M_refdata() | |
+ 0.01% #### | |
| + 0.01% std::string::_S_construct_aux_2(unsigned long, char, std::allocator<char> const&) | |
+ 0.01% #### | |
+ 0.01% ceph::buffer::ptr::ptr(ceph::buffer::ptr&&) | |
Thread: 21393 (bstore_kv_final) - 19934 samples, time suspended=1263ms | |
+ 0.01% BlueStore::_txc_release_alloc(BlueStore::TransContext*) | |
+ 0.01% ceph::buffer::list::iterator::advance(int) | |
+ 0.01% ceph::buffer::list::iterator_impl<false>::advance(int) | |
+ 99.97% clone | |
| + 99.97% start_thread | |
| + 99.97% BlueStore::KVFinalizeThread::entry() | |
| + 99.97% BlueStore::_kv_finalize_thread() | |
| + 0.01% BlueStore::_reap_collections() | |
| | + 0.01% pthread_mutex_lock | |
| + 1.36% BlueStore::deferred_try_submit() | |
| | + 0.01% RefCountedObject::put() const | |
| | + 1.31% BlueStore::_deferred_submit_unlock(BlueStore::OpSequencer*) | |
| | | + 1.06% KernelDevice::aio_submit(IOContext*) | |
| | | | + 1.06% aio_queue_t::submit_batch(std::_List_iterator<aio_t>, std::_List_iterator<aio_t>, unsigned short, void*, int*) | |
| | | | + 1.06% io_submit | |
| | | + 0.14% KernelDevice::aio_write(unsigned long, ceph::buffer::list&, IOContext*, bool) | |
| | | | + 0.08% ceph::buffer::list::list(ceph::buffer::list&&) | |
| | | | | + 0.03% ceph::buffer::list::iterator_impl<false>::iterator_impl(ceph::buffer::list*, unsigned int) | |
| | | | + 0.01% ceph::buffer::list::rebuild_aligned_size_and_memory(unsigned int, unsigned int) | |
| | | | | + 0.01% ceph::buffer::ptr::c_str() const | |
| | | | + 0.01% std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*) | |
| | | | + 0.03% tc_new | |
| | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | + 0.01% ceph::buffer::ptr::release() | |
| | | + 0.04% ceph::buffer::list::claim_append(ceph::buffer::list&, unsigned int) | |
| | | | + 0.03% ceph::buffer::ptr::make_shareable() | |
| | | + 0.01% PerfCounters::inc(int, unsigned long) | |
| | | + 0.01% PerfCounters::tinc(int, utime_t, unsigned int) | |
| | | + 0.01% ceph_clock_now() | |
| | | | + 0.01% __clock_gettime | |
| | | | + 0.01% #### | |
| | | + 0.01% __pthread_mutex_unlock | |
| | + 0.01% std::vector<boost::intrusive_ptr<BlueStore::OpSequencer>, std::allocator<boost::intrusive_ptr<BlueStore::OpSequencer> > >::reserve(unsigned long) | |
| | | + 0.01% tc_new | |
| | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | + 0.01% pthread_mutex_lock | |
| | + 0.03% __pthread_mutex_unlock | |
| | | + 0.03% _L_unlock_713 | |
| | | + 0.03% __lll_unlock_wake | |
| | + 0.01% operator delete(void*) | |
| + 1.12% BlueStore::_txc_state_proc(BlueStore::TransContext*) | |
| | + 0.03% BlueStore::_txc_committed_kv(BlueStore::TransContext*) | |
| | | + 0.02% void std::vector<Context*, std::allocator<Context*> >::_M_emplace_back_aux<Context* const&>(Context* const&) | |
| | | | + 0.02% operator delete(void*) | |
| | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | + 0.01% SpinLock::SlowLock() | |
| | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | + 0.01% PerfCounters::inc(int, unsigned long) | |
| | | + 0.01% Mutex::Lock(bool) | |
| | | + 0.01% pthread_mutex_lock | |
| | | + 0.01% _L_lock_812 | |
| | | + 0.01% __lll_lock_wait | |
| | + 0.03% BlueStore::_deferred_queue(BlueStore::TransContext*) | |
| | | + 0.02% BlueStore::DeferredBatch::prepare_write(CephContext*, unsigned long, unsigned long, unsigned long, ceph::buffer::list::iterator_impl<true>&) | |
| | | + 0.01% ceph::buffer::ptr::release() | |
| | | + 0.01% ceph::buffer::list::reassign_to_mempool(int) | |
| | | + 0.01% tc_new | |
| | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | + 1.03% BlueStore::_txc_finish(BlueStore::TransContext*) | |
| | | + 0.02% RefCountedObject::get() | |
| | | + 0.01% RefCountedObject::put() const | |
| | | + 0.01% BlueStore::TransContext::operator delete(void*) | |
| | | + 0.14% BlueStore::BufferSpace::finish_write(BlueStore::Cache*, unsigned long) | |
| | | | + 0.09% std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::unique_ptr<BlueStore::Buffer, std::default_delete<BlueStore::Buffer> > >, std::_Select1st<std::pair<unsigned int const, std::unique_ptr<BlueStore::Buffer, std::default_delete<BlueStore::Buffer> > > >, std::less<unsigned int>, mempool::pool_allocator<(mempool::pool_index_t)4, std::pair<unsigned int const, std::unique_ptr<BlueStore::Buffer, std::default_delete<BlueStore::Buffer> > > > >::erase(unsigned int const&) | |
| | | | | + 0.09% std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::unique_ptr<BlueStore::Buffer, std::default_delete<BlueStore::Buffer> > >, std::_Select1st<std::pair<unsigned int const, std::unique_ptr<BlueStore::Buffer, std::default_delete<BlueStore::Buffer> > > >, std::less<unsigned int>, mempool::pool_allocator<(mempool::pool_index_t)4, std::pair<unsigned int const, std::unique_ptr<BlueStore::Buffer, std::default_delete<BlueStore::Buffer> > > > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned int const, std::unique_ptr<BlueStore::Buffer, std::default_delete<BlueStore::Buffer> > > >*) | |
| | | | | + 0.04% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | + 0.02% operator delete(void*) | |
| | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.02% BlueStore::Buffer::operator delete(void*) | |
| | | | | + 0.04% operator delete[](void*) | |
| | | | | + 0.03% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.01% pthread_mutex_lock | |
| | | | + 0.01% __pthread_mutex_unlock | |
| | | + 0.01% BlueStore::_txc_release_alloc(BlueStore::TransContext*) | |
| | | | + 0.01% StupidAllocator::release(interval_set<unsigned long> const&) | |
| | | | + 0.01% pthread_mutex_lock | |
| | | + 0.01% std::_Rb_tree<boost::intrusive_ptr<BlueStore::SharedBlob>, boost::intrusive_ptr<BlueStore::SharedBlob>, std::_Identity<boost::intrusive_ptr<BlueStore::SharedBlob> >, std::less<boost::intrusive_ptr<BlueStore::SharedBlob> >, std::allocator<boost::intrusive_ptr<BlueStore::SharedBlob> > >::_M_erase(std::_Rb_tree_node<boost::intrusive_ptr<BlueStore::SharedBlob> >*) | |
| | | | + 0.01% BlueStore::SharedBlob::put() | |
| | | | + 0.01% operator delete(void*) | |
| | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | + 0.71% BlueStore::TransContext::~TransContext() | |
| | | | + 0.51% std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() | |
| | | | | + 0.50% RocksDBStore::RocksDBTransactionImpl::~RocksDBTransactionImpl() | |
| | | | | + 0.50% rocksdb::WriteBatch::~WriteBatch() | |
| | | | | + 0.47% operator delete(void*) | |
| | | | | + 0.01% _init | |
| | | | | + 0.01% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimitLocked() | |
| | | | | + 0.45% tcmalloc::ThreadCache::Scavenge() | |
| | | | | + 0.45% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | + 0.32% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | + 0.10% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | + 0.09% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | + 0.01% madvise | |
| | | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.22% SpinLock::SlowLock() | |
| | | | | | + 0.22% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | + 0.01% RefCountedObject::put() const | |
| | | | + 0.09% std::_List_base<bluestore_deferred_op_t, std::allocator<bluestore_deferred_op_t> >::_M_clear() | |
| | | | | + 0.02% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | + 0.01% operator delete(void*) | |
| | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.05% operator delete(void*) | |
| | | | | | + 0.02% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | + 0.01% madvise | |
| | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.01% operator delete[](void*) | |
| | | | | + 0.01% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | + 0.01% std::_List_base<aio_t, std::allocator<aio_t> >::_M_clear() | |
| | | | + 0.01% std::_Rb_tree<boost::intrusive_ptr<BlueStore::SharedBlob>, boost::intrusive_ptr<BlueStore::SharedBlob>, std::_Identity<boost::intrusive_ptr<BlueStore::SharedBlob> >, std::less<boost::intrusive_ptr<BlueStore::SharedBlob> >, std::allocator<boost::intrusive_ptr<BlueStore::SharedBlob> > >::_M_erase(std::_Rb_tree_node<boost::intrusive_ptr<BlueStore::SharedBlob> >*) | |
| | | | + 0.06% std::_Rb_tree<boost::intrusive_ptr<BlueStore::Onode>, boost::intrusive_ptr<BlueStore::Onode>, std::_Identity<boost::intrusive_ptr<BlueStore::Onode> >, std::less<boost::intrusive_ptr<BlueStore::Onode> >, std::allocator<boost::intrusive_ptr<BlueStore::Onode> > >::_M_erase(std::_Rb_tree_node<boost::intrusive_ptr<BlueStore::Onode> >*) | |
| | | | | + 0.02% BlueStore::Onode::put() | |
| | | | | + 0.04% operator delete(void*) | |
| | | | | + 0.04% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | | + 0.04% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.01% pthread_cond_destroy | |
| | | | + 0.03% operator delete(void*) | |
| | | | + 0.02% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | + 0.02% PerfCounters::tinc(int, utime_t, unsigned int) | |
| | | + 0.06% operator delete[](void*) | |
| | | + 0.02% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | + 0.04% tcmalloc::ThreadCache::Scavenge() | |
| | | + 0.04% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | + 0.04% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | + 0.02% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | + 0.01% madvise | |
| | | + 0.02% SpinLock::SlowLock() | |
| | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | + 0.01% PerfCounters::tinc(int, utime_t, unsigned int) | |
| + 0.08% BlueStore::DeferredBatch::~DeferredBatch() | |
| | + 0.05% std::_List_base<aio_t, std::allocator<aio_t> >::_M_clear() | |
| | | + 0.02% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | + 0.01% operator delete(void*) | |
| | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | + 0.03% operator delete(void*) | |
| | | + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | + 0.02% SpinLock::SlowLock() | |
| | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | + 0.02% std::_Rb_tree<unsigned long, std::pair<unsigned long const, BlueStore::DeferredBatch::deferred_io>, std::_Select1st<std::pair<unsigned long const, BlueStore::DeferredBatch::deferred_io> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, BlueStore::DeferredBatch::deferred_io> > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned long const, BlueStore::DeferredBatch::deferred_io> >*) | |
| | | + 0.01% std::_Rb_tree<unsigned long, std::pair<unsigned long const, BlueStore::DeferredBatch::deferred_io>, std::_Select1st<std::pair<unsigned long const, BlueStore::DeferredBatch::deferred_io> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, BlueStore::DeferredBatch::deferred_io> > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned long const, BlueStore::DeferredBatch::deferred_io> >*) | |
| | | | + 0.01% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | + 0.01% operator delete(void*) | |
| | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | + 0.02% std::_Rb_tree<unsigned long, std::pair<unsigned long const, int>, std::_Select1st<std::pair<unsigned long const, int> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, int> > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned long const, int> >*) | |
| | + 0.01% std::_Rb_tree<unsigned long, std::pair<unsigned long const, int>, std::_Select1st<std::pair<unsigned long const, int> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, int> > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned long const, int> >*) | |
| | | + 0.01% operator delete(void*) | |
| | | + 0.01% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | + 0.01% operator delete(void*) | |
| + 97.34% std::condition_variable::wait(std::unique_lock<std::mutex>&) | |
| | + 97.34% pthread_cond_wait | |
| | + 0.67% __pthread_mutex_cond_lock | |
| | + 0.67% _L_cond_lock_789 | |
| | + 0.67% __lll_lock_wait | |
| + 0.03% operator delete(void*) | |
| + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | + 0.01% madvise | |
| + 0.01% SpinLock::SlowLock() | |
| + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
+ 0.01% pthread_cond_broadcast | |
+ 0.01% tcmalloc::CentralFreeList::Init(unsigned long) | |
+ 0.01% tcmalloc::CentralFreeList::MakeCacheSpace() | |
Thread: 21394 (bstore_mempool) - 19934 samples, time suspended=1563ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% BlueStore::MempoolThread::entry() | |
+ 100.00% pthread_cond_timedwait | |
Thread: 21395 (ms_dispatch) - 19934 samples, time suspended=1460ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% DispatchQueue::DispatchThread::entry() | |
+ 100.00% DispatchQueue::entry() | |
+ 100.00% pthread_cond_wait | |
Thread: 21396 (ms_local) - 19934 samples, time suspended=1451ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% DispatchQueue::LocalDeliveryThread::entry() | |
+ 100.00% DispatchQueue::run_local_delivery() | |
+ 100.00% pthread_cond_wait | |
Thread: 21397 (ms_dispatch) - 19934 samples, time suspended=1292ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% DispatchQueue::DispatchThread::entry() | |
+ 100.00% DispatchQueue::entry() | |
+ 100.00% pthread_cond_wait | |
Thread: 21398 (ms_local) - 19934 samples, time suspended=1294ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% DispatchQueue::LocalDeliveryThread::entry() | |
+ 100.00% DispatchQueue::run_local_delivery() | |
+ 100.00% pthread_cond_wait | |
Thread: 21399 (ms_dispatch) - 19934 samples, time suspended=1301ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% DispatchQueue::DispatchThread::entry() | |
+ 100.00% DispatchQueue::entry() | |
+ 100.00% pthread_cond_wait | |
Thread: 21400 (ms_local) - 19934 samples, time suspended=1330ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% DispatchQueue::LocalDeliveryThread::entry() | |
+ 100.00% DispatchQueue::run_local_delivery() | |
+ 100.00% pthread_cond_wait | |
Thread: 21401 (ms_dispatch) - 19934 samples, time suspended=1330ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% DispatchQueue::DispatchThread::entry() | |
+ 100.00% DispatchQueue::entry() | |
+ 100.00% pthread_cond_wait | |
Thread: 21402 (ms_local) - 19934 samples, time suspended=1363ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% DispatchQueue::LocalDeliveryThread::entry() | |
+ 100.00% DispatchQueue::run_local_delivery() | |
+ 100.00% pthread_cond_wait | |
Thread: 21403 (ms_dispatch) - 19934 samples, time suspended=1326ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% DispatchQueue::DispatchThread::entry() | |
+ 100.00% DispatchQueue::entry() | |
+ 100.00% pthread_cond_wait | |
Thread: 21404 (ms_local) - 19934 samples, time suspended=1304ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% DispatchQueue::LocalDeliveryThread::entry() | |
+ 100.00% DispatchQueue::run_local_delivery() | |
+ 100.00% pthread_cond_wait | |
Thread: 21405 (ms_dispatch) - 19934 samples, time suspended=1316ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% DispatchQueue::DispatchThread::entry() | |
+ 100.00% DispatchQueue::entry() | |
+ 100.00% pthread_cond_wait | |
Thread: 21406 (ms_local) - 19934 samples, time suspended=1367ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% DispatchQueue::LocalDeliveryThread::entry() | |
+ 100.00% DispatchQueue::run_local_delivery() | |
+ 100.00% pthread_cond_wait | |
Thread: 21407 (ms_dispatch) - 19934 samples, time suspended=1376ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% DispatchQueue::DispatchThread::entry() | |
+ 100.00% DispatchQueue::entry() | |
+ 100.00% pthread_cond_wait | |
Thread: 21408 (ms_local) - 19934 samples, time suspended=1379ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% DispatchQueue::LocalDeliveryThread::entry() | |
+ 100.00% DispatchQueue::run_local_delivery() | |
+ 100.00% pthread_cond_wait | |
Thread: 21409 (safe_timer) - 19934 samples, time suspended=1505ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% SafeTimerThread::entry() | |
+ 100.00% SafeTimer::timer_thread() | |
+ 100.00% pthread_cond_timedwait | |
Thread: 21410 (fn_anonymous) - 19934 samples, time suspended=1393ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% Finisher::finisher_thread_entry() | |
+ 100.00% pthread_cond_wait | |
Thread: 21411 (safe_timer) - 19934 samples, time suspended=1514ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% SafeTimerThread::entry() | |
+ 100.00% SafeTimer::timer_thread() | |
+ 0.01% Context::complete(int) | |
| + 0.01% FunctionContext::finish(int) | |
| + 0.01% MgrClient::send_report() | |
| + 0.01% PerfCountersCollection::with_counters(std::function<void (std::map<std::string, PerfCountersCollection::PerfCounterRef, std::less<std::string>, std::allocator<std::pair<std::string const, PerfCountersCollection::PerfCounterRef> > > const&)>) const | |
| | + 0.01% MgrClient::send_report()::{lambda(std::map<std::string, PerfCountersCollection::PerfCounterRef, std::less<std::string>, std::allocator<std::pair<std::string const, PerfCountersCollection::PerfCounterRef> > > const&)#1}::operator()(std::map<std::string, PerfCountersCollection::PerfCounterRef, std::less<std::string>, std::allocator<std::pair<std::string const, PerfCountersCollection::PerfCounterRef> > > const&) const | |
| + 0.01% MgrClient::send_pgstats() | |
| + 0.01% std::_Function_handler<MPGStats* (), OSD::init()::{lambda()#1}>::_M_invoke(std::_Any_data const&) | |
| + 0.01% std::vector<int, std::allocator<int> >::operator=(std::vector<int, std::allocator<int> > const&) | |
| + 0.01% tc_new | |
| + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| + 0.01% SpinLock::SlowLock() | |
| + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
+ 99.99% pthread_cond_timedwait | |
+ 0.01% __pthread_disable_asynccancel | |
Thread: 21412 (tp_peering) - 19934 samples, time suspended=1577ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% ThreadPool::WorkThread::entry() | |
+ 100.00% ThreadPool::worker(ThreadPool::WorkThread*) | |
+ 0.01% ThreadPool::BatchWorkQueue<PG>::_void_dequeue() | |
| + 0.01% tc_new | |
+ 99.99% pthread_cond_timedwait | |
Thread: 21413 (tp_peering) - 19934 samples, time suspended=1551ms | |
+ 100.00% clone | |
+ 100.00% start_thread | |
+ 100.00% ThreadPool::WorkThread::entry() | |
+ 100.00% ThreadPool::worker(ThreadPool::WorkThread*) | |
+ 100.00% pthread_cond_timedwait | |
Thread: 21414 (tp_osd_tp) - 19934 samples, time suspended=1880ms | |
+ 0.01% #### | |
| + 0.01% ceph::buffer::ptr::c_str() const | |
+ 0.01% std::_Rb_tree_iterator<std::string> std::_Rb_tree<std::string, std::string, std::_Identity<std::string>, std::less<std::string>, std::allocator<std::string> >::_M_insert_<std::string const&>(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::string const&) | |
+ 0.01% std::vector<std::pair<pg_notify_t, PastIntervals>, std::allocator<std::pair<pg_notify_t, PastIntervals> > >::reserve(unsigned long) | |
+ 0.01% void std::vector<std::pair<unsigned long, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > >, std::allocator<std::pair<unsigned long, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > > > >::emplace_back<std::pair<unsigned long, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > > >(std::pair<unsigned long, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > >&&) | |
+ 0.01% coll_t::encode(ceph::buffer::list&) const | |
+ 0.01% operator<<(std::ostream&, OSDOp const&) | |
+ 0.01% BlueStore::ExtentMap::allocate_spanning_blob_id() | |
+ 0.01% BlueStore::allows_journal() | |
+ 0.01% ceph::buffer::ptr::swap(ceph::buffer::ptr&) | |
+ 0.01% ceph::buffer::list::claim(ceph::buffer::list&, unsigned int) | |
+ 0.01% ceph::buffer::raw::is_page_aligned() | |
+ 0.01% crc32_iscsi_00 | |
+ 0.01% rocksdb::WriteBatchInternal::Put(rocksdb::WriteBatch*, unsigned int, rocksdb::SliceParts const&, rocksdb::SliceParts const&) | |
+ 0.01% #### | |
| + 0.01% ceph::buffer::ptr::release() | |
+ 0.01% #### | |
| + 0.01% tc_new_nothrow | |
+ 99.74% clone | |
| + 99.74% start_thread | |
| + 99.74% ShardedThreadPool::WorkThreadSharded::entry() | |
| + 99.74% ShardedThreadPool::shardedthreadpool_worker(unsigned int) | |
| + 99.74% OSD::ShardedOpWQ::_process(unsigned int, ceph::heartbeat_handle_d*) | |
| + 0.01% ceph::logging::SubsystemMap::should_gather(unsigned int, int) | |
| + 0.01% WeightedPriorityQueue<std::pair<spg_t, PGQueueable>, unsigned long>::dequeue() | |
| | + 0.01% WeightedPriorityQueue<std::pair<spg_t, PGQueueable>, unsigned long>::Queue::pop(bool) | |
| | + 0.01% WeightedPriorityQueue<std::pair<spg_t, PGQueueable>, unsigned long>::SubQueue::pop() | |
| | + 0.01% operator delete(void*) | |
| | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| + 5.78% PG::lock(bool) const | |
| | + 5.78% Mutex::Lock(bool) | |
| | + 5.78% pthread_mutex_lock | |
| | + 5.78% _L_lock_812 | |
| | + 5.78% __lll_lock_wait | |
| + 21.60% PGQueueable::RunVis::operator()(boost::intrusive_ptr<OpRequest> const&) | |
| | + 21.60% OSD::dequeue_op(boost::intrusive_ptr<PG>, boost::intrusive_ptr<OpRequest>, ThreadPool::TPHandle&) | |
| | + 21.58% PrimaryLogPG::do_request(boost::intrusive_ptr<OpRequest>&, ThreadPool::TPHandle&) | |
| | | + 21.58% PrimaryLogPG::do_op(boost::intrusive_ptr<OpRequest>&) | |
| | | + 0.03% OSDService::_check_full(OSDService::s_names, std::ostream&) const | |
| | | | + 0.01% std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*) | |
| | | | | + 0.01% std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long) | |
| | | | | + 0.01% _init | |
| | | | | + 0.01% std::basic_streambuf<char, std::char_traits<char> >::xsputn(char const*, long) | |
| | | | | + 0.01% std::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >::overflow(int) | |
| | | | + 0.02% std::ostream& std::ostream::_M_insert<double>(double) | |
| | | | + 0.02% std::ostreambuf_iterator<char, std::char_traits<char> > std::num_put<char, std::ostreambuf_iterator<char, std::char_traits<char> > >::_M_insert_float<double>(std::ostreambuf_iterator<char, std::char_traits<char> >, std::ios_base&, char, char, double) const | |
| | | | + 0.02% std::__convert_from_v(__locale_struct* const&, char*, int, char const*, ...) | |
| | | | + 0.02% vsnprintf | |
| | | | + 0.02% _IO_vfprintf | |
| | | + 0.45% ceph::buffer::list::clear() | |
| | | | + 0.45% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | + 0.45% ceph::buffer::ptr::release() | |
| | | | + 0.45% ceph::buffer::raw_combined::~raw_combined() | |
| | | | + 0.45% std::_Rb_tree<std::pair<unsigned long, unsigned long>, std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> >, std::_Select1st<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >, std::less<std::pair<unsigned long, unsigned long> >, std::allocator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > > >::_M_erase(std::_Rb_tree_node<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >*) | |
| | | | | + 0.45% operator delete(void*) | |
| | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.44% tcmalloc::ThreadCache::Scavenge() | |
| | | | | + 0.44% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | + 0.37% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | + 0.04% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | + 0.03% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | + 0.34% SpinLock::SlowLock() | |
| | | | | | + 0.34% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | + 0.01% mempool::pool_t::adjust_count(long, long) | |
| | | + 0.10% std::vector<OSDOp, std::allocator<OSDOp> >::resize(unsigned long) | |
| | | | + 0.10% std::vector<OSDOp, std::allocator<OSDOp> >::_M_default_append(unsigned long) | |
| | | | + 0.10% tc_new | |
| | | | + 0.10% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | + 0.10% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | + 0.07% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::Populate() | |
| | | | + 0.02% SpinLock::SlowLock() | |
| | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | + 0.09% PG::op_has_sufficient_caps(boost::intrusive_ptr<OpRequest>&) | |
| | | | + 0.09% OSDCap::is_capable(std::string const&, std::string const&, long, std::string const&, bool, bool, std::vector<OpRequest::ClassInfo, std::allocator<OpRequest::ClassInfo> > const&) const | |
| | | | + 0.06% std::vector<bool, std::allocator<bool> >::vector(unsigned long, bool const&, std::allocator<bool> const&) | |
| | | | | + 0.06% tc_new | |
| | | | | + 0.06% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | + 0.06% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | + 0.04% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.03% operator delete(void*) | |
| | | | + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| | | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | + 0.03% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | + 0.02% SpinLock::SlowLock() | |
| | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | + 0.01% PGLog::IndexedLog::get_request(osd_reqid_t const&, eversion_t*, unsigned long*, int*) const | |
| | | | + 0.01% std::_Hashtable<osd_reqid_t, std::pair<osd_reqid_t const, pg_log_entry_t*>, std::allocator<std::pair<osd_reqid_t const, pg_log_entry_t*> >, std::__detail::_Select1st, std::equal_to<osd_reqid_t>, std::hash<osd_reqid_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_find_before_node(unsigned long, osd_reqid_t const&, unsigned long) const | |
| | | + 0.01% PrimaryLogPG::is_degraded_or_backfilling_object(hobject_t const&) | |
| | | | + 0.01% std::_Rb_tree<hobject_t, std::pair<hobject_t const, std::list<boost::intrusive_ptr<OpRequest>, std::allocator<boost::intrusive_ptr<OpRequest> > > >, std::_Select1st<std::pair<hobject_t const, std::list<boost::intrusive_ptr<OpRequest>, std::allocator<boost::intrusive_ptr<OpRequest> > > > >, std::less<hobject_t>, std::allocator<std::pair<hobject_t const, std::list<boost::intrusive_ptr<OpRequest>, std::allocator<boost::intrusive_ptr<OpRequest> > > > > >::find(hobject_t const&) const | |
| | | + 0.01% PrimaryLogPG::maybe_await_blocked_head(hobject_t const&, boost::intrusive_ptr<OpRequest>) | |
| | | | + 0.01% SharedLRU<hobject_t, ObjectContext, std::less<hobject_t>, std::hash<hobject_t> >::lookup(hobject_t const&) | |
| | | | + 0.01% std::_Rb_tree<hobject_t, std::pair<hobject_t const, std::pair<std::weak_ptr<ObjectContext>, ObjectContext*> >, std::_Select1st<std::pair<hobject_t const, std::pair<std::weak_ptr<ObjectContext>, ObjectContext*> > >, std::less<hobject_t>, std::allocator<std::pair<hobject_t const, std::pair<std::weak_ptr<ObjectContext>, ObjectContext*> > > >::find(hobject_t const&) | |
| | | | + 0.01% cmp(hobject_t const&, hobject_t const&) | |
| | | + 0.01% PrimaryLogPG::find_object_context(hobject_t const&, std::shared_ptr<ObjectContext>*, bool, bool, hobject_t*) | |
| | | | + 0.01% PrimaryLogPG::get_object_context(hobject_t const&, bool, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > > const*) | |
| | | | + 0.01% SharedLRU<hobject_t, ObjectContext, std::less<hobject_t>, std::hash<hobject_t> >::lookup(hobject_t const&) | |
| | | | + 0.01% std::_Rb_tree<hobject_t, std::pair<hobject_t const, std::pair<std::weak_ptr<ObjectContext>, ObjectContext*> >, std::_Select1st<std::pair<hobject_t const, std::pair<std::weak_ptr<ObjectContext>, ObjectContext*> > >, std::less<hobject_t>, std::allocator<std::pair<hobject_t const, std::pair<std::weak_ptr<ObjectContext>, ObjectContext*> > > >::find(hobject_t const&) | |
| | | | + 0.01% cmp(hobject_t const&, hobject_t const&) | |
| | | + 20.82% PrimaryLogPG::execute_ctx(PrimaryLogPG::OpContext*) | |
| | | | + 0.02% PrimaryLogPG::new_repop(PrimaryLogPG::OpContext*, std::shared_ptr<ObjectContext>, unsigned long) | |
| | | | | + 0.01% PerfCounters::inc(int, unsigned long) | |
| | | | | + 0.01% tc_new | |
| | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | + 18.73% PrimaryLogPG::issue_repop(PrimaryLogPG::RepGather*, PrimaryLogPG::OpContext*) | |
| | | | | + 0.13% std::__detail::_Map_base<osd_reqid_t, std::pair<osd_reqid_t const, pg_log_entry_t*>, std::allocator<std::pair<osd_reqid_t const, pg_log_entry_t*> >, std::__detail::_Select1st, std::equal_to<osd_reqid_t>, std::hash<osd_reqid_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true>, true>::operator[](osd_reqid_t const&) | |
| | | | | | + 0.13% tc_new | |
| | | | | | + 0.13% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.13% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.09% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.03% SpinLock::SlowLock() | |
| | | | | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | + 0.01% PGTransaction::add_obc(std::shared_ptr<ObjectContext>) | |
| | | | | | + 0.01% std::_Rb_tree_iterator<std::pair<hobject_t const, std::shared_ptr<ObjectContext> > > std::_Rb_tree<hobject_t, std::pair<hobject_t const, std::shared_ptr<ObjectContext> >, std::_Select1st<std::pair<hobject_t const, std::shared_ptr<ObjectContext> > >, std::less<hobject_t>, std::allocator<std::pair<hobject_t const, std::shared_ptr<ObjectContext> > > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<hobject_t const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<hobject_t const, std::shared_ptr<ObjectContext> > >, std::piecewise_construct_t const&, std::tuple<hobject_t const&>&&, std::tuple<>&&) | |
| | | | | | + 0.01% tc_new | |
| | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 18.45% ReplicatedBackend::submit_transaction(hobject_t const&, object_stat_sum_t const&, eversion_t const&, std::unique_ptr<PGTransaction, std::default_delete<PGTransaction> >&&, eversion_t const&, eversion_t const&, std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> > const&, boost::optional<pg_hit_set_history_t>&, Context*, Context*, Context*, unsigned long, osd_reqid_t, boost::intrusive_ptr<OpRequest>) | |
| | | | | | + 0.24% ObjectStore::Transaction::~Transaction() | |
| | | | | | | + 0.21% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | + 0.21% ceph::buffer::ptr::release() | |
| | | | | | | | + 0.20% tc_free | |
| | | | | | | | + 0.19% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.19% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.17% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | + 0.16% SpinLock::SlowLock() | |
| | | | | | | | | + 0.16% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.01% std::_Rb_tree<ghobject_t, std::pair<ghobject_t const, unsigned int>, std::_Select1st<std::pair<ghobject_t const, unsigned int> >, std::less<ghobject_t>, std::allocator<std::pair<ghobject_t const, unsigned int> > >::_M_erase(std::_Rb_tree_node<std::pair<ghobject_t const, unsigned int> >*) | |
| | | | | | | | + 0.01% std::string::_Rep::_M_dispose(std::allocator<char> const&) | |
| | | | | | | + 0.02% ceph::buffer::ptr::release() | |
| | | | | | | + 0.02% tc_free | |
| | | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.07% void std::vector<ObjectStore::Transaction, std::allocator<ObjectStore::Transaction> >::_M_emplace_back_aux<ObjectStore::Transaction>(ObjectStore::Transaction&&) | |
| | | | | | | + 0.06% tc_new | |
| | | | | | | + 0.06% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.06% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.05% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.01% std::_Rb_tree<hobject_t, std::pair<hobject_t const, std::shared_ptr<ObjectContext> >, std::_Select1st<std::pair<hobject_t const, std::shared_ptr<ObjectContext> > >, std::less<hobject_t>, std::allocator<std::pair<hobject_t const, std::shared_ptr<ObjectContext> > > >::_M_erase(std::_Rb_tree_node<std::pair<hobject_t const, std::shared_ptr<ObjectContext> > >*) | |
| | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | + 0.10% void std::_Rb_tree<pg_shard_t, pg_shard_t, std::_Identity<pg_shard_t>, std::less<pg_shard_t>, std::allocator<pg_shard_t> >::_M_insert_unique<std::_Rb_tree_const_iterator<pg_shard_t> >(std::_Rb_tree_const_iterator<pg_shard_t>, std::_Rb_tree_const_iterator<pg_shard_t>) | |
| | | | | | | + 0.10% std::_Rb_tree_iterator<pg_shard_t> std::_Rb_tree<pg_shard_t, pg_shard_t, std::_Identity<pg_shard_t>, std::less<pg_shard_t>, std::allocator<pg_shard_t> >::_M_insert_<pg_shard_t const&>(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, pg_shard_t const&) | |
| | | | | | | + 0.10% tc_new | |
| | | | | | | + 0.10% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.10% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.06% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.04% SpinLock::SlowLock() | |
| | | | | | | | + 0.04% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | + 0.01% PrimaryLogPG::bless_context(Context*) | |
| | | | | | | + 0.01% tc_new | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 2.91% PrimaryLogPG::log_operation(std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> > const&, boost::optional<pg_hit_set_history_t> const&, eversion_t const&, eversion_t const&, bool, ObjectStore::Transaction&) | |
| | | | | | | + 2.91% PG::append_log(std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> > const&, eversion_t, eversion_t, ObjectStore::Transaction&, bool) | |
| | | | | | | + 1.49% PG::write_if_dirty(ObjectStore::Transaction&) | |
| | | | | | | | + 0.70% ObjectStore::Transaction::omap_setkeys(coll_t const&, ghobject_t const&, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > > const&) | |
| | | | | | | | | + 0.53% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | + 0.53% operator delete(void*) | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimitLocked() | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.52% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 0.52% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 0.41% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | + 0.10% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | + 0.09% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | + 0.32% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.32% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.03% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.03% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.01% ceph::buffer::list::list(ceph::buffer::list const&) | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::ptr(ceph::buffer::ptr const&) | |
| | | | | | | | | + 0.15% ObjectStore::Transaction::_get_object_id(ghobject_t const&) | |
| | | | | | | | | | + 0.15% std::_Rb_tree_iterator<std::pair<ghobject_t const, unsigned int> > std::_Rb_tree<ghobject_t, std::pair<ghobject_t const, unsigned int>, std::_Select1st<std::pair<ghobject_t const, unsigned int> >, std::less<ghobject_t>, std::allocator<std::pair<ghobject_t const, unsigned int> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<ghobject_t const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<ghobject_t const, unsigned int> >, std::piecewise_construct_t const&, std::tuple<ghobject_t const&>&&, std::tuple<>&&) | |
| | | | | | | | | | + 0.15% tc_new | |
| | | | | | | | | | + 0.15% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.15% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.11% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::list const&) | |
| | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% std::_Rb_tree_increment(std::_Rb_tree_node_base*) | |
| | | | | | | | + 0.03% PG::prepare_write_info(std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >*) | |
| | | | | | | | | + 0.03% PG::_prepare_write_info(CephContext*, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >*, unsigned int, pg_info_t&, pg_info_t&, PastIntervals&, bool, bool, bool, PerfCounters*) | |
| | | | | | | | | + 0.01% std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::operator[](std::string const&) | |
| | | | | | | | | | + 0.01% std::_Rb_tree_iterator<std::pair<std::string const, ceph::buffer::list> > std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::string const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::string const, ceph::buffer::list> >, std::piecewise_construct_t const&, std::tuple<std::string const&>&&, std::tuple<>&&) | |
| | | | | | | | | | + 0.01% std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) | |
| | | | | | | | | + 0.02% pg_fast_info_t::encode(ceph::buffer::list&) const | |
| | | | | | | | | | + 0.02% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% pg_info_t::encode(ceph::buffer::list&) const | |
| | | | | | | | | + 0.01% pg_stat_t::encode(ceph::buffer::list&) const | |
| | | | | | | | | + 0.01% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::append(char const*, unsigned int) | |
| | | | | | | | + 0.76% PGLog::write_log_and_missing(ObjectStore::Transaction&, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >*, coll_t const&, ghobject_t const&, bool) | |
| | | | | | | | + 0.76% PGLog::_write_log_and_missing(ObjectStore::Transaction&, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >*, pg_log_t&, coll_t const&, ghobject_t const&, eversion_t, eversion_t, eversion_t, std::set<eversion_t, std::less<eversion_t>, std::allocator<eversion_t> > const&, std::set<std::string, std::less<std::string>, std::allocator<std::string> > const&, pg_missing_set<true> const&, bool, bool, bool, eversion_t, eversion_t, eversion_t, bool*, std::set<std::string, std::less<std::string>, std::allocator<std::string> >*) | |
| | | | | | | | + 0.01% std::_Rb_tree<std::string, std::string, std::_Identity<std::string>, std::less<std::string>, std::allocator<std::string> >::_M_erase(std::_Rb_tree_node<std::string>*) | |
| | | | | | | | | + 0.01% std::_Rb_tree<std::string, std::string, std::_Identity<std::string>, std::less<std::string>, std::allocator<std::string> >::_M_erase(std::_Rb_tree_node<std::string>*) | |
| | | | | | | | | + 0.01% std::_Rb_tree<std::string, std::string, std::_Identity<std::string>, std::less<std::string>, std::allocator<std::string> >::_M_erase(std::_Rb_tree_node<std::string>*) | |
| | | | | | | | | + 0.01% std::_Rb_tree<std::string, std::string, std::_Identity<std::string>, std::less<std::string>, std::allocator<std::string> >::_M_erase(std::_Rb_tree_node<std::string>*) | |
| | | | | | | | | + 0.01% std::_Rb_tree<std::string, std::string, std::_Identity<std::string>, std::less<std::string>, std::allocator<std::string> >::_M_erase(std::_Rb_tree_node<std::string>*) | |
| | | | | | | | | + 0.01% std::_Rb_tree<std::string, std::string, std::_Identity<std::string>, std::less<std::string>, std::allocator<std::string> >::_M_erase(std::_Rb_tree_node<std::string>*) | |
| | | | | | | | | + 0.01% std::_Rb_tree<std::string, std::string, std::_Identity<std::string>, std::less<std::string>, std::allocator<std::string> >::_M_erase(std::_Rb_tree_node<std::string>*) | |
| | | | | | | | | + 0.01% std::_Rb_tree<std::string, std::string, std::_Identity<std::string>, std::less<std::string>, std::allocator<std::string> >::_M_erase(std::_Rb_tree_node<std::string>*) | |
| | | | | | | | | + 0.01% std::_Rb_tree<std::string, std::string, std::_Identity<std::string>, std::less<std::string>, std::allocator<std::string> >::_M_erase(std::_Rb_tree_node<std::string>*) | |
| | | | | | | | | + 0.01% std::_Rb_tree<std::string, std::string, std::_Identity<std::string>, std::less<std::string>, std::allocator<std::string> >::_M_erase(std::_Rb_tree_node<std::string>*) | |
| | | | | | | | | + 0.01% std::_Rb_tree<std::string, std::string, std::_Identity<std::string>, std::less<std::string>, std::allocator<std::string> >::_M_erase(std::_Rb_tree_node<std::string>*) | |
| | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% eversion_t::get_key_name() const | |
| | | | | | | | + 0.02% pg_log_entry_t::get_key_name() const | |
| | | | | | | | | + 0.02% eversion_t::get_key_name() const | |
| | | | | | | | | + 0.02% std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(unsigned long, char, std::allocator<char> const&) | |
| | | | | | | | | + 0.02% std::string::_S_construct(unsigned long, char, std::allocator<char> const&) | |
| | | | | | | | | + 0.02% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | + 0.02% tc_new | |
| | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.71% pg_log_entry_t::encode_with_checksum(ceph::buffer::list&) const | |
| | | | | | | | | + 0.67% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | + 0.67% operator delete(void*) | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimitLocked() | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.66% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 0.66% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 0.52% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | + 0.13% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | | + 0.11% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | + 0.01% tcmalloc::DLL_Remove(tcmalloc::Span*) | |
| | | | | | | | | | | + 0.39% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | + 0.39% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.03% pg_log_entry_t::encode(ceph::buffer::list&) const | |
| | | | | | | | | | + 0.02% ObjectModDesc::encode(ceph::buffer::list&) const | |
| | | | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::advance(int) | |
| | | | | | | | | | + 0.01% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::list const&) | |
| | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% ceph::buffer::list::reserve(unsigned long) | |
| | | | | | | | | + 0.01% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | + 0.01% posix_memalign | |
| | | | | | | | | + 0.01% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::Populate() | |
| | | | | | | | + 0.01% ceph::buffer::list::claim(ceph::buffer::list&, unsigned int) | |
| | | | | | | | | + 0.01% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | + 0.01% ceph::buffer::list::claim_append(ceph::buffer::list&, unsigned int) | |
| | | | | | | | + 0.01% ceph::buffer::list::reserve(unsigned long) | |
| | | | | | | | + 0.01% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | + 0.01% posix_memalign | |
| | | | | | | | + 0.01% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.24% PG::add_log_entry(pg_log_entry_t const&, bool) | |
| | | | | | | | + 0.24% PGLog::IndexedLog::add(pg_log_entry_t const&, bool) | |
| | | | | | | | + 0.24% std::__detail::_Map_base<osd_reqid_t, std::pair<osd_reqid_t const, pg_log_entry_t*>, std::allocator<std::pair<osd_reqid_t const, pg_log_entry_t*> >, std::__detail::_Select1st, std::equal_to<osd_reqid_t>, std::hash<osd_reqid_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true>, true>::operator[](osd_reqid_t const&) | |
| | | | | | | | + 0.01% std::_Hashtable<osd_reqid_t, std::pair<osd_reqid_t const, pg_log_entry_t*>, std::allocator<std::pair<osd_reqid_t const, pg_log_entry_t*> >, std::__detail::_Select1st, std::equal_to<osd_reqid_t>, std::hash<osd_reqid_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_find_before_node(unsigned long, osd_reqid_t const&, unsigned long) const | |
| | | | | | | | + 0.23% tc_new | |
| | | | | | | | + 0.23% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.23% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.17% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.06% SpinLock::SlowLock() | |
| | | | | | | | | + 0.06% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 1.07% PGLog::IndexedLog::trim(CephContext*, eversion_t, std::set<eversion_t, std::less<eversion_t>, std::allocator<eversion_t> >*, std::set<std::string, std::less<std::string>, std::allocator<std::string> >*, eversion_t*) | |
| | | | | | | | + 0.01% std::__detail::_Map_base<osd_reqid_t, std::pair<osd_reqid_t const, pg_log_dup_t*>, std::allocator<std::pair<osd_reqid_t const, pg_log_dup_t*> >, std::__detail::_Select1st, std::equal_to<osd_reqid_t>, std::hash<osd_reqid_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true>, true>::operator[](osd_reqid_t const&) | |
| | | | | | | | | + 0.01% std::_Hashtable<osd_reqid_t, std::pair<osd_reqid_t const, pg_log_dup_t*>, std::allocator<std::pair<osd_reqid_t const, pg_log_dup_t*> >, std::__detail::_Select1st, std::equal_to<osd_reqid_t>, std::hash<osd_reqid_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_find_before_node(unsigned long, osd_reqid_t const&, unsigned long) const | |
| | | | | | | | + 0.81% PGLog::IndexedLog::unindex(pg_log_entry_t const&) | |
| | | | | | | | | + 0.81% operator delete(void*) | |
| | | | | | | | | + 0.02% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.80% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.80% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.67% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.14% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.11% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | | | + 0.01% madvise | |
| | | | | | | | | | + 0.53% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.02% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | + 0.51% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.26% operator delete[](void*) | |
| | | | | | | | + 0.26% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.26% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.20% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.06% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.05% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.14% SpinLock::SlowLock() | |
| | | | | | | | + 0.14% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.03% PGLog::trim(eversion_t, pg_info_t&) | |
| | | | | | | | + 0.02% PGLog::IndexedLog::trim(CephContext*, eversion_t, std::set<eversion_t, std::less<eversion_t>, std::allocator<eversion_t> >*, std::set<std::string, std::less<std::string>, std::allocator<std::string> >*, eversion_t*) | |
| | | | | | | | + 0.01% std::pair<std::_Rb_tree_iterator<eversion_t>, bool> std::_Rb_tree<eversion_t, eversion_t, std::_Identity<eversion_t>, std::less<eversion_t>, std::allocator<eversion_t> >::_M_insert_unique<eversion_t const&>(eversion_t const&) | |
| | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% PGLog::IndexedLog::unindex(pg_log_entry_t const&) | |
| | | | | | | | | + 0.01% std::_Hashtable<hobject_t, std::pair<hobject_t const, pg_log_entry_t*>, std::allocator<std::pair<hobject_t const, pg_log_entry_t*> >, std::__detail::_Select1st, std::equal_to<hobject_t>, std::hash<hobject_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::count(hobject_t const&) const | |
| | | | | | | | | + 0.01% std::_Hashtable<osd_reqid_t, std::pair<osd_reqid_t const, pg_log_entry_t*>, std::allocator<std::pair<osd_reqid_t const, pg_log_entry_t*> >, std::__detail::_Select1st, std::equal_to<osd_reqid_t>, std::hash<osd_reqid_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::count(osd_reqid_t const&) const | |
| | | | | | | | + 0.01% operator delete[](void*) | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.09% tc_new | |
| | | | | | | + 0.09% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.09% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.06% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | + 0.01% std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> >::~vector() | |
| | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | + 11.80% PrimaryLogPG::queue_transactions(std::vector<ObjectStore::Transaction, std::allocator<ObjectStore::Transaction> >&, boost::intrusive_ptr<OpRequest>) | |
| | | | | | | + 11.80% BlueStore::queue_transactions(ObjectStore::Sequencer*, std::vector<ObjectStore::Transaction, std::allocator<ObjectStore::Transaction> >&, boost::intrusive_ptr<TrackedOp>, ThreadPool::TPHandle*) | |
| | | | | | | + 0.02% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | + 0.02% ceph::buffer::ptr::release() | |
| | | | | | | | + 0.02% tc_free | |
| | | | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() | |
| | | | | | | + 0.02% ceph::buffer::list::contiguous_appender::contiguous_appender(ceph::buffer::list*, unsigned long, bool) | |
| | | | | | | | + 0.02% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | + 0.02% posix_memalign | |
| | | | | | | | + 0.02% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::Populate() | |
| | | | | | | + 0.66% C_ContextsBase<Context, Context>::list_to_context(std::list<Context*, std::allocator<Context*> >&) | |
| | | | | | | | + 0.66% operator delete(void*) | |
| | | | | | | | + 0.66% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.66% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.57% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.08% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | + 0.06% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | + 0.50% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | + 0.49% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.41% BlueStore::_txc_create(BlueStore::OpSequencer*) | |
| | | | | | | | + 0.37% RocksDBStore::get_transaction() | |
| | | | | | | | | + 0.08% RocksDBStore::RocksDBTransactionImpl::RocksDBTransactionImpl(RocksDBStore*) | |
| | | | | | | | | | + 0.08% rocksdb::WriteBatch::WriteBatch(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.08% std::string::reserve(unsigned long) | |
| | | | | | | | | | + 0.08% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | + 0.08% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | + 0.08% tc_new | |
| | | | | | | | | | + 0.08% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.08% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.07% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.01% tcmalloc::DLL_Remove(tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.29% tc_new | |
| | | | | | | | | + 0.29% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.29% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.21% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.06% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.06% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.05% operator new[](unsigned long) | |
| | | | | | | | + 0.05% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.05% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.04% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% _init | |
| | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 2.71% BlueStore::_txc_write_nodes(BlueStore::TransContext*, std::shared_ptr<KeyValueDB::TransactionImpl>) | |
| | | | | | | | + 0.01% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | | + 0.01% tc_free | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | + 0.03% ceph::buffer::list::contiguous_appender::contiguous_appender(ceph::buffer::list*, unsigned long, bool) | |
| | | | | | | | | + 0.03% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | + 0.03% posix_memalign | |
| | | | | | | | | + 0.03% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::Populate() | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 2.07% BlueStore::ExtentMap::update(std::shared_ptr<KeyValueDB::TransactionImpl>, bool) | |
| | | | | | | | | + 0.02% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | | | | + 0.01% ceph::buffer::raw_combined::~raw_combined() | |
| | | | | | | | | | | | + 0.01% mempool::pool_t::adjust_count(long, long) | |
| | | | | | | | | | | + 0.01% tc_free | |
| | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | + 2.00% void generate_extent_shard_key_and_apply<std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > >(std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > const&, unsigned int, std::string*, std::function<void (std::string const&)>) | |
| | | | | | | | | | + 0.01% std::_Function_handler<void (std::string const&), BlueStore::ExtentMap::update(std::shared_ptr<KeyValueDB::TransactionImpl>, bool)::{lambda(std::string const&)#1}>::_M_invoke(std::_Any_data const&, std::string const&) | |
| | | | | | | | | | + 0.01% void get_extent_shard_key<std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > >(std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > const&, unsigned int, std::string*) | |
| | | | | | | | | | | + 0.01% std::string::append(char const*, unsigned long) | |
| | | | | | | | | | | + 0.01% __memcpy_ssse3 | |
| | | | | | | | | | + 1.98% RocksDBStore::RocksDBTransactionImpl::set(std::string const&, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | | | + 0.92% RocksDBStore::RocksDBTransactionImpl::put_bat(rocksdb::WriteBatch&, rocksdb::ColumnFamilyHandle*, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | | | | + 0.92% rocksdb::WriteBatch::Put(rocksdb::ColumnFamilyHandle*, rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | | | | | | | | | + 0.92% rocksdb::WriteBatchInternal::Put(rocksdb::WriteBatch*, unsigned int, rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | | | | | | | | | + 0.01% std::string::reserve(unsigned long) | |
| | | | | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.91% std::string::append(char const*, unsigned long) | |
| | | | | | | | | | | + 0.01% __memcpy_ssse3 | |
| | | | | | | | | | | + 0.91% std::string::reserve(unsigned long) | |
| | | | | | | | | | | + 0.04% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | | | + 0.04% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | | | + 0.04% tc_new | |
| | | | | | | | | | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::Populate() | |
| | | | | | | | | | | + 0.87% operator delete(void*) | |
| | | | | | | | | | | + 0.02% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimitLocked() | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.86% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 0.86% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.70% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | + 0.14% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | | | + 0.11% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | | | | | + 0.01% madvise | |
| | | | | | | | | | | | + 0.56% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.02% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | | + 0.54% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.03% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.03% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 1.06% std::string::append(std::string const&) | |
| | | | | | | | | | | + 1.05% std::string::reserve(unsigned long) | |
| | | | | | | | | | | + 1.05% operator delete(void*) | |
| | | | | | | | | | | + 1.05% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 1.05% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.84% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | + 0.21% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | | | + 0.17% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | + 0.62% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | | + 0.62% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.05% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.05% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | + 0.03% BlueStore::ExtentMap::encode_some(unsigned int, unsigned int, ceph::buffer::list&, unsigned int*) | |
| | | | | | | | | | + 0.02% ceph::buffer::list::contiguous_appender::contiguous_appender(ceph::buffer::list*, unsigned long, bool) | |
| | | | | | | | | | + 0.02% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | | + 0.02% posix_memalign | |
| | | | | | | | | | + 0.02% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.03% tc_new | |
| | | | | | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::Populate() | |
| | | | | | | | + 0.01% BlueStore::Onode::put() | |
| | | | | | | | + 0.61% RocksDBStore::RocksDBTransactionImpl::set(std::string const&, char const*, unsigned long, ceph::buffer::list const&) | |
| | | | | | | | + 0.03% RocksDBStore::RocksDBTransactionImpl::put_bat(rocksdb::WriteBatch&, rocksdb::ColumnFamilyHandle*, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | | + 0.03% rocksdb::WriteBatch::Put(rocksdb::ColumnFamilyHandle*, rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | | | | | | | + 0.03% rocksdb::WriteBatchInternal::Put(rocksdb::WriteBatch*, unsigned int, rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | | | | | | | + 0.03% std::string::append(char const*, unsigned long) | |
| | | | | | | | | + 0.03% std::string::reserve(unsigned long) | |
| | | | | | | | | + 0.03% operator delete(void*) | |
| | | | | | | | | + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.59% std::string::assign(std::string const&) | |
| | | | | | | | + 0.59% operator delete(void*) | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.58% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.58% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.49% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.03% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | + 0.46% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | + 0.45% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.03% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.03% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 7.17% BlueStore::_txc_add_transaction(BlueStore::TransContext*, ObjectStore::Transaction*) | |
| | | | | | | | + 0.01% decode(ceph::buffer::list&, ceph::buffer::list::iterator&) | |
| | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, char*) | |
| | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, ceph::buffer::list&) | |
| | | | | | | | + 0.29% std::enable_if<denc_traits<std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >, void>::supported&&(!denc_traits<std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >, void>::need_contiguous), void>::type decode<std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >, denc_traits<std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >, void> >(std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >&, ceph::buffer::list::iterator&) | |
| | | | | | | | | + 0.28% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | + 0.28% operator delete(void*) | |
| | | | | | | | | | + 0.28% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 0.28% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 0.23% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.08% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.02% _init | |
| | | | | | | | | | | + 0.06% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.15% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | + 0.14% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% std::_Rb_tree_iterator<std::pair<std::string const, ceph::buffer::ptr> > std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::ptr>, std::_Select1st<std::pair<std::string const, ceph::buffer::ptr> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >::_M_emplace_hint_unique<std::pair<std::string, ceph::buffer::ptr> >(std::_Rb_tree_const_iterator<std::pair<std::string const, ceph::buffer::ptr> >, std::pair<std::string, ceph::buffer::ptr>&&) | |
| | | | | | | | | | + 0.01% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::ptr>, std::_Select1st<std::pair<std::string const, ceph::buffer::ptr> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator<std::pair<std::string const, ceph::buffer::ptr> >, std::string const&) | |
| | | | | | | | | | + 0.01% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::ptr>, std::_Select1st<std::pair<std::string const, ceph::buffer::ptr> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >::_M_get_insert_unique_pos(std::string const&) | |
| | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, std::string&) | |
| | | | | | | | | + 0.01% std::string::append(char const*, unsigned long) | |
| | | | | | | | | + 0.01% __memcpy_ssse3 | |
| | | | | | | | + 0.02% decode_str_str_map_to_bl(ceph::buffer::list::iterator&, ceph::buffer::list*) | |
| | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::advance(int) | |
| | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, char*) | |
| | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, ceph::buffer::list&) | |
| | | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 1.30% BlueStore::_omap_setkeys(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>&, ceph::buffer::list&) | |
| | | | | | | | | + 1.16% RocksDBStore::RocksDBTransactionImpl::set(std::string const&, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | | | + 1.16% RocksDBStore::RocksDBTransactionImpl::put_bat(rocksdb::WriteBatch&, rocksdb::ColumnFamilyHandle*, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | | | + 0.01% rocksdb::WriteBatch::Put(rocksdb::ColumnFamilyHandle*, rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | | | | | | | | | + 0.01% rocksdb::WriteBatchInternal::Put(rocksdb::WriteBatch*, unsigned int, rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | | | | | | | | | + 0.01% std::string::append(char const*, unsigned long) | |
| | | | | | | | | | | + 0.01% std::string::reserve(unsigned long) | |
| | | | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 1.15% rocksdb::WriteBatch::Put(rocksdb::ColumnFamilyHandle*, rocksdb::SliceParts const&, rocksdb::SliceParts const&) | |
| | | | | | | | | | + 1.15% rocksdb::WriteBatchInternal::Put(rocksdb::WriteBatch*, unsigned int, rocksdb::SliceParts const&, rocksdb::SliceParts const&) | |
| | | | | | | | | | + 0.01% rocksdb::EncodeVarint32(char*, unsigned int) | |
| | | | | | | | | | + 1.15% std::string::append(char const*, unsigned long) | |
| | | | | | | | | | + 1.14% std::string::reserve(unsigned long) | |
| | | | | | | | | | + 0.16% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | | + 0.16% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | | + 0.16% tc_new | |
| | | | | | | | | | | + 0.16% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.16% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.14% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 0.98% operator delete(void*) | |
| | | | | | | | | | + 0.98% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 0.98% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.76% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | + 0.23% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | | | + 0.21% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | | | | | | | + 0.52% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.52% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, ceph::buffer::list&) | |
| | | | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | + 0.09% std::string::append(std::string const&) | |
| | | | | | | | | | + 0.09% std::string::reserve(unsigned long) | |
| | | | | | | | | | + 0.02% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | | + 0.02% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | | + 0.02% tc_new | |
| | | | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.06% operator delete(void*) | |
| | | | | | | | | | + 0.06% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 0.06% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 0.04% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | + 0.03% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% std::string::append(char const*, unsigned long) | |
| | | | | | | | | | + 0.01% __memcpy_ssse3 | |
| | | | | | | | | + 0.05% std::string::push_back(char) | |
| | | | | | | | | | + 0.05% std::string::reserve(unsigned long) | |
| | | | | | | | | | + 0.03% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | | + 0.03% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | | + 0.03% tc_new | |
| | | | | | | | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.02% operator delete(void*) | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | + 0.02% BlueStore::_omap_rmkeys(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>&, ceph::buffer::list&) | |
| | | | | | | | | + 0.02% RocksDBStore::RocksDBTransactionImpl::rmkey(std::string const&, std::string const&) | |
| | | | | | | | | + 0.02% rocksdb::WriteBatch::Delete(rocksdb::ColumnFamilyHandle*, rocksdb::Slice const&) | |
| | | | | | | | | + 0.02% rocksdb::WriteBatchInternal::Delete(rocksdb::WriteBatch*, unsigned int, rocksdb::Slice const&) | |
| | | | | | | | | + 0.02% std::string::append(char const*, unsigned long) | |
| | | | | | | | | + 0.02% std::string::reserve(unsigned long) | |
| | | | | | | | | + 0.02% operator delete(void*) | |
| | | | | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.12% BlueStore::_get_collection(coll_t const&) | |
| | | | | | | | | + 0.07% std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) | |
| | | | | | | | | | + 0.06% char* std::string::_S_construct<char const*>(char const*, char const*, std::allocator<char> const&, std::forward_iterator_tag) | |
| | | | | | | | | | | + 0.06% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | | + 0.06% tc_new | |
| | | | | | | | | | | + 0.06% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.06% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.04% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.04% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.01% _init | |
| | | | | | | | | + 0.06% operator delete(void*) | |
| | | | | | | | | + 0.06% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.06% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.04% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.02% BlueStore::_setattrs(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>&, std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > > const&) | |
| | | | | | | | | + 0.01% std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> >::_Rep::_M_dispose(mempool::pool_allocator<(mempool::pool_index_t)4, char> const&) [clone .part.1046] | |
| | | | | | | | | + 0.01% std::_Rb_tree<std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> >, std::pair<std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > const, ceph::buffer::ptr>, std::_Select1st<std::pair<std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > const, ceph::buffer::ptr> >, std::less<std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > const, ceph::buffer::ptr> > >::_M_lower_bound(std::_Rb_tree_node<std::pair<std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > const, ceph::buffer::ptr> >*, std::_Rb_tree_node<std::pair<std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > const, ceph::buffer::ptr> >*, std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > const&) [clone .isra.1514] | |
| | | | | | | | | + 0.01% std::pair<std::_Rb_tree_iterator<boost::intrusive_ptr<BlueStore::Onode> >, bool> std::_Rb_tree<boost::intrusive_ptr<BlueStore::Onode>, boost::intrusive_ptr<BlueStore::Onode>, std::_Identity<boost::intrusive_ptr<BlueStore::Onode> >, std::less<boost::intrusive_ptr<BlueStore::Onode> >, std::allocator<boost::intrusive_ptr<BlueStore::Onode> > >::_M_insert_unique<boost::intrusive_ptr<BlueStore::Onode> const&>(boost::intrusive_ptr<BlueStore::Onode> const&) | |
| | | | | | | | | + 0.01% std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> >::basic_string(char const*, mempool::pool_allocator<(mempool::pool_index_t)4, char> const&) | |
| | | | | | | | | + 0.01% std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> >::_Rep::_S_create(unsigned long, unsigned long, mempool::pool_allocator<(mempool::pool_index_t)4, char> const&) | |
| | | | | | | | | + 0.01% operator new[](unsigned long) | |
| | | | | | | | + 0.05% BlueStore::Collection::get_onode(ghobject_t const&, bool) | |
| | | | | | | | | + 0.05% BlueStore::OnodeSpace::lookup(ghobject_t const&) | |
| | | | | | | | | + 0.03% std::_Hashtable<onode_map_handle, std::pair<onode_map_handle const, boost::intrusive_ptr<BlueStore::Onode> >, mempool::pool_allocator<(mempool::pool_index_t)4, std::pair<onode_map_handle const, boost::intrusive_ptr<BlueStore::Onode> > >, std::__detail::_Select1st, std::equal_to<onode_map_handle>, std::hash<onode_map_handle>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::find(onode_map_handle const&) | |
| | | | | | | | | | + 0.03% std::_Hashtable<onode_map_handle, std::pair<onode_map_handle const, boost::intrusive_ptr<BlueStore::Onode> >, mempool::pool_allocator<(mempool::pool_index_t)4, std::pair<onode_map_handle const, boost::intrusive_ptr<BlueStore::Onode> > >, std::__detail::_Select1st, std::equal_to<onode_map_handle>, std::hash<onode_map_handle>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_find_before_node(unsigned long, onode_map_handle const&, unsigned long) const | |
| | | | | | | | | | + 0.01% __memcmp_sse4_1 | |
| | | | | | | | | + 0.01% ceph_str_hash_rjenkins(char const*, unsigned int) | |
| | | | | | | | | + 0.01% pthread_mutex_lock | |
| | | | | | | | | + 0.01% _L_lock_870 | |
| | | | | | | | | + 0.01% __lll_lock_wait | |
| | | | | | | | + 2.25% BlueStore::_write(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>&, unsigned long, unsigned long, ceph::buffer::list&, unsigned int) | |
| | | | | | | | | + 2.24% BlueStore::_do_write(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list&, unsigned int) | |
| | | | | | | | | | + 0.04% BlueStore::_choose_write_options(boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned int, BlueStore::WriteContext*) | |
| | | | | | | | | | | + 0.02% std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) | |
| | | | | | | | | | | | + 0.02% char* std::string::_S_construct<char const*>(char const*, char const*, std::allocator<char> const&, std::forward_iterator_tag) | |
| | | | | | | | | | | | + 0.02% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | | | + 0.02% tc_new | |
| | | | | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.03% operator delete(void*) | |
| | | | | | | | | | | + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.03% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.51% BlueStore::_wctx_finish(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, BlueStore::WriteContext*, std::set<BlueStore::SharedBlob*, std::less<BlueStore::SharedBlob*>, std::allocator<BlueStore::SharedBlob*> >*) | |
| | | | | | | | | | | + 0.01% BlueStore::Blob::discard_unallocated(BlueStore::Collection*) | |
| | | | | | | | | | | + 0.50% operator delete(void*) | |
| | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimitLocked() | |
| | | | | | | | | | | + 0.49% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 0.49% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.40% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | + 0.11% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | | | + 0.10% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | + 0.28% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | | + 0.27% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 0.02% BlueStore::ExtentMap::compress_extent_map(unsigned long, unsigned long) | |
| | | | | | | | | | + 1.68% BlueStore::_do_write_data(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list&, BlueStore::WriteContext*) | |
| | | | | | | | | | + 1.68% BlueStore::_do_write_small(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list::iterator&, BlueStore::WriteContext*) | |
| | | | | | | | | | + 0.01% ceph::logging::SubsystemMap::should_gather(unsigned int, int) | |
| | | | | | | | | | + 1.03% std::_Function_base::_Base_manager<BlueStore::_do_write_small(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list::iterator&, BlueStore::WriteContext*)::{lambda(unsigned long, unsigned long)#3}>::_M_manager(std::_Any_data&, std::_Function_base::_Base_manager<BlueStore::_do_write_small(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list::iterator&, BlueStore::WriteContext*)::{lambda(unsigned long, unsigned long)#3}> const&, std::_Manager_operation) | |
| | | | | | | | | | | + 1.03% operator delete(void*) | |
| | | | | | | | | | | + 0.02% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 1.00% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | | + 1.00% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | | + 0.78% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | | + 0.23% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | | + 0.19% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | | + 0.52% SpinLock::SlowLock() | |
| | | | | | | | | | | | | + 0.02% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | | | + 0.50% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 0.38% BlueStore::_get_deferred_op(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Onode>) | |
| | | | | | | | | | | + 0.38% tc_new | |
| | | | | | | | | | | + 0.38% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.38% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.31% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | + 0.01% tcmalloc::DLL_Length(tcmalloc::Span const*) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.04% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.04% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 0.13% BlueStore::ExtentMap::set_lextent(boost::intrusive_ptr<BlueStore::Collection>&, unsigned long, unsigned long, unsigned long, boost::intrusive_ptr<BlueStore::Blob>, boost::intrusive::list<BlueStore::OldExtent, boost::intrusive::member_hook<BlueStore::OldExtent, boost::intrusive::list_member_hook<void, void, void>, &BlueStore::OldExtent::old_extent_item>, void, void, void>*) | |
| | | | | | | | | | | + 0.08% BlueStore::ExtentMap::punch_hole(boost::intrusive_ptr<BlueStore::Collection>&, unsigned long, unsigned long, boost::intrusive::list<BlueStore::OldExtent, boost::intrusive::member_hook<BlueStore::OldExtent, boost::intrusive::list_member_hook<void, void, void>, &BlueStore::OldExtent::old_extent_item>, void, void, void>*) | |
| | | | | | | | | | | | + 0.01% BlueStore::ExtentMap::seek_lextent(unsigned long) | |
| | | | | | | | | | | | + 0.03% BlueStore::ExtentMap::rm(boost::intrusive::tree_iterator<boost::intrusive::bhtraits<BlueStore::Extent, boost::intrusive::rbtree_node_traits<void*, true>, (boost::intrusive::link_mode_type)1, boost::intrusive::dft_tag, 3u>, false>) | |
| | | | | | | | | | | | | + 0.03% operator delete[](void*) | |
| | | | | | | | | | | | | + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | | | + 0.03% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | | | + 0.04% BlueStore::ExtentMap::add(unsigned int, unsigned int, unsigned int, boost::intrusive_ptr<BlueStore::Blob>&) | |
| | | | | | | | | | | | + 0.04% operator new[](unsigned long) | |
| | | | | | | | | | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.04% operator new[](unsigned long) | |
| | | | | | | | | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.03% bluestore_blob_t::map(unsigned long, unsigned long, std::function<int (unsigned long, unsigned long)>) const | |
| | | | | | | | | | | + 0.03% std::_Function_handler<int (unsigned long, unsigned long), BlueStore::_do_write_small(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list::iterator&, BlueStore::WriteContext*)::{lambda(unsigned long, unsigned long)#3}>::_M_invoke(std::_Any_data const&, unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.03% void std::vector<bluestore_pextent_t, mempool::pool_allocator<(mempool::pool_index_t)4, bluestore_pextent_t> >::_M_emplace_back_aux<bluestore_pextent_t>(bluestore_pextent_t&&) | |
| | | | | | | | | | | + 0.03% operator new[](unsigned long) | |
| | | | | | | | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::Populate() | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, ceph::buffer::list&) | |
| | | | | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | | | + 0.01% ceph::buffer::ptr::ptr(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | | + 0.01% PerfCounters::inc(int, unsigned long) | |
| | | | | | | | | | + 0.09% tc_new | |
| | | | | | | | | | + 0.09% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.09% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.06% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.01% std::pair<std::_Rb_tree_iterator<boost::intrusive_ptr<BlueStore::Onode> >, bool> std::_Rb_tree<boost::intrusive_ptr<BlueStore::Onode>, boost::intrusive_ptr<BlueStore::Onode>, std::_Identity<boost::intrusive_ptr<BlueStore::Onode> >, std::less<boost::intrusive_ptr<BlueStore::Onode> >, std::allocator<boost::intrusive_ptr<BlueStore::Onode> > >::_M_insert_unique<boost::intrusive_ptr<BlueStore::Onode> const&>(boost::intrusive_ptr<BlueStore::Onode> const&) | |
| | | | | | | | + 2.47% ceph::buffer::list::get_contiguous(unsigned int, unsigned int) | |
| | | | | | | | | + 0.73% ceph::buffer::list::rebuild() | |
| | | | | | | | | | + 0.66% ceph::buffer::list::rebuild(ceph::buffer::ptr&) | |
| | | | | | | | | | | + 0.66% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | | | | + 0.66% operator delete(void*) | |
| | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimitLocked() | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.65% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 0.64% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.50% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | + 0.12% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | + 0.10% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | + 0.38% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | | + 0.37% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.04% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.04% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 0.07% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | | + 0.07% posix_memalign | |
| | | | | | | | | | + 0.07% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | + 0.07% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.07% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.07% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 1.74% operator delete(void*) | |
| | | | | | | | | + 0.05% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::IncreaseCacheLimitLocked() | |
| | | | | | | | | | + 0.03% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 1.69% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 1.69% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 1.26% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.29% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | + 0.28% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | | | | | + 0.93% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | + 0.93% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.09% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.09% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.01% std::_Rb_tree_increment(std::_Rb_tree_node_base*) | |
| | | | | | | | + 0.61% tc_new | |
| | | | | | | | + 0.61% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.61% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.42% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.05% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | + 0.05% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.13% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | + 0.13% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.79% RocksDBStore::RocksDBTransactionImpl::set(std::string const&, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | + 0.79% RocksDBStore::RocksDBTransactionImpl::put_bat(rocksdb::WriteBatch&, rocksdb::ColumnFamilyHandle*, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | + 0.75% rocksdb::WriteBatch::Put(rocksdb::ColumnFamilyHandle*, rocksdb::SliceParts const&, rocksdb::SliceParts const&) | |
| | | | | | | | | + 0.75% rocksdb::WriteBatchInternal::Put(rocksdb::WriteBatch*, unsigned int, rocksdb::SliceParts const&, rocksdb::SliceParts const&) | |
| | | | | | | | | + 0.75% std::string::append(char const*, unsigned long) | |
| | | | | | | | | + 0.02% __memcpy_ssse3 | |
| | | | | | | | | + 0.74% std::string::reserve(unsigned long) | |
| | | | | | | | | + 0.03% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | + 0.03% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | + 0.03% tc_new | |
| | | | | | | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.01% tcmalloc::DLL_Remove(tcmalloc::Span*) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::Populate() | |
| | | | | | | | | + 0.71% operator delete(void*) | |
| | | | | | | | | + 0.71% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.71% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.63% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.07% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.06% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.56% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.02% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | + 0.54% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.03% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.03% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.02% tc_new | |
| | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.02% operator delete(void*) | |
| | | | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% Throttle::get_or_fail(long) | |
| | | | | | | | + 0.01% PerfCounters::inc(int, unsigned long) | |
| | | | | | | + 0.01% std::string::_Rep::_M_dispose(std::allocator<char> const&) | |
| | | | | | | + 0.01% std::string::append(char const*, unsigned long) | |
| | | | | | | + 0.01% std::string::reserve(unsigned long) | |
| | | | | | | + 0.01% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | + 0.01% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | + 0.01% tc_new | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.04% std::_Rb_tree<hobject_t, std::pair<hobject_t const, PGTransaction::ObjectOperation>, std::_Select1st<std::pair<hobject_t const, PGTransaction::ObjectOperation> >, std::less<hobject_t>, std::allocator<std::pair<hobject_t const, PGTransaction::ObjectOperation> > >::_M_erase(std::_Rb_tree_node<std::pair<hobject_t const, PGTransaction::ObjectOperation> >*) | |
| | | | | | | + 0.03% std::_Rb_tree<std::string, std::pair<std::string const, boost::optional<ceph::buffer::list> >, std::_Select1st<std::pair<std::string const, boost::optional<ceph::buffer::list> > >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::optional<ceph::buffer::list> > > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, boost::optional<ceph::buffer::list> > >*) | |
| | | | | | | + 0.03% std::_Rb_tree<std::string, std::pair<std::string const, boost::optional<ceph::buffer::list> >, std::_Select1st<std::pair<std::string const, boost::optional<ceph::buffer::list> > >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::optional<ceph::buffer::list> > > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, boost::optional<ceph::buffer::list> > >*) | |
| | | | | | | + 0.03% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | + 0.03% ceph::buffer::ptr::release() | |
| | | | | | | | + 0.01% ceph::buffer::raw_combined::~raw_combined() | |
| | | | | | | | | + 0.01% mempool::pool_t::adjust_count(long, long) | |
| | | | | | | | + 0.02% tc_free | |
| | | | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 3.18% generate_transaction(std::unique_ptr<PGTransaction, std::default_delete<PGTransaction> >&, coll_t const&, std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> >&, ObjectStore::Transaction*, std::set<hobject_t, std::less<hobject_t>, std::allocator<hobject_t> >*, std::set<hobject_t, std::less<hobject_t>, std::allocator<hobject_t> >*) | |
| | | | | | | + 0.10% std::list<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::operator=(std::list<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> > const&) | |
| | | | | | | | + 0.10% tc_new | |
| | | | | | | | + 0.10% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.10% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.06% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.03% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% std::_Rb_tree_iterator<std::pair<std::string const, ceph::buffer::list> > std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::string const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::string const, ceph::buffer::list> >, std::piecewise_construct_t const&, std::tuple<std::string const&>&&, std::tuple<>&&) | |
| | | | | | | | + 0.01% _init | |
| | | | | | | + 0.01% ObjectStore::Transaction::_get_object_id(ghobject_t const&) | |
| | | | | | | | + 0.01% cmp(ghobject_t const&, ghobject_t const&) | |
| | | | | | | | + 0.01% cmp(hobject_t const&, hobject_t const&) | |
| | | | | | | + 2.37% ObjectStore::Transaction::setattrs(coll_t const&, ghobject_t const&, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > > const&) | |
| | | | | | | | + 0.02% ObjectStore::Transaction::_get_next_op() | |
| | | | | | | | | + 0.02% ceph::buffer::list::append(ceph::buffer::ptr const&) | |
| | | | | | | | | | + 0.02% tc_new | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::ptr(unsigned int) | |
| | | | | | | | | + 0.01% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | + 0.01% posix_memalign | |
| | | | | | | | | + 0.01% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | + 0.01% tcmalloc::AlignmentForSize(unsigned long) | |
| | | | | | | | + 0.01% ObjectStore::Transaction::_get_coll_id(coll_t const&) | |
| | | | | | | | | + 0.01% std::_Rb_tree_iterator<std::pair<coll_t const, unsigned int> > std::_Rb_tree<coll_t, std::pair<coll_t const, unsigned int>, std::_Select1st<std::pair<coll_t const, unsigned int> >, std::less<coll_t>, std::allocator<std::pair<coll_t const, unsigned int> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<coll_t const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<coll_t const, unsigned int> >, std::piecewise_construct_t const&, std::tuple<coll_t const&>&&, std::tuple<>&&) | |
| | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% ObjectStore::Transaction::_get_object_id(ghobject_t const&) | |
| | | | | | | | | + 0.01% std::_Rb_tree_iterator<std::pair<ghobject_t const, unsigned int> > std::_Rb_tree<ghobject_t, std::pair<ghobject_t const, unsigned int>, std::_Select1st<std::pair<ghobject_t const, unsigned int> >, std::less<ghobject_t>, std::allocator<std::pair<ghobject_t const, unsigned int> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<ghobject_t const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<ghobject_t const, unsigned int> >, std::piecewise_construct_t const&, std::tuple<ghobject_t const&>&&, std::tuple<>&&) | |
| | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 2.33% std::enable_if<denc_traits<std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >, void>::supported&&(!denc_traits<std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >, void>::featured), void>::type encode<std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >, denc_traits<std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >, void> >(std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > > const&, ceph::buffer::list&, unsigned long) [clone .isra.1547] | |
| | | | | | | | + 2.13% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | + 2.13% operator delete(void*) | |
| | | | | | | | | + 0.02% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 2.11% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 2.11% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 1.65% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.45% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.39% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | + 0.02% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | | | | + 0.02% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | | | | + 0.02% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | | | | + 0.02% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | | | | + 0.02% madvise | |
| | | | | | | | | | | + 0.01% tcmalloc::DLL_Remove(tcmalloc::Span*) | |
| | | | | | | | | | | + 0.01% tcmalloc::DLL_Length(tcmalloc::Span const*) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 1.19% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | + 1.18% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.08% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.08% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.02% ceph::buffer::list::list(ceph::buffer::list const&) | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::ptr(ceph::buffer::ptr const&) | |
| | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.02% ceph::buffer::list::contiguous_appender::contiguous_appender(ceph::buffer::list*, unsigned long, bool) | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::c_str() | |
| | | | | | | | | | + 0.01% ceph::buffer::raw::get_data() | |
| | | | | | | | | + 0.02% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | + 0.02% posix_memalign | |
| | | | | | | | | + 0.02% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.10% ceph::buffer::list::append(ceph::buffer::ptr&&) | |
| | | | | | | | | + 0.10% tc_new | |
| | | | | | | | | + 0.10% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.10% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.08% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.07% ceph::buffer::list::append(ceph::buffer::list const&) | |
| | | | | | | | + 0.07% tc_new | |
| | | | | | | | + 0.07% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.07% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.04% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.03% SpinLock::SlowLock() | |
| | | | | | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.02% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | | + 0.01% posix_memalign | |
| | | | | | | | + 0.01% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.01% std::_Rb_tree_increment(std::_Rb_tree_node_base*) | |
| | | | | | | + 0.09% tc_new | |
| | | | | | | | + 0.09% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.09% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.07% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.58% operator delete(void*) | |
| | | | | | | + 0.58% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.58% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.47% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.12% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.10% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | + 0.02% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | | + 0.02% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | | + 0.02% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | | + 0.02% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | | + 0.02% madvise | |
| | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.34% SpinLock::SlowLock() | |
| | | | | | | | + 0.34% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | + 0.10% std::pair<std::_Rb_tree_iterator<std::pair<unsigned long const, ReplicatedBackend::InProgressOp> >, bool> std::_Rb_tree<unsigned long, std::pair<unsigned long const, ReplicatedBackend::InProgressOp>, std::_Select1st<std::pair<unsigned long const, ReplicatedBackend::InProgressOp> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, ReplicatedBackend::InProgressOp> > >::_M_insert_unique<std::pair<unsigned long, ReplicatedBackend::InProgressOp> >(std::pair<unsigned long, ReplicatedBackend::InProgressOp>&&) | |
| | | | | | + 0.10% tc_new | |
| | | | | | + 0.10% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.10% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.07% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | + 0.12% tc_new | |
| | | | | | + 0.12% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.12% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.05% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.06% SpinLock::SlowLock() | |
| | | | | | | + 0.06% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | + 0.02% operator new[](unsigned long) | |
| | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | + 0.01% PrimaryLogPG::eval_repop(PrimaryLogPG::RepGather*) | |
| | | | + 1.69% PrimaryLogPG::prepare_transaction(PrimaryLogPG::OpContext*) | |
| | | | | + 1.17% PrimaryLogPG::finish_ctx(PrimaryLogPG::OpContext*, int) | |
| | | | | | + 0.01% pg_log_entry_t::~pg_log_entry_t() | |
| | | | | | + 0.67% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, ceph::buffer::list> >*) | |
| | | | | | | + 0.67% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, ceph::buffer::list> >*) | |
| | | | | | | + 0.63% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | + 0.63% operator delete(void*) | |
| | | | | | | | + 0.02% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimitLocked() | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.62% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.62% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.52% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.06% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.04% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | | | + 0.01% madvise | |
| | | | | | | | | | + 0.01% tcmalloc::DLL_Remove(tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.46% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | + 0.45% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.04% operator delete(void*) | |
| | | | | | | + 0.04% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.04% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.04% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | + 0.03% SpinLock::SlowLock() | |
| | | | | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.16% std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::operator[](std::string&&) | |
| | | | | | | + 0.16% std::_Rb_tree_iterator<std::pair<std::string const, ceph::buffer::list> > std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::string&&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::string const, ceph::buffer::list> >, std::piecewise_construct_t const&, std::tuple<std::string&&>&&, std::tuple<>&&) | |
| | | | | | | + 0.16% tc_new | |
| | | | | | | + 0.16% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.16% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.11% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.05% SpinLock::SlowLock() | |
| | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | + 0.05% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.16% object_info_t::operator=(object_info_t const&) | |
| | | | | | | + 0.16% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::operator=(std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > > const&) | |
| | | | | | | + 0.16% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned long const, unsigned long> >*) | |
| | | | | | | + 0.16% operator delete(void*) | |
| | | | | | | + 0.16% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.16% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.12% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.10% SpinLock::SlowLock() | |
| | | | | | | | + 0.10% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | + 0.01% SnapSet::operator=(SnapSet const&) | |
| | | | | | + 0.07% void std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> >::_M_emplace_back_aux<pg_log_entry_t>(pg_log_entry_t&&) | |
| | | | | | | + 0.07% tc_new | |
| | | | | | | + 0.07% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.07% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.06% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% _init | |
| | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | + 0.03% PGTransaction::setattrs(hobject_t const&, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >&) | |
| | | | | | | + 0.02% ceph::buffer::list::list(ceph::buffer::list const&) | |
| | | | | | | | + 0.02% tc_new | |
| | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.01% std::_Rb_tree_iterator<std::pair<std::string const, boost::optional<ceph::buffer::list> > > std::_Rb_tree<std::string, std::pair<std::string const, boost::optional<ceph::buffer::list> >, std::_Select1st<std::pair<std::string const, boost::optional<ceph::buffer::list> > >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::optional<ceph::buffer::list> > > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::string const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::string const, boost::optional<ceph::buffer::list> > >, std::piecewise_construct_t const&, std::tuple<std::string const&>&&, std::tuple<>&&) | |
| | | | | | | | + 0.01% tc_new | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.01% PGTransaction::get_object_op_for_modify(hobject_t const&) | |
| | | | | | | + 0.01% std::_Rb_tree<hobject_t, std::pair<hobject_t const, PGTransaction::ObjectOperation>, std::_Select1st<std::pair<hobject_t const, PGTransaction::ObjectOperation> >, std::less<hobject_t>, std::allocator<std::pair<hobject_t const, PGTransaction::ObjectOperation> > >::_M_lower_bound(std::_Rb_tree_node<std::pair<hobject_t const, PGTransaction::ObjectOperation> >*, std::_Rb_tree_node<std::pair<hobject_t const, PGTransaction::ObjectOperation> >*, hobject_t const&) [clone .isra.1474] | |
| | | | | | | + 0.01% cmp(hobject_t const&, hobject_t const&) | |
| | | | | | + 0.02% object_info_t::encode(ceph::buffer::list&, unsigned long) const | |
| | | | | | | + 0.01% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | | + 0.01% ceph::buffer::ptr::append(char const*, unsigned int) | |
| | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::advance(int) | |
| | | | | | + 0.01% ceph::buffer::list::reserve(unsigned long) | |
| | | | | | | + 0.01% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | + 0.01% mempool::pool_t::adjust_count(long, long) | |
| | | | | | + 0.04% OSDMap::get_features(int, unsigned long*) const | |
| | | | | | + 0.01% std::string::compare(char const*) const | |
| | | | | | | + 0.01% __strlen_sse42 | |
| | | | | | | + 0.01% __memcmp_sse4_1 | |
| | | | | | + 0.01% std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) | |
| | | | | | | + 0.01% char* std::string::_S_construct<char const*>(char const*, char const*, std::allocator<char> const&, std::forward_iterator_tag) | |
| | | | | | | + 0.01% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | + 0.01% tc_new | |
| | | | | | + 0.03% operator delete(void*) | |
| | | | | | + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.52% PrimaryLogPG::do_osd_ops(PrimaryLogPG::OpContext*, std::vector<OSDOp, std::allocator<OSDOp> >&) | |
| | | | | + 0.22% PrimaryLogPG::write_update_size_and_usage(object_stat_sum_t&, object_info_t&, interval_set<unsigned long>&, unsigned long, unsigned long, bool) | |
| | | | | | + 0.01% interval_set<unsigned long>::intersection_of(interval_set<unsigned long> const&, interval_set<unsigned long> const&) | |
| | | | | | | + 0.01% interval_set<unsigned long>::intersection_size_asym(interval_set<unsigned long> const&, interval_set<unsigned long> const&) | |
| | | | | | | + 0.01% std::_Rb_tree_iterator<std::pair<unsigned long const, unsigned long> > std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::_M_insert_unique_<std::pair<unsigned long const, unsigned long>&>(std::_Rb_tree_const_iterator<std::pair<unsigned long const, unsigned long> >, std::pair<unsigned long const, unsigned long>&) | |
| | | | | | | + 0.01% tc_new | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.19% interval_set<unsigned long>::subtract(interval_set<unsigned long> const&) | |
| | | | | | | + 0.18% operator delete(void*) | |
| | | | | | | + 0.18% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.18% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.16% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | + 0.04% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | + 0.04% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | + 0.01% madvise | |
| | | | | | | + 0.11% SpinLock::SlowLock() | |
| | | | | | | + 0.11% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.03% interval_set<unsigned long>::insert(unsigned long, unsigned long, unsigned long*, unsigned long*) | |
| | | | | | | + 0.03% tc_new | |
| | | | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | + 0.01% interval_set<unsigned long>::union_of(interval_set<unsigned long> const&) | |
| | | | | | + 0.01% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned long const, unsigned long> >*) | |
| | | | | | + 0.01% operator delete(void*) | |
| | | | | + 0.02% PGTransaction::write(hobject_t const&, unsigned long, unsigned long, ceph::buffer::list&, unsigned int) | |
| | | | | | + 0.02% std::_Rb_tree_iterator<std::pair<hobject_t const, PGTransaction::ObjectOperation> > std::_Rb_tree<hobject_t, std::pair<hobject_t const, PGTransaction::ObjectOperation>, std::_Select1st<std::pair<hobject_t const, PGTransaction::ObjectOperation> >, std::less<hobject_t>, std::allocator<std::pair<hobject_t const, PGTransaction::ObjectOperation> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<hobject_t const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<hobject_t const, PGTransaction::ObjectOperation> >, std::piecewise_construct_t const&, std::tuple<hobject_t const&>&&, std::tuple<>&&) | |
| | | | | | | + 0.02% tc_new | |
| | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.01% interval_map<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange>, PGTransaction::ObjectOperation::SplitMerger>::insert(unsigned long, unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange>&&) | |
| | | | | | + 0.01% std::pair<std::_Rb_tree_iterator<std::pair<unsigned long const, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > > >, bool> std::_Rb_tree<unsigned long, std::pair<unsigned long const, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > >, std::_Select1st<std::pair<unsigned long const, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > > >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > > > >::_M_insert_unique<std::pair<unsigned long, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > > >(std::pair<unsigned long, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > >&&) | |
| | | | | | + 0.01% tc_new | |
| | | | | + 0.28% md_config_t::get_val_generic(std::string const&) const | |
| | | | | + 0.19% Mutex::Lock(bool) | |
| | | | | | + 0.19% pthread_mutex_lock | |
| | | | | | + 0.19% _L_lock_870 | |
| | | | | | + 0.19% __lll_lock_wait | |
| | | | | + 0.01% Mutex::Unlock() | |
| | | | | | + 0.01% __pthread_mutex_unlock | |
| | | | | | + 0.01% _L_unlock_713 | |
| | | | | | + 0.01% __lll_unlock_wake | |
| | | | | + 0.08% md_config_t::_get_val_generic(std::string const&) const | |
| | | | | + 0.05% ConfFile::normalize_key_name(std::string const&) | |
| | | | | | + 0.05% ConfFile::trim_whitespace(std::string&, bool) | |
| | | | | | + 0.05% std::string::_M_replace_safe(unsigned long, unsigned long, char const*, unsigned long) | |
| | | | | | + 0.05% std::string::_M_mutate(unsigned long, unsigned long, unsigned long) | |
| | | | | | + 0.05% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | + 0.05% tc_new | |
| | | | | | + 0.05% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.05% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.03% operator delete(void*) | |
| | | | | + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| | | | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | + 0.31% object_info_t::operator=(object_info_t&&) | |
| | | | | + 0.31% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned long const, unsigned long> >*) | |
| | | | | | + 0.30% operator delete(void*) | |
| | | | | | + 0.30% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.30% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.28% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | + 0.03% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | + 0.24% SpinLock::SlowLock() | |
| | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | + 0.24% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | + 0.01% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::swap(std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >&) | |
| | | | + 0.05% tc_new | |
| | | | + 0.05% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | + 0.05% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | + 0.01% SpinLock::SlowLock() | |
| | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | + 0.01% PrimaryLogPG::get_rw_locks(bool, PrimaryLogPG::OpContext*) | |
| | | | + 0.01% ObcLockManager::get_lock_type(ObjectContext::RWState::State, hobject_t const&, std::shared_ptr<ObjectContext>, boost::intrusive_ptr<OpRequest>) | |
| | | + 0.01% PrimaryLogPG::OpContext::OpContext(boost::intrusive_ptr<OpRequest>, osd_reqid_t, std::vector<OSDOp, std::allocator<OSDOp> >*, std::shared_ptr<ObjectContext>&, PrimaryLogPG*) | |
| | | + 0.01% object_locator_t::decode(ceph::buffer::list::iterator&) | |
| | | | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, char*) | |
| | | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, char*) | |
| | | | + 0.01% ceph::buffer::list::iterator_impl<false>::advance(int) | |
| | | + 0.02% std::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream(std::_Ios_Openmode) | |
| | | | + 0.01% std::basic_ios<char, std::char_traits<char> >::init(std::basic_streambuf<char, std::char_traits<char> >*) | |
| | | | + 0.01% std::basic_ios<char, std::char_traits<char> >::_M_cache_locale(std::locale const&) | |
| | | | + 0.01% bool std::has_facet<std::ctype<char> >(std::locale const&) | |
| | | | + 0.01% __dynamic_cast | |
| | | + 0.02% tc_new | |
| | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | + 0.01% tcmalloc::CentralFreeList::Populate() | |
| | + 0.01% PerfCounters::tinc(int, utime_t, unsigned int) | |
| | + 0.01% Mutex::Unlock() | |
| | | + 0.01% __pthread_mutex_unlock | |
| | + 0.01% OpRequest::mark_flag_point(unsigned char, char const*) | |
| | + 0.01% TrackedOp::mark_event(char const*, utime_t) | |
| | + 0.01% void std::vector<TrackedOp::Event, std::allocator<TrackedOp::Event> >::emplace_back<TrackedOp::Event>(TrackedOp::Event&&) | |
| | + 0.01% Mutex::Lock(bool) | |
| | + 0.01% pthread_mutex_lock | |
| + 0.01% Mutex::Lock(bool) | |
| + 0.02% Mutex::Unlock() | |
| | + 0.02% __pthread_mutex_unlock | |
| | + 0.02% _L_unlock_713 | |
| | + 0.02% __lll_unlock_wake | |
| + 0.01% pthread_self | |
| + 72.30% pthread_cond_timedwait | |
+ 0.01% __memcpy_chk_ssse3 | |
+ 0.01% std::local_Rb_tree_decrement(std::_Rb_tree_node_base*) | |
+ 0.01% std::_Rb_tree_rotate_right(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*&) | |
+ 0.01% std::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >::_M_pbump(char*, char*, long) | |
+ 0.01% std::string::_S_construct_aux_2(unsigned long, char, std::allocator<char> const&) | |
+ 0.01% std::string::_Rep::_M_dispose(std::allocator<char> const&) [clone .part.12] | |
+ 0.01% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
+ 0.01% std::string::resize(unsigned long) | |
+ 0.01% pthread_timedjoin_np | |
+ 0.01% _L_unlock_32 | |
+ 0.01% pthread_cond_signal | |
+ 0.04% tcmalloc::CentralFreeList::Init(unsigned long) | |
+ 0.01% tcmalloc::DLL_Init(tcmalloc::Span*) | |
+ 0.01% std::_Rb_tree<void const*, std::pair<void const* const, char const*>, std::_Select1st<std::pair<void const* const, char const*> >, std::less<void const*>, std::allocator<std::pair<void const* const, char const*> > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator<std::pair<void const* const, char const*> >, void const* const&) | |
+ 0.02% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| + 0.01% #### | |
| + 0.01% tc_realloc | |
+ 0.01% SpinLock::SpinLoop(long, int*) | |
+ 0.01% tc_realloc | |
+ 0.01% tc_memalign | |
+ 0.01% #### | |
+ 0.01% #### | |
| + 0.01% std::string::_Rep::_M_refdata() | |
+ 0.01% #### | |
| + 0.01% std::string::replace(__gnu_cxx::__normal_iterator<char*, std::string>, __gnu_cxx::__normal_iterator<char*, std::string>, __gnu_cxx::__normal_iterator<char const*, std::string>, __gnu_cxx::__normal_iterator<char const*, std::string>) | |
+ 0.01% #### | |
+ 0.01% MOSDRepScrubMap::get_type_name() const | |
Thread: 21415 (tp_osd_tp) - 19934 samples, time suspended=1708ms | |
+ 0.01% entity_addr_t::is_blank_ip() const | |
+ 0.01% operator<<(std::ostream&, OSD::io_queue const&) | |
+ 0.01% OSD::init() | |
+ 0.01% RefCountedObject::get() | |
+ 0.01% WeightedPriorityQueue<std::pair<spg_t, PGQueueable>, unsigned long>::enqueue_front(unsigned long, unsigned int, unsigned int, std::pair<spg_t, PGQueueable>) | |
+ 0.01% PrimaryLogPG::do_sparse_read(PrimaryLogPG::OpContext*, OSDOp&) | |
+ 0.01% PrimaryLogPG::setattrs_maybe_cache(std::shared_ptr<ObjectContext>, PrimaryLogPG::OpContext*, PGTransaction*, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >&) | |
+ 0.01% MOSDOp::get_spg() const | |
+ 0.01% BlueStore::_prepare_ondisk_format_super(std::shared_ptr<KeyValueDB::TransactionImpl>&) | |
+ 0.01% BlueStore::_open_collections(int*) | |
+ 0.01% BlueStore::_do_gc(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, BlueStore::GarbageCollector const&, BlueStore::WriteContext const&, unsigned long*, unsigned long*) | |
+ 0.01% BlueStore::allows_journal() | |
+ 0.01% ceph::buffer::list::iterator::advance(int) | |
+ 0.01% ghobject_t::encode(ceph::buffer::list&) const | |
+ 0.01% ceph_str_hash_linux(char const*, unsigned int) | |
+ 0.01% crc32_iscsi_00 | |
+ 0.01% #### | |
| + 0.01% malloc | |
+ 0.01% #### | |
| + 0.01% BlueStore::MempoolThread::entry() | |
+ 99.74% clone | |
| + 99.74% start_thread | |
| + 99.74% ShardedThreadPool::WorkThreadSharded::entry() | |
| + 99.74% ShardedThreadPool::shardedthreadpool_worker(unsigned int) | |
| + 99.73% OSD::ShardedOpWQ::_process(unsigned int, ceph::heartbeat_handle_d*) | |
| | + 6.65% PG::lock(bool) const | |
| | | + 6.65% Mutex::Lock(bool) | |
| | | + 6.65% pthread_mutex_lock | |
| | | + 6.65% _L_lock_812 | |
| | | + 6.65% __lll_lock_wait | |
| | + 20.60% PGQueueable::RunVis::operator()(boost::intrusive_ptr<OpRequest> const&) | |
| | | + 20.60% OSD::dequeue_op(boost::intrusive_ptr<PG>, boost::intrusive_ptr<OpRequest>, ThreadPool::TPHandle&) | |
| | | + 0.01% OSD::maybe_share_map(Session*, boost::intrusive_ptr<OpRequest>, std::shared_ptr<OSDMap const>) | |
| | | + 20.58% PrimaryLogPG::do_request(boost::intrusive_ptr<OpRequest>&, ThreadPool::TPHandle&) | |
| | | | + 20.57% PrimaryLogPG::do_op(boost::intrusive_ptr<OpRequest>&) | |
| | | | + 0.01% OSDService::_check_full(OSDService::s_names, std::ostream&) const | |
| | | | | + 0.01% std::ostream& std::ostream::_M_insert<double>(double) | |
| | | | | + 0.01% std::ostreambuf_iterator<char, std::char_traits<char> > std::num_put<char, std::ostreambuf_iterator<char, std::char_traits<char> > >::_M_insert_float<double>(std::ostreambuf_iterator<char, std::char_traits<char> >, std::ios_base&, char, char, double) const | |
| | | | | + 0.01% std::__convert_from_v(__locale_struct* const&, char*, int, char const*, ...) | |
| | | | | + 0.01% vsnprintf | |
| | | | | + 0.01% _IO_vfprintf | |
| | | | + 0.01% OSD::init_op_flags(boost::intrusive_ptr<OpRequest>&) | |
| | | | | + 0.01% OpRequest::set_rmw_flags(int) | |
| | | | + 0.01% hobject_t::hobject_t(hobject_t const&) | |
| | | | + 0.01% TrackedOp::put() | |
| | | | + 0.43% ceph::buffer::list::clear() | |
| | | | | + 0.43% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | + 0.43% ceph::buffer::ptr::release() | |
| | | | | + 0.43% ceph::buffer::raw_combined::~raw_combined() | |
| | | | | + 0.43% std::_Rb_tree<std::pair<unsigned long, unsigned long>, std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> >, std::_Select1st<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >, std::less<std::pair<unsigned long, unsigned long> >, std::allocator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > > >::_M_erase(std::_Rb_tree_node<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >*) | |
| | | | | + 0.43% operator delete(void*) | |
| | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | + 0.42% tcmalloc::ThreadCache::Scavenge() | |
| | | | | + 0.42% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | + 0.35% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | + 0.04% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | + 0.02% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.30% SpinLock::SlowLock() | |
| | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | + 0.29% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | + 0.12% std::vector<OSDOp, std::allocator<OSDOp> >::resize(unsigned long) | |
| | | | | + 0.12% std::vector<OSDOp, std::allocator<OSDOp> >::_M_default_append(unsigned long) | |
| | | | | + 0.11% tc_new | |
| | | | | + 0.11% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | + 0.11% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | + 0.07% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | + 0.12% PG::op_has_sufficient_caps(boost::intrusive_ptr<OpRequest>&) | |
| | | | | + 0.12% OSDCap::is_capable(std::string const&, std::string const&, long, std::string const&, bool, bool, std::vector<OpRequest::ClassInfo, std::allocator<OpRequest::ClassInfo> > const&) const | |
| | | | | + 0.09% std::vector<bool, std::allocator<bool> >::vector(unsigned long, bool const&, std::allocator<bool> const&) | |
| | | | | | + 0.09% tc_new | |
| | | | | | + 0.09% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.09% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.07% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | + 0.04% operator delete(void*) | |
| | | | | + 0.04% tcmalloc::ThreadCache::Scavenge() | |
| | | | | + 0.04% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | + 0.03% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | + 0.03% SpinLock::SlowLock() | |
| | | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.01% PG::check_in_progress_op(osd_reqid_t const&, eversion_t*, unsigned long*, int*) const | |
| | | | | + 0.01% PGLog::IndexedLog::get_request(osd_reqid_t const&, eversion_t*, unsigned long*, int*) const | |
| | | | | + 0.01% std::_Hashtable<osd_reqid_t, std::pair<osd_reqid_t const, pg_log_dup_t*>, std::allocator<std::pair<osd_reqid_t const, pg_log_dup_t*> >, std::__detail::_Select1st, std::equal_to<osd_reqid_t>, std::hash<osd_reqid_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_find_before_node(unsigned long, osd_reqid_t const&, unsigned long) const | |
| | | | + 0.01% PGLog::IndexedLog::get_request(osd_reqid_t const&, eversion_t*, unsigned long*, int*) const | |
| | | | | + 0.01% std::_Hashtable<osd_reqid_t, std::pair<osd_reqid_t const, pg_log_entry_t*>, std::allocator<std::pair<osd_reqid_t const, pg_log_entry_t*> >, std::__detail::_Select1st, std::equal_to<osd_reqid_t>, std::hash<osd_reqid_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, false> >::_M_find_before_node(unsigned long, osd_reqid_t const&, unsigned long) const | |
| | | | + 0.01% PrimaryLogPG::maybe_await_blocked_head(hobject_t const&, boost::intrusive_ptr<OpRequest>) | |
| | | | | + 0.01% SharedLRU<hobject_t, ObjectContext, std::less<hobject_t>, std::hash<hobject_t> >::lookup(hobject_t const&) | |
| | | | | + 0.01% std::_Rb_tree<hobject_t, std::pair<hobject_t const, std::pair<std::weak_ptr<ObjectContext>, ObjectContext*> >, std::_Select1st<std::pair<hobject_t const, std::pair<std::weak_ptr<ObjectContext>, ObjectContext*> > >, std::less<hobject_t>, std::allocator<std::pair<hobject_t const, std::pair<std::weak_ptr<ObjectContext>, ObjectContext*> > > >::find(hobject_t const&) | |
| | | | | | + 0.01% cmp(hobject_t const&, hobject_t const&) | |
| | | | | + 0.01% SharedLRU<hobject_t, ObjectContext, std::less<hobject_t>, std::hash<hobject_t> >::lru_add(hobject_t const&, std::shared_ptr<ObjectContext> const&, std::list<std::shared_ptr<ObjectContext>, std::allocator<std::shared_ptr<ObjectContext> > >*) | |
| | | | | + 0.01% std::__detail::_List_node_base::_M_transfer(std::__detail::_List_node_base*, std::__detail::_List_node_base*) | |
| | | | + 19.83% PrimaryLogPG::execute_ctx(PrimaryLogPG::OpContext*) | |
| | | | | + 0.01% std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() | |
| | | | | + 0.04% PrimaryLogPG::new_repop(PrimaryLogPG::OpContext*, std::shared_ptr<ObjectContext>, unsigned long) | |
| | | | | | + 0.01% hobject_t::hobject_t(hobject_t const&) | |
| | | | | | + 0.03% tc_new | |
| | | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 17.94% PrimaryLogPG::issue_repop(PrimaryLogPG::RepGather*, PrimaryLogPG::OpContext*) | |
| | | | | | + 0.01% std::__detail::_Map_base<osd_reqid_t, std::pair<osd_reqid_t const, pg_log_entry_t*>, std::allocator<std::pair<osd_reqid_t const, pg_log_entry_t*> >, std::__detail::_Select1st, std::equal_to<osd_reqid_t>, std::hash<osd_reqid_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true>, true>::operator[](osd_reqid_t const&) | |
| | | | | | | + 0.01% tc_new | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.01% ObjectContext::ondisk_write_lock() | |
| | | | | | + 0.01% PGTransaction::add_obc(std::shared_ptr<ObjectContext>) | |
| | | | | | | + 0.01% std::_Rb_tree_iterator<std::pair<hobject_t const, std::shared_ptr<ObjectContext> > > std::_Rb_tree<hobject_t, std::pair<hobject_t const, std::shared_ptr<ObjectContext> >, std::_Select1st<std::pair<hobject_t const, std::shared_ptr<ObjectContext> > >, std::less<hobject_t>, std::allocator<std::pair<hobject_t const, std::shared_ptr<ObjectContext> > > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<hobject_t const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<hobject_t const, std::shared_ptr<ObjectContext> > >, std::piecewise_construct_t const&, std::tuple<hobject_t const&>&&, std::tuple<>&&) | |
| | | | | | + 17.86% ReplicatedBackend::submit_transaction(hobject_t const&, object_stat_sum_t const&, eversion_t const&, std::unique_ptr<PGTransaction, std::default_delete<PGTransaction> >&&, eversion_t const&, eversion_t const&, std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> > const&, boost::optional<pg_hit_set_history_t>&, Context*, Context*, Context*, unsigned long, osd_reqid_t, boost::intrusive_ptr<OpRequest>) | |
| | | | | | | + 0.01% TrackedOp::put() | |
| | | | | | | + 0.19% ObjectStore::Transaction::~Transaction() | |
| | | | | | | | + 0.14% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | + 0.11% ceph::buffer::ptr::release() | |
| | | | | | | | | | + 0.01% ceph::buffer::raw_combined::~raw_combined() | |
| | | | | | | | | | | + 0.01% mempool::pool_t::adjust_count(long, long) | |
| | | | | | | | | | + 0.09% tc_free | |
| | | | | | | | | | + 0.09% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 0.09% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 0.08% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | + 0.07% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.07% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.02% operator delete(void*) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.02% std::_Rb_tree<ghobject_t, std::pair<ghobject_t const, unsigned int>, std::_Select1st<std::pair<ghobject_t const, unsigned int> >, std::less<ghobject_t>, std::allocator<std::pair<ghobject_t const, unsigned int> > >::_M_erase(std::_Rb_tree_node<std::pair<ghobject_t const, unsigned int> >*) | |
| | | | | | | | | + 0.02% operator delete(void*) | |
| | | | | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.03% ceph::buffer::ptr::release() | |
| | | | | | | | + 0.03% tc_free | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.03% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% ObjectStore::Transaction::Transaction() | |
| | | | | | | + 0.06% void std::vector<ObjectStore::Transaction, std::allocator<ObjectStore::Transaction> >::_M_emplace_back_aux<ObjectStore::Transaction>(ObjectStore::Transaction&&) | |
| | | | | | | | + 0.01% ObjectStore::Transaction::Transaction(ObjectStore::Transaction&&) | |
| | | | | | | | | + 0.01% ceph::buffer::list::list(ceph::buffer::list&&) | |
| | | | | | | | | + 0.01% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | + 0.06% tc_new | |
| | | | | | | | + 0.06% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.06% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.04% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.09% void std::_Rb_tree<pg_shard_t, pg_shard_t, std::_Identity<pg_shard_t>, std::less<pg_shard_t>, std::allocator<pg_shard_t> >::_M_insert_unique<std::_Rb_tree_const_iterator<pg_shard_t> >(std::_Rb_tree_const_iterator<pg_shard_t>, std::_Rb_tree_const_iterator<pg_shard_t>) | |
| | | | | | | | + 0.09% std::_Rb_tree_iterator<pg_shard_t> std::_Rb_tree<pg_shard_t, pg_shard_t, std::_Identity<pg_shard_t>, std::less<pg_shard_t>, std::allocator<pg_shard_t> >::_M_insert_<pg_shard_t const&>(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, pg_shard_t const&) | |
| | | | | | | | + 0.08% tc_new | |
| | | | | | | | + 0.07% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.07% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.05% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.01% PrimaryLogPG::bless_context(Context*) | |
| | | | | | | | + 0.01% PG::get(char const*) | |
| | | | | | | + 2.78% PrimaryLogPG::log_operation(std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> > const&, boost::optional<pg_hit_set_history_t> const&, eversion_t const&, eversion_t const&, bool, ObjectStore::Transaction&) | |
| | | | | | | | + 2.78% PG::append_log(std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> > const&, eversion_t, eversion_t, ObjectStore::Transaction&, bool) | |
| | | | | | | | + 0.01% ceph::logging::SubsystemMap::should_gather(unsigned int, int) | |
| | | | | | | | + 0.01% std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() | |
| | | | | | | | + 0.01% PG::get_osdmap() const | |
| | | | | | | | + 1.43% PG::write_if_dirty(ObjectStore::Transaction&) | |
| | | | | | | | | + 0.41% ObjectStore::Transaction::omap_setkeys(coll_t const&, ghobject_t const&, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > > const&) | |
| | | | | | | | | | + 0.30% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | | + 0.30% operator delete(void*) | |
| | | | | | | | | | | + 0.30% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 0.30% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.23% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | + 0.07% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | | | + 0.05% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | | | | | | | + 0.16% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | | + 0.16% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 0.02% ceph::buffer::list::list(ceph::buffer::list const&) | |
| | | | | | | | | | | + 0.01% ceph::buffer::ptr::make_shareable() | |
| | | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.08% ObjectStore::Transaction::_get_object_id(ghobject_t const&) | |
| | | | | | | | | | | + 0.08% std::_Rb_tree_iterator<std::pair<ghobject_t const, unsigned int> > std::_Rb_tree<ghobject_t, std::pair<ghobject_t const, unsigned int>, std::_Select1st<std::pair<ghobject_t const, unsigned int> >, std::less<ghobject_t>, std::allocator<std::pair<ghobject_t const, unsigned int> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<ghobject_t const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<ghobject_t const, unsigned int> >, std::piecewise_construct_t const&, std::tuple<ghobject_t const&>&&, std::tuple<>&&) | |
| | | | | | | | | | | + 0.08% tc_new | |
| | | | | | | | | | | + 0.08% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.08% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.07% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::list const&) | |
| | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.04% PG::prepare_write_info(std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >*) | |
| | | | | | | | | | + 0.04% PG::_prepare_write_info(CephContext*, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >*, unsigned int, pg_info_t&, pg_info_t&, PastIntervals&, bool, bool, bool, PerfCounters*) | |
| | | | | | | | | | + 0.03% pg_fast_info_t::encode(ceph::buffer::list&) const | |
| | | | | | | | | | | + 0.03% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | | | | | + 0.02% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | | | | + 0.02% tc_new | |
| | | | | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.01% posix_memalign | |
| | | | | | | | | | | + 0.01% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.01% tcmalloc::AlignmentForSize(unsigned long) | |
| | | | | | | | | | + 0.01% operator==(pg_stat_t const&, pg_stat_t const&) | |
| | | | | | | | | | + 0.01% bool std::operator==<int, std::allocator<int> >(std::vector<int, std::allocator<int> > const&, std::vector<int, std::allocator<int> > const&) | |
| | | | | | | | | | + 0.01% __memcmp_sse4_1 | |
| | | | | | | | | + 0.99% PGLog::write_log_and_missing(ObjectStore::Transaction&, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >*, coll_t const&, ghobject_t const&, bool) | |
| | | | | | | | | + 0.99% PGLog::_write_log_and_missing(ObjectStore::Transaction&, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >*, pg_log_t&, coll_t const&, ghobject_t const&, eversion_t, eversion_t, eversion_t, std::set<eversion_t, std::less<eversion_t>, std::allocator<eversion_t> > const&, std::set<std::string, std::less<std::string>, std::allocator<std::string> > const&, pg_missing_set<true> const&, bool, bool, bool, eversion_t, eversion_t, eversion_t, bool*, std::set<std::string, std::less<std::string>, std::allocator<std::string> >*) | |
| | | | | | | | | + 0.02% std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::operator[](std::string&&) | |
| | | | | | | | | | + 0.02% std::_Rb_tree_iterator<std::pair<std::string const, ceph::buffer::list> > std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::string&&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::string const, ceph::buffer::list> >, std::piecewise_construct_t const&, std::tuple<std::string&&>&&, std::tuple<>&&) | |
| | | | | | | | | | + 0.01% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator<std::pair<std::string const, ceph::buffer::list> >, std::string const&) | |
| | | | | | | | | | + 0.01% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_insert_node(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node<std::pair<std::string const, ceph::buffer::list> >*) | |
| | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.14% pg_log_entry_t::get_key_name() const | |
| | | | | | | | | | + 0.14% eversion_t::get_key_name() const | |
| | | | | | | | | | + 0.14% std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(unsigned long, char, std::allocator<char> const&) | |
| | | | | | | | | | + 0.14% std::string::_S_construct(unsigned long, char, std::allocator<char> const&) | |
| | | | | | | | | | + 0.14% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | + 0.14% tc_new | |
| | | | | | | | | | + 0.14% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.14% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.08% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.05% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.05% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.80% pg_log_entry_t::encode_with_checksum(ceph::buffer::list&) const | |
| | | | | | | | | | + 0.72% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | | + 0.72% operator delete(void*) | |
| | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimitLocked() | |
| | | | | | | | | | | + 0.71% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 0.71% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.56% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | + 0.10% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | + 0.09% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | + 0.46% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | | + 0.46% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.03% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.03% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 0.05% pg_log_entry_t::encode(ceph::buffer::list&) const | |
| | | | | | | | | | | + 0.01% ObjectModDesc::encode(ceph::buffer::list&) const | |
| | | | | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::advance(int) | |
| | | | | | | | | | | + 0.03% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | | | | | | + 0.03% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | | | | + 0.03% tc_new | |
| | | | | | | | | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.01% hobject_t::encode(ceph::buffer::list&) const | |
| | | | | | | | | | + 0.02% ceph::buffer::list::append(ceph::buffer::list const&) | |
| | | | | | | | | | | + 0.02% tc_new | |
| | | | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.01% ceph::buffer::list::reserve(unsigned long) | |
| | | | | | | | | | | + 0.01% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | | | + 0.01% posix_memalign | |
| | | | | | | | | | | + 0.01% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::Populate() | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.01% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.01% ceph::buffer::list::crc32c(unsigned int) const | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::c_str() const | |
| | | | | | | | | + 0.04% ceph::buffer::list::reserve(unsigned long) | |
| | | | | | | | | + 0.04% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | + 0.04% posix_memalign | |
| | | | | | | | | + 0.04% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% PG::update_snap_map(std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> > const&, ObjectStore::Transaction&) | |
| | | | | | | | | + 0.01% hobject_t::~hobject_t() | |
| | | | | | | | | + 0.01% std::string::_Rep::_M_dispose(std::allocator<char> const&) | |
| | | | | | | | + 0.26% PG::add_log_entry(pg_log_entry_t const&, bool) | |
| | | | | | | | | + 0.26% PGLog::IndexedLog::add(pg_log_entry_t const&, bool) | |
| | | | | | | | | + 0.26% std::__detail::_Map_base<osd_reqid_t, std::pair<osd_reqid_t const, pg_log_entry_t*>, std::allocator<std::pair<osd_reqid_t const, pg_log_entry_t*> >, std::__detail::_Select1st, std::equal_to<osd_reqid_t>, std::hash<osd_reqid_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true>, true>::operator[](osd_reqid_t const&) | |
| | | | | | | | | + 0.26% tc_new | |
| | | | | | | | | + 0.26% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.26% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.14% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% tcmalloc::DLL_Length(tcmalloc::Span const*) | |
| | | | | | | | | + 0.11% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | + 0.10% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.96% PGLog::IndexedLog::trim(CephContext*, eversion_t, std::set<eversion_t, std::less<eversion_t>, std::allocator<eversion_t> >*, std::set<std::string, std::less<std::string>, std::allocator<std::string> >*, eversion_t*) | |
| | | | | | | | | + 0.76% PGLog::IndexedLog::unindex(pg_log_entry_t const&) | |
| | | | | | | | | | + 0.76% operator delete(void*) | |
| | | | | | | | | | + 0.76% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 0.76% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 0.62% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | + 0.11% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | + 0.09% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | | | | | + 0.01% madvise | |
| | | | | | | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | | | | | | + 0.51% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.02% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | + 0.49% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.19% operator delete[](void*) | |
| | | | | | | | | + 0.19% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.19% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.14% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.05% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.04% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | + 0.08% SpinLock::SlowLock() | |
| | | | | | | | | + 0.08% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.03% PGLog::trim(eversion_t, pg_info_t&) | |
| | | | | | | | | + 0.03% PGLog::IndexedLog::trim(CephContext*, eversion_t, std::set<eversion_t, std::less<eversion_t>, std::allocator<eversion_t> >*, std::set<std::string, std::less<std::string>, std::allocator<std::string> >*, eversion_t*) | |
| | | | | | | | | + 0.01% std::pair<std::_Rb_tree_iterator<eversion_t>, bool> std::_Rb_tree<eversion_t, eversion_t, std::_Identity<eversion_t>, std::less<eversion_t>, std::allocator<eversion_t> >::_M_insert_unique<eversion_t const&>(eversion_t const&) | |
| | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.02% PGLog::IndexedLog::unindex(pg_log_entry_t const&) | |
| | | | | | | | | | + 0.01% std::_Hashtable<hobject_t, std::pair<hobject_t const, pg_log_entry_t*>, std::allocator<std::pair<hobject_t const, pg_log_entry_t*> >, std::__detail::_Select1st, std::equal_to<hobject_t>, std::hash<hobject_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::count(hobject_t const&) const | |
| | | | | | | | | | + 0.01% std::_Hashtable<osd_reqid_t, std::pair<osd_reqid_t const, pg_log_entry_t*>, std::allocator<std::pair<osd_reqid_t const, pg_log_entry_t*> >, std::__detail::_Select1st, std::equal_to<osd_reqid_t>, std::hash<osd_reqid_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::count(osd_reqid_t const&) const | |
| | | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% operator delete[](void*) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.09% tc_new | |
| | | | | | | | + 0.09% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.09% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.06% SpinLock::SlowLock() | |
| | | | | | | | + 0.06% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% void std::list<Context*, std::allocator<Context*> >::_M_insert<Context* const&>(std::_List_iterator<Context*>, Context* const&) | |
| | | | | | | | + 0.01% tc_new | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 11.86% PrimaryLogPG::queue_transactions(std::vector<ObjectStore::Transaction, std::allocator<ObjectStore::Transaction> >&, boost::intrusive_ptr<OpRequest>) | |
| | | | | | | | + 11.86% BlueStore::queue_transactions(ObjectStore::Sequencer*, std::vector<ObjectStore::Transaction, std::allocator<ObjectStore::Transaction> >&, boost::intrusive_ptr<TrackedOp>, ThreadPool::TPHandle*) | |
| | | | | | | | + 0.03% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | + 0.03% ceph::buffer::ptr::release() | |
| | | | | | | | | + 0.03% tc_free | |
| | | | | | | | | + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.03% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.02% ceph::buffer::list::contiguous_appender::contiguous_appender(ceph::buffer::list*, unsigned long, bool) | |
| | | | | | | | | + 0.02% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | + 0.02% posix_memalign | |
| | | | | | | | | + 0.02% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::Populate() | |
| | | | | | | | + 0.42% C_ContextsBase<Context, Context>::list_to_context(std::list<Context*, std::allocator<Context*> >&) | |
| | | | | | | | | + 0.42% operator delete(void*) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.42% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.42% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.33% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.07% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | + 0.05% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.25% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.25% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.30% BlueStore::_txc_create(BlueStore::OpSequencer*) | |
| | | | | | | | | + 0.24% RocksDBStore::get_transaction() | |
| | | | | | | | | | + 0.05% RocksDBStore::RocksDBTransactionImpl::RocksDBTransactionImpl(RocksDBStore*) | |
| | | | | | | | | | | + 0.05% rocksdb::WriteBatch::WriteBatch(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.05% std::string::reserve(unsigned long) | |
| | | | | | | | | | | + 0.05% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | | + 0.05% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | | + 0.05% tc_new | |
| | | | | | | | | | | + 0.05% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.05% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.19% tc_new | |
| | | | | | | | | | + 0.19% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.19% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.11% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.07% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | + 0.07% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.06% operator new[](unsigned long) | |
| | | | | | | | | + 0.05% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.05% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.04% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.01% BlueStore::_txc_finalize_kv(BlueStore::TransContext*, std::shared_ptr<KeyValueDB::TransactionImpl>) | |
| | | | | | | | | + 0.01% BlueStore::_txc_update_store_statfs(BlueStore::TransContext*) | |
| | | | | | | | + 0.02% BlueStore::_txc_state_proc(BlueStore::TransContext*) | |
| | | | | | | | | + 0.02% BlueStore::_txc_finish_io(BlueStore::TransContext*) | |
| | | | | | | | | + 0.01% BlueStore::_txc_state_proc(BlueStore::TransContext*) | |
| | | | | | | | | | + 0.01% std::condition_variable::notify_one() | |
| | | | | | | | | | + 0.01% _init | |
| | | | | | | | | + 0.02% pthread_mutex_lock | |
| | | | | | | | + 2.97% BlueStore::_txc_write_nodes(BlueStore::TransContext*, std::shared_ptr<KeyValueDB::TransactionImpl>) | |
| | | | | | | | | + 0.01% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | | | + 0.01% tc_free | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.05% ceph::buffer::list::contiguous_appender::contiguous_appender(ceph::buffer::list*, unsigned long, bool) | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::ptr(ceph::buffer::raw*) | |
| | | | | | | | | | + 0.04% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | | + 0.04% posix_memalign | |
| | | | | | | | | | + 0.04% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% ceph::buffer::list::contiguous_appender::append(char const*, unsigned long) | |
| | | | | | | | | | + 0.01% __memcpy_ssse3 | |
| | | | | | | | | + 2.56% BlueStore::ExtentMap::update(std::shared_ptr<KeyValueDB::TransactionImpl>, bool) | |
| | | | | | | | | | + 0.02% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | | + 0.02% ceph::buffer::ptr::release() | |
| | | | | | | | | | | + 0.02% tc_free | |
| | | | | | | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 2.46% void generate_extent_shard_key_and_apply<std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > >(std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > const&, unsigned int, std::string*, std::function<void (std::string const&)>) | |
| | | | | | | | | | | + 0.01% void get_extent_shard_key<std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > >(std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > const&, unsigned int, std::string*) | |
| | | | | | | | | | | | + 0.01% std::string::reserve(unsigned long) | |
| | | | | | | | | | | | + 0.01% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | | | + 0.01% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 2.45% RocksDBStore::RocksDBTransactionImpl::set(std::string const&, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | | | | + 1.21% RocksDBStore::RocksDBTransactionImpl::put_bat(rocksdb::WriteBatch&, rocksdb::ColumnFamilyHandle*, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | | | | | + 1.21% rocksdb::WriteBatch::Put(rocksdb::ColumnFamilyHandle*, rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | | | | | | | | | | + 1.21% rocksdb::WriteBatchInternal::Put(rocksdb::WriteBatch*, unsigned int, rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | | | | | | | | | | + 0.01% std::string::reserve(unsigned long) | |
| | | | | | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | | + 1.20% std::string::append(char const*, unsigned long) | |
| | | | | | | | | | | | + 1.20% std::string::reserve(unsigned long) | |
| | | | | | | | | | | | + 0.06% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | | | | + 0.06% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | | | | + 0.06% tc_new | |
| | | | | | | | | | | | | + 0.06% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | | | + 0.06% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | | | + 0.04% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::Populate() | |
| | | | | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | | | + 1.14% operator delete(void*) | |
| | | | | | | | | | | | + 0.02% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimitLocked() | |
| | | | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | | + 1.13% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | | + 1.12% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | | + 0.88% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | | + 0.13% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | | + 0.11% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | | + 0.74% SpinLock::SlowLock() | |
| | | | | | | | | | | | | + 0.02% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | | | + 0.72% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | | + 0.05% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | | + 0.05% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | | + 1.24% std::string::append(std::string const&) | |
| | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | + 1.23% std::string::reserve(unsigned long) | |
| | | | | | | | | | | + 0.01% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | | | + 0.01% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | + 1.22% operator delete(void*) | |
| | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 1.21% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 1.21% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 1.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | + 0.20% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | + 0.17% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | | | | | | | + 0.81% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | | + 0.81% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.03% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.03% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 0.05% BlueStore::ExtentMap::encode_some(unsigned int, unsigned int, ceph::buffer::list&, unsigned int*) | |
| | | | | | | | | | | + 0.02% ceph::buffer::list::contiguous_appender::contiguous_appender(ceph::buffer::list*, unsigned long, bool) | |
| | | | | | | | | | | | + 0.02% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | | | | + 0.02% posix_memalign | |
| | | | | | | | | | | | + 0.02% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.01% ceph::buffer::ptr::c_str() const | |
| | | | | | | | | | | + 0.01% __memcpy_ssse3 | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | | | + 0.02% tc_new | |
| | | | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% BlueStore::Onode::put() | |
| | | | | | | | | + 0.01% std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> >::basic_string(std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > const&) | |
| | | | | | | | | + 0.34% RocksDBStore::RocksDBTransactionImpl::set(std::string const&, char const*, unsigned long, ceph::buffer::list const&) | |
| | | | | | | | | | + 0.03% RocksDBStore::RocksDBTransactionImpl::put_bat(rocksdb::WriteBatch&, rocksdb::ColumnFamilyHandle*, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | | | | + 0.03% rocksdb::WriteBatch::Put(rocksdb::ColumnFamilyHandle*, rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | | | | | | | | | + 0.03% rocksdb::WriteBatchInternal::Put(rocksdb::WriteBatch*, unsigned int, rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | | | | | | | | | + 0.03% std::string::append(char const*, unsigned long) | |
| | | | | | | | | | | + 0.03% std::string::reserve(unsigned long) | |
| | | | | | | | | | | + 0.03% operator delete(void*) | |
| | | | | | | | | | | + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.03% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | + 0.03% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.30% std::string::assign(std::string const&) | |
| | | | | | | | | | | + 0.30% operator delete(void*) | |
| | | | | | | | | | | + 0.30% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 0.30% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.27% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | + 0.05% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | + 0.04% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | + 0.23% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | | + 0.22% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | + 0.01% std::_Rb_tree_increment(std::_Rb_tree_node_base*) | |
| | | | | | | | + 7.18% BlueStore::_txc_add_transaction(BlueStore::TransContext*, ObjectStore::Transaction*) | |
| | | | | | | | | + 0.01% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::ptr>, std::_Select1st<std::pair<std::string const, ceph::buffer::ptr> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, ceph::buffer::ptr> >*) | |
| | | | | | | | | | + 0.01% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::ptr>, std::_Select1st<std::pair<std::string const, ceph::buffer::ptr> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, ceph::buffer::ptr> >*) | |
| | | | | | | | | | + 0.01% _init | |
| | | | | | | | | + 0.01% decode(ceph::buffer::list&, ceph::buffer::list::iterator&) | |
| | | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, char*) | |
| | | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, ceph::buffer::list&) | |
| | | | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | + 0.01% coll_t::calc_str() | |
| | | | | | | | | | + 0.01% pg_t::calc_name(char*, char const*) const | |
| | | | | | | | | + 0.22% std::enable_if<denc_traits<std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >, void>::supported&&(!denc_traits<std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >, void>::need_contiguous), void>::type decode<std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >, denc_traits<std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >, void> >(std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >&, ceph::buffer::list::iterator&) | |
| | | | | | | | | | + 0.10% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | | + 0.10% operator delete(void*) | |
| | | | | | | | | | | + 0.10% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 0.10% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.08% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | + 0.06% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.06% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 0.11% std::_Rb_tree_iterator<std::pair<std::string const, ceph::buffer::ptr> > std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::ptr>, std::_Select1st<std::pair<std::string const, ceph::buffer::ptr> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >::_M_emplace_hint_unique<std::pair<std::string, ceph::buffer::ptr> >(std::_Rb_tree_const_iterator<std::pair<std::string const, ceph::buffer::ptr> >, std::pair<std::string, ceph::buffer::ptr>&&) | |
| | | | | | | | | | | + 0.01% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::ptr>, std::_Select1st<std::pair<std::string const, ceph::buffer::ptr> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >::_M_insert_node(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node<std::pair<std::string const, ceph::buffer::ptr> >*) | |
| | | | | | | | | | | | + 0.01% std::_Rb_tree_insert_and_rebalance(bool, std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node_base&) | |
| | | | | | | | | | | + 0.11% tc_new | |
| | | | | | | | | | | + 0.11% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.11% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.05% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.05% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.05% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, char*) | |
| | | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, ceph::buffer::list&) | |
| | | | | | | | | + 0.02% decode_str_str_map_to_bl(ceph::buffer::list::iterator&, ceph::buffer::list*) | |
| | | | | | | | | | + 0.02% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, ceph::buffer::list&) | |
| | | | | | | | | | + 0.02% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | | + 0.02% tc_new | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 1.73% BlueStore::_omap_setkeys(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>&, ceph::buffer::list&) | |
| | | | | | | | | | + 0.01% std::pair<std::_Rb_tree_iterator<boost::intrusive_ptr<BlueStore::Onode> >, bool> std::_Rb_tree<boost::intrusive_ptr<BlueStore::Onode>, boost::intrusive_ptr<BlueStore::Onode>, std::_Identity<boost::intrusive_ptr<BlueStore::Onode> >, std::less<boost::intrusive_ptr<BlueStore::Onode> >, std::allocator<boost::intrusive_ptr<BlueStore::Onode> > >::_M_insert_unique<boost::intrusive_ptr<BlueStore::Onode> const&>(boost::intrusive_ptr<BlueStore::Onode> const&) | |
| | | | | | | | | | + 1.25% RocksDBStore::RocksDBTransactionImpl::set(std::string const&, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | | | | + 1.25% RocksDBStore::RocksDBTransactionImpl::put_bat(rocksdb::WriteBatch&, rocksdb::ColumnFamilyHandle*, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | | | | + 1.24% rocksdb::WriteBatch::Put(rocksdb::ColumnFamilyHandle*, rocksdb::SliceParts const&, rocksdb::SliceParts const&) | |
| | | | | | | | | | | | + 1.24% rocksdb::WriteBatchInternal::Put(rocksdb::WriteBatch*, unsigned int, rocksdb::SliceParts const&, rocksdb::SliceParts const&) | |
| | | | | | | | | | | | + 0.01% std::string::reserve(unsigned long) | |
| | | | | | | | | | | | | + 0.01% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | | | + 1.24% std::string::append(char const*, unsigned long) | |
| | | | | | | | | | | | + 0.01% __memcpy_ssse3 | |
| | | | | | | | | | | | + 1.23% std::string::reserve(unsigned long) | |
| | | | | | | | | | | | + 0.16% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | | | | + 0.16% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | | | | + 0.16% tc_new | |
| | | | | | | | | | | | | + 0.16% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | | | + 0.16% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | | | + 0.12% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::Populate() | |
| | | | | | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | | | + 0.01% __errno_location | |
| | | | | | | | | | | | + 1.07% operator delete(void*) | |
| | | | | | | | | | | | + 0.02% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimitLocked() | |
| | | | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | | + 1.05% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | | + 1.05% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | | + 0.83% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | | + 0.22% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | | + 0.20% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | | + 0.60% SpinLock::SlowLock() | |
| | | | | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | | | + 0.60% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | | + 0.03% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | | + 0.03% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | | + 0.02% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, ceph::buffer::list&) | |
| | | | | | | | | | | + 0.02% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | | | + 0.01% std::__detail::_List_node_base::_M_reverse() | |
| | | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.42% std::string::append(std::string const&) | |
| | | | | | | | | | | + 0.42% std::string::reserve(unsigned long) | |
| | | | | | | | | | | + 0.17% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | | | + 0.17% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | | | + 0.17% tc_new | |
| | | | | | | | | | | | + 0.17% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | | + 0.17% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | | + 0.11% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | + 0.05% SpinLock::SlowLock() | |
| | | | | | | | | | | | | + 0.05% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | | + 0.26% operator delete(void*) | |
| | | | | | | | | | | + 0.26% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 0.26% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.18% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | + 0.06% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | + 0.04% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | + 0.13% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.13% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 0.01% std::string::append(char const*, unsigned long) | |
| | | | | | | | | | + 0.03% std::string::push_back(char) | |
| | | | | | | | | | + 0.03% std::string::reserve(unsigned long) | |
| | | | | | | | | | + 0.01% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | | + 0.01% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 0.02% operator delete(void*) | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.03% BlueStore::_omap_rmkeys(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>&, ceph::buffer::list&) | |
| | | | | | | | | | + 0.03% RocksDBStore::RocksDBTransactionImpl::rmkey(std::string const&, std::string const&) | |
| | | | | | | | | | + 0.03% rocksdb::WriteBatch::Delete(rocksdb::ColumnFamilyHandle*, rocksdb::Slice const&) | |
| | | | | | | | | | + 0.03% rocksdb::WriteBatchInternal::Delete(rocksdb::WriteBatch*, unsigned int, rocksdb::Slice const&) | |
| | | | | | | | | | + 0.03% std::string::append(char const*, unsigned long) | |
| | | | | | | | | | + 0.03% std::string::reserve(unsigned long) | |
| | | | | | | | | | + 0.03% operator delete(void*) | |
| | | | | | | | | | + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 0.03% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.11% BlueStore::_get_collection(coll_t const&) | |
| | | | | | | | | | + 0.05% std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) | |
| | | | | | | | | | | + 0.05% char* std::string::_S_construct<char const*>(char const*, char const*, std::allocator<char> const&, std::forward_iterator_tag) | |
| | | | | | | | | | | + 0.05% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | | + 0.05% tc_new | |
| | | | | | | | | | | + 0.05% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.05% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.06% operator delete(void*) | |
| | | | | | | | | | + 0.06% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 0.06% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 0.05% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | + 0.04% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.04% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.07% BlueStore::_setattrs(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>&, std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > > const&) | |
| | | | | | | | | | + 0.01% std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> >::_Rep::_M_dispose(mempool::pool_allocator<(mempool::pool_index_t)4, char> const&) [clone .part.1046] | |
| | | | | | | | | | + 0.01% std::_Rb_tree<std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> >, std::pair<std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > const, ceph::buffer::ptr>, std::_Select1st<std::pair<std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > const, ceph::buffer::ptr> >, std::less<std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > const, ceph::buffer::ptr> > >::_M_lower_bound(std::_Rb_tree_node<std::pair<std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > const, ceph::buffer::ptr> >*, std::_Rb_tree_node<std::pair<std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > const, ceph::buffer::ptr> >*, std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > const&) [clone .isra.1514] | |
| | | | | | | | | | + 0.01% std::pair<std::_Rb_tree_iterator<boost::intrusive_ptr<BlueStore::Onode> >, bool> std::_Rb_tree<boost::intrusive_ptr<BlueStore::Onode>, boost::intrusive_ptr<BlueStore::Onode>, std::_Identity<boost::intrusive_ptr<BlueStore::Onode> >, std::less<boost::intrusive_ptr<BlueStore::Onode> >, std::allocator<boost::intrusive_ptr<BlueStore::Onode> > >::_M_insert_unique<boost::intrusive_ptr<BlueStore::Onode> const&>(boost::intrusive_ptr<BlueStore::Onode> const&) | |
| | | | | | | | | | + 0.04% ceph::buffer::ptr::operator=(ceph::buffer::ptr&&) | |
| | | | | | | | | | | + 0.04% ceph::buffer::ptr::release() | |
| | | | | | | | | | | + 0.04% tc_free | |
| | | | | | | | | | | + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.03% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.02% ceph::buffer::ptr::ptr(char const*, unsigned int) | |
| | | | | | | | | | + 0.02% ceph::buffer::copy(char const*, unsigned int) | |
| | | | | | | | | | + 0.02% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | | + 0.01% mempool::pool_t::adjust_count(long, long) | |
| | | | | | | | | | + 0.01% posix_memalign | |
| | | | | | | | | | + 0.01% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.03% BlueStore::Collection::get_onode(ghobject_t const&, bool) | |
| | | | | | | | | | + 0.03% BlueStore::OnodeSpace::lookup(ghobject_t const&) | |
| | | | | | | | | | + 0.01% BlueStore::TwoQCache::_touch_onode(boost::intrusive_ptr<BlueStore::Onode>&) | |
| | | | | | | | | | + 0.02% std::_Hashtable<onode_map_handle, std::pair<onode_map_handle const, boost::intrusive_ptr<BlueStore::Onode> >, mempool::pool_allocator<(mempool::pool_index_t)4, std::pair<onode_map_handle const, boost::intrusive_ptr<BlueStore::Onode> > >, std::__detail::_Select1st, std::equal_to<onode_map_handle>, std::hash<onode_map_handle>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::find(onode_map_handle const&) | |
| | | | | | | | | | + 0.02% std::_Hashtable<onode_map_handle, std::pair<onode_map_handle const, boost::intrusive_ptr<BlueStore::Onode> >, mempool::pool_allocator<(mempool::pool_index_t)4, std::pair<onode_map_handle const, boost::intrusive_ptr<BlueStore::Onode> > >, std::__detail::_Select1st, std::equal_to<onode_map_handle>, std::hash<onode_map_handle>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_find_before_node(unsigned long, onode_map_handle const&, unsigned long) const | |
| | | | | | | | | + 2.06% BlueStore::_write(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>&, unsigned long, unsigned long, ceph::buffer::list&, unsigned int) | |
| | | | | | | | | | + 2.05% BlueStore::_do_write(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list&, unsigned int) | |
| | | | | | | | | | | + 0.02% BlueStore::_choose_write_options(boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned int, BlueStore::WriteContext*) | |
| | | | | | | | | | | | + 0.01% std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) | |
| | | | | | | | | | | | | + 0.01% char* std::string::_S_construct<char const*>(char const*, char const*, std::allocator<char> const&, std::forward_iterator_tag) | |
| | | | | | | | | | | | | + 0.01% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | | + 0.02% operator delete(void*) | |
| | | | | | | | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.49% BlueStore::_wctx_finish(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, BlueStore::WriteContext*, std::set<BlueStore::SharedBlob*, std::less<BlueStore::SharedBlob*>, std::allocator<BlueStore::SharedBlob*> >*) | |
| | | | | | | | | | | | + 0.49% operator delete(void*) | |
| | | | | | | | | | | | + 0.49% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | | + 0.49% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | | + 0.34% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | | + 0.09% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | | + 0.08% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | | + 0.25% SpinLock::SlowLock() | |
| | | | | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | | | + 0.24% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | | + 0.03% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | | + 0.03% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | | + 0.01% BlueStore::ExtentMap::compress_extent_map(unsigned long, unsigned long) | |
| | | | | | | | | | | | + 0.01% BlueStore::ExtentMap::seek_lextent(unsigned long) | |
| | | | | | | | | | | | + 0.01% operator delete[](void*) | |
| | | | | | | | | | | + 0.01% BlueStore::ExtentMap::fault_range(KeyValueDB*, unsigned int, unsigned int) | |
| | | | | | | | | | | + 1.53% BlueStore::_do_write_data(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list&, BlueStore::WriteContext*) | |
| | | | | | | | | | | + 1.51% BlueStore::_do_write_small(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list::iterator&, BlueStore::WriteContext*) | |
| | | | | | | | | | | + 0.87% std::_Function_base::_Base_manager<BlueStore::_do_write_small(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list::iterator&, BlueStore::WriteContext*)::{lambda(unsigned long, unsigned long)#3}>::_M_manager(std::_Any_data&, std::_Function_base::_Base_manager<BlueStore::_do_write_small(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list::iterator&, BlueStore::WriteContext*)::{lambda(unsigned long, unsigned long)#3}> const&, std::_Manager_operation) | |
| | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | | + 0.86% operator delete(void*) | |
| | | | | | | | | | | | + 0.86% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | | + 0.86% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | | + 0.68% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | | + 0.15% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | | + 0.13% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | | | + 0.53% SpinLock::SlowLock() | |
| | | | | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | | | + 0.52% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | | + 0.26% BlueStore::_get_deferred_op(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Onode>) | |
| | | | | | | | | | | | + 0.26% tc_new | |
| | | | | | | | | | | | + 0.26% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | | + 0.26% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | | + 0.20% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | + 0.04% SpinLock::SlowLock() | |
| | | | | | | | | | | | | + 0.04% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | | + 0.01% BlueStore::ExtentMap::seek_lextent(unsigned long) | |
| | | | | | | | | | | + 0.03% BlueStore::_buffer_cache_write(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Blob>, unsigned long, ceph::buffer::list&, unsigned int) [clone .isra.2035] | |
| | | | | | | | | | | | + 0.01% BlueStore::BufferSpace::_discard(BlueStore::Cache*, unsigned int, unsigned int) | |
| | | | | | | | | | | | + 0.01% operator new[](unsigned long) | |
| | | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.17% BlueStore::ExtentMap::set_lextent(boost::intrusive_ptr<BlueStore::Collection>&, unsigned long, unsigned long, unsigned long, boost::intrusive_ptr<BlueStore::Blob>, boost::intrusive::list<BlueStore::OldExtent, boost::intrusive::member_hook<BlueStore::OldExtent, boost::intrusive::list_member_hook<void, void, void>, &BlueStore::OldExtent::old_extent_item>, void, void, void>*) | |
| | | | | | | | | | | | + 0.13% BlueStore::ExtentMap::punch_hole(boost::intrusive_ptr<BlueStore::Collection>&, unsigned long, unsigned long, boost::intrusive::list<BlueStore::OldExtent, boost::intrusive::member_hook<BlueStore::OldExtent, boost::intrusive::list_member_hook<void, void, void>, &BlueStore::OldExtent::old_extent_item>, void, void, void>*) | |
| | | | | | | | | | | | | + 0.11% BlueStore::OldExtent::create(boost::intrusive_ptr<BlueStore::Collection>, unsigned int, unsigned int, unsigned int, boost::intrusive_ptr<BlueStore::Blob>&) | |
| | | | | | | | | | | | | | + 0.11% tc_new | |
| | | | | | | | | | | | | | + 0.11% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | | | | + 0.11% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | | | | + 0.09% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | | | + 0.02% BlueStore::ExtentMap::rm(boost::intrusive::tree_iterator<boost::intrusive::bhtraits<BlueStore::Extent, boost::intrusive::rbtree_node_traits<void*, true>, (boost::intrusive::link_mode_type)1, boost::intrusive::dft_tag, 3u>, false>) | |
| | | | | | | | | | | | | | + 0.02% operator delete[](void*) | |
| | | | | | | | | | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | | | + 0.01% BlueStore::ExtentMap::add(unsigned int, unsigned int, unsigned int, boost::intrusive_ptr<BlueStore::Blob>&) | |
| | | | | | | | | | | | | + 0.01% operator new[](unsigned long) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | + 0.03% operator new[](unsigned long) | |
| | | | | | | | | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.11% bluestore_blob_t::map(unsigned long, unsigned long, std::function<int (unsigned long, unsigned long)>) const | |
| | | | | | | | | | | | + 0.11% std::_Function_handler<int (unsigned long, unsigned long), BlueStore::_do_write_small(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list::iterator&, BlueStore::WriteContext*)::{lambda(unsigned long, unsigned long)#3}>::_M_invoke(std::_Any_data const&, unsigned long, unsigned long) | |
| | | | | | | | | | | | + 0.11% void std::vector<bluestore_pextent_t, mempool::pool_allocator<(mempool::pool_index_t)4, bluestore_pextent_t> >::_M_emplace_back_aux<bluestore_pextent_t>(bluestore_pextent_t&&) | |
| | | | | | | | | | | | + 0.11% operator new[](unsigned long) | |
| | | | | | | | | | | | + 0.11% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | | + 0.11% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | | + 0.08% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | + 0.03% SpinLock::SlowLock() | |
| | | | | | | | | | | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | | + 0.01% PerfCounters::inc(int, unsigned long) | |
| | | | | | | | | | | + 0.05% tc_new | |
| | | | | | | | | | | + 0.05% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.05% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.05% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% BlueStore::Onode::put() | |
| | | | | | | | | + 2.56% ceph::buffer::list::get_contiguous(unsigned int, unsigned int) | |
| | | | | | | | | | + 0.67% ceph::buffer::list::rebuild() | |
| | | | | | | | | | | + 0.59% ceph::buffer::list::rebuild(ceph::buffer::ptr&) | |
| | | | | | | | | | | | + 0.59% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | | | | + 0.59% operator delete(void*) | |
| | | | | | | | | | | | | + 0.59% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | | | + 0.59% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | | | + 0.52% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | | | + 0.11% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | | | + 0.09% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | | | | | | | + 0.01% madvise | |
| | | | | | | | | | | | | | + 0.40% SpinLock::SlowLock() | |
| | | | | | | | | | | | | | + 0.40% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | | | + 0.01% __memcpy_ssse3 | |
| | | | | | | | | | | + 0.08% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | | | + 0.01% mempool::pool_t::adjust_count(long, long) | |
| | | | | | | | | | | + 0.07% posix_memalign | |
| | | | | | | | | | | + 0.07% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.07% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.07% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.06% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 1.90% operator delete(void*) | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimitLocked() | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 1.88% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 1.88% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 1.56% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | + 0.28% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | | + 0.21% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | | + 0.01% tcmalloc::DLL_Remove(tcmalloc::Span*) | |
| | | | | | | | | | | + 1.26% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | + 1.25% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.06% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.06% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.33% tc_new | |
| | | | | | | | | | + 0.33% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.33% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.21% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.07% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | + 0.07% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::ListTooLong(tcmalloc::ThreadCache::FreeList*, unsigned long) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.90% RocksDBStore::RocksDBTransactionImpl::set(std::string const&, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | | + 0.89% RocksDBStore::RocksDBTransactionImpl::put_bat(rocksdb::WriteBatch&, rocksdb::ColumnFamilyHandle*, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | | | + 0.83% rocksdb::WriteBatch::Put(rocksdb::ColumnFamilyHandle*, rocksdb::SliceParts const&, rocksdb::SliceParts const&) | |
| | | | | | | | | | | + 0.83% rocksdb::WriteBatchInternal::Put(rocksdb::WriteBatch*, unsigned int, rocksdb::SliceParts const&, rocksdb::SliceParts const&) | |
| | | | | | | | | | | + 0.83% std::string::append(char const*, unsigned long) | |
| | | | | | | | | | | + 0.01% __memcpy_ssse3 | |
| | | | | | | | | | | + 0.83% std::string::reserve(unsigned long) | |
| | | | | | | | | | | + 0.01% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | | | + 0.01% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::Populate() | |
| | | | | | | | | | | + 0.82% operator delete(void*) | |
| | | | | | | | | | | + 0.02% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.80% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | + 0.80% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.69% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | + 0.10% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | + 0.08% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::DLL_Remove(tcmalloc::Span*) | |
| | | | | | | | | | | | + 0.58% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | | + 0.57% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.03% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.03% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 0.04% tc_new | |
| | | | | | | | | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.02% operator delete(void*) | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% std::_Hashtable<std::string, std::pair<std::string const, void*>, std::allocator<std::pair<std::string const, void*> >, std::__detail::_Select1st, std::equal_to<std::string>, std::hash<std::string>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::find(std::string const&) | |
| | | | | | | | | + 0.01% std::_Hashtable<std::string, std::pair<std::string const, void*>, std::allocator<std::pair<std::string const, void*> >, std::__detail::_Select1st, std::equal_to<std::string>, std::hash<std::string>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_find_before_node(unsigned long, std::string const&, unsigned long) const | |
| | | | | | | | | + 0.01% __memcmp_sse4_1 | |
| | | | | | | | + 0.01% ceph_clock_now() | |
| | | | | | | | + 0.01% __clock_gettime | |
| | | | | | | | + 0.01% #### | |
| | | | | | | + 0.13% std::_Rb_tree<hobject_t, std::pair<hobject_t const, PGTransaction::ObjectOperation>, std::_Select1st<std::pair<hobject_t const, PGTransaction::ObjectOperation> >, std::less<hobject_t>, std::allocator<std::pair<hobject_t const, PGTransaction::ObjectOperation> > >::_M_erase(std::_Rb_tree_node<std::pair<hobject_t const, PGTransaction::ObjectOperation> >*) | |
| | | | | | | | + 0.12% std::_Rb_tree<std::string, std::pair<std::string const, boost::optional<ceph::buffer::list> >, std::_Select1st<std::pair<std::string const, boost::optional<ceph::buffer::list> > >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::optional<ceph::buffer::list> > > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, boost::optional<ceph::buffer::list> > >*) | |
| | | | | | | | | + 0.01% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | | | + 0.01% tc_free | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.10% std::_Rb_tree<std::string, std::pair<std::string const, boost::optional<ceph::buffer::list> >, std::_Select1st<std::pair<std::string const, boost::optional<ceph::buffer::list> > >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::optional<ceph::buffer::list> > > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, boost::optional<ceph::buffer::list> > >*) | |
| | | | | | | | | | + 0.09% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | | + 0.09% ceph::buffer::ptr::release() | |
| | | | | | | | | | | + 0.01% ceph::buffer::raw_combined::~raw_combined() | |
| | | | | | | | | | | | + 0.01% mempool::get_pool(mempool::pool_index_t) | |
| | | | | | | | | | | + 0.09% tc_free | |
| | | | | | | | | | | + 0.09% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 0.09% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.07% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | | | | + 0.01% madvise | |
| | | | | | | | | | | + 0.06% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.06% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.01% std::string::_Rep::_M_dispose(std::allocator<char> const&) | |
| | | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 2.61% generate_transaction(std::unique_ptr<PGTransaction, std::default_delete<PGTransaction> >&, coll_t const&, std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> >&, ObjectStore::Transaction*, std::set<hobject_t, std::less<hobject_t>, std::allocator<hobject_t> >*, std::set<hobject_t, std::less<hobject_t>, std::allocator<hobject_t> >*) | |
| | | | | | | | + 0.01% ObjectStore::Transaction::_get_next_op() | |
| | | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::ptr const&) | |
| | | | | | | | | + 0.01% std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*) | |
| | | | | | | | + 0.03% std::list<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::operator=(std::list<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> > const&) | |
| | | | | | | | | + 0.03% tc_new | |
| | | | | | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 2.37% ObjectStore::Transaction::setattrs(coll_t const&, ghobject_t const&, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > > const&) | |
| | | | | | | | | + 0.05% ObjectStore::Transaction::_get_next_op() | |
| | | | | | | | | | + 0.03% ceph::buffer::list::append(ceph::buffer::ptr const&) | |
| | | | | | | | | | | + 0.03% tc_new | |
| | | | | | | | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.02% ceph::buffer::ptr::ptr(unsigned int) | |
| | | | | | | | | | + 0.02% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | | + 0.02% posix_memalign | |
| | | | | | | | | | + 0.02% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.02% ObjectStore::Transaction::_get_coll_id(coll_t const&) | |
| | | | | | | | | | + 0.02% std::_Rb_tree_iterator<std::pair<coll_t const, unsigned int> > std::_Rb_tree<coll_t, std::pair<coll_t const, unsigned int>, std::_Select1st<std::pair<coll_t const, unsigned int> >, std::less<coll_t>, std::allocator<std::pair<coll_t const, unsigned int> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<coll_t const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<coll_t const, unsigned int> >, std::piecewise_construct_t const&, std::tuple<coll_t const&>&&, std::tuple<>&&) | |
| | | | | | | | | | + 0.02% tc_new | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 2.31% std::enable_if<denc_traits<std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >, void>::supported&&(!denc_traits<std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >, void>::featured), void>::type encode<std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >, denc_traits<std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >, void> >(std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > > const&, ceph::buffer::list&, unsigned long) [clone .isra.1547] | |
| | | | | | | | | + 2.05% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | + 2.05% operator delete(void*) | |
| | | | | | | | | | + 2.05% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 2.05% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 1.66% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | + 0.35% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | + 0.02% _init | |
| | | | | | | | | | | | + 0.30% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | | | | | + 0.01% madvise | |
| | | | | | | | | | | | + 0.01% tcmalloc::DLL_Remove(tcmalloc::Span*) | |
| | | | | | | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | | + 1.27% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.02% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | + 1.25% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.04% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.04% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.02% ceph::buffer::list::list(ceph::buffer::list const&) | |
| | | | | | | | | | + 0.02% tc_new | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.08% ceph::buffer::list::contiguous_appender::contiguous_appender(ceph::buffer::list*, unsigned long, bool) | |
| | | | | | | | | | + 0.08% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | | + 0.08% posix_memalign | |
| | | | | | | | | | + 0.08% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.01% tcmalloc::AlignmentForSize(unsigned long) | |
| | | | | | | | | | + 0.07% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.07% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.07% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.06% ceph::buffer::list::append(ceph::buffer::ptr&&) | |
| | | | | | | | | | + 0.06% tc_new | |
| | | | | | | | | | + 0.06% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.06% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.04% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.10% ceph::buffer::list::append(ceph::buffer::list const&) | |
| | | | | | | | | | + 0.10% tc_new | |
| | | | | | | | | | + 0.10% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.10% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.04% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.04% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.04% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.01% std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) | |
| | | | | | | | + 0.02% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | | | + 0.02% posix_memalign | |
| | | | | | | | | + 0.02% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% std::__detail::_List_node_base::_M_unhook() | |
| | | | | | | | + 0.01% std::_Rb_tree_increment(std::_Rb_tree_node_base*) | |
| | | | | | | | + 0.02% tc_new | |
| | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.16% operator delete(void*) | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.16% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.16% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.11% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | | + 0.01% madvise | |
| | | | | | | | | + 0.10% SpinLock::SlowLock() | |
| | | | | | | | | + 0.10% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.01% ReplicatedBackend::InProgressOp::~InProgressOp() | |
| | | | | | | | + 0.01% std::_Rb_tree<pg_shard_t, pg_shard_t, std::_Identity<pg_shard_t>, std::less<pg_shard_t>, std::allocator<pg_shard_t> >::_M_erase(std::_Rb_tree_node<pg_shard_t>*) | |
| | | | | | | + 0.01% std::_Rb_tree<unsigned long, std::pair<unsigned long const, ReplicatedBackend::InProgressOp>, std::_Select1st<std::pair<unsigned long const, ReplicatedBackend::InProgressOp> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, ReplicatedBackend::InProgressOp> > >::find(unsigned long const&) const | |
| | | | | | | + 0.10% std::pair<std::_Rb_tree_iterator<std::pair<unsigned long const, ReplicatedBackend::InProgressOp> >, bool> std::_Rb_tree<unsigned long, std::pair<unsigned long const, ReplicatedBackend::InProgressOp>, std::_Select1st<std::pair<unsigned long const, ReplicatedBackend::InProgressOp> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, ReplicatedBackend::InProgressOp> > >::_M_insert_unique<std::pair<unsigned long, ReplicatedBackend::InProgressOp> >(std::pair<unsigned long, ReplicatedBackend::InProgressOp>&&) | |
| | | | | | | | + 0.10% tc_new | |
| | | | | | | | + 0.10% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.10% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.09% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.01% tc_new | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | + 0.03% tc_new | |
| | | | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | + 0.04% operator new[](unsigned long) | |
| | | | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | + 1.38% PrimaryLogPG::prepare_transaction(PrimaryLogPG::OpContext*) | |
| | | | | | + 0.75% PrimaryLogPG::finish_ctx(PrimaryLogPG::OpContext*, int) | |
| | | | | | | + 0.44% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, ceph::buffer::list> >*) | |
| | | | | | | | + 0.44% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, ceph::buffer::list> >*) | |
| | | | | | | | + 0.44% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | + 0.44% operator delete(void*) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.43% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.43% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.39% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.05% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.04% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | | + 0.34% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.34% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | + 0.12% std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::operator[](std::string&&) | |
| | | | | | | | + 0.12% std::_Rb_tree_iterator<std::pair<std::string const, ceph::buffer::list> > std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::string&&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::string const, ceph::buffer::list> >, std::piecewise_construct_t const&, std::tuple<std::string&&>&&, std::tuple<>&&) | |
| | | | | | | | + 0.12% tc_new | |
| | | | | | | | + 0.12% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.12% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.07% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.04% SpinLock::SlowLock() | |
| | | | | | | | | + 0.04% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.01% pg_log_entry_t::pg_log_entry_t(int, hobject_t const&, eversion_t const&, eversion_t const&, unsigned long, osd_reqid_t const&, utime_t const&, int) | |
| | | | | | | + 0.11% object_info_t::operator=(object_info_t const&) | |
| | | | | | | | + 0.11% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::operator=(std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > > const&) | |
| | | | | | | | + 0.10% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned long const, unsigned long> >*) | |
| | | | | | | | | + 0.10% operator delete(void*) | |
| | | | | | | | | + 0.10% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.10% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.07% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | + 0.06% SpinLock::SlowLock() | |
| | | | | | | | | + 0.06% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::_M_copy(std::_Rb_tree_node<std::pair<unsigned long const, unsigned long> > const*, std::_Rb_tree_node<std::pair<unsigned long const, unsigned long> >*) | |
| | | | | | | + 0.04% void std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> >::_M_emplace_back_aux<pg_log_entry_t>(pg_log_entry_t&&) | |
| | | | | | | | + 0.04% tc_new | |
| | | | | | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% PGTransaction::setattrs(hobject_t const&, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >&) | |
| | | | | | | | + 0.01% ceph::buffer::list::list(ceph::buffer::list const&) | |
| | | | | | | | | + 0.01% std::__detail::_List_node_base::_M_reverse() | |
| | | | | | | | + 0.01% PGTransaction::get_object_op_for_modify(hobject_t const&) | |
| | | | | | | + 0.01% SnapSet::encode(ceph::buffer::list&) const | |
| | | | | | | | + 0.01% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | + 0.02% object_info_t::encode(ceph::buffer::list&, unsigned long) const | |
| | | | | | | | + 0.01% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | + 0.01% hobject_t::encode(ceph::buffer::list&) const | |
| | | | | | | | + 0.01% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | + 0.01% OSDMap::get_features(int, unsigned long*) const | |
| | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% std::string::_Rep::_M_dispose(std::allocator<char> const&) | |
| | | | | | + 0.63% PrimaryLogPG::do_osd_ops(PrimaryLogPG::OpContext*, std::vector<OSDOp, std::allocator<OSDOp> >&) | |
| | | | | | + 0.18% PrimaryLogPG::write_update_size_and_usage(object_stat_sum_t&, object_info_t&, interval_set<unsigned long>&, unsigned long, unsigned long, bool) | |
| | | | | | | + 0.03% interval_set<unsigned long>::intersection_of(interval_set<unsigned long> const&, interval_set<unsigned long> const&) | |
| | | | | | | | + 0.03% interval_set<unsigned long>::intersection_size_asym(interval_set<unsigned long> const&, interval_set<unsigned long> const&) | |
| | | | | | | | + 0.03% std::_Rb_tree_iterator<std::pair<unsigned long const, unsigned long> > std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::_M_insert_unique_<std::pair<unsigned long const, unsigned long>&>(std::_Rb_tree_const_iterator<std::pair<unsigned long const, unsigned long> >, std::pair<unsigned long const, unsigned long>&) | |
| | | | | | | | + 0.03% tc_new | |
| | | | | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.09% interval_set<unsigned long>::subtract(interval_set<unsigned long> const&) | |
| | | | | | | | + 0.09% operator delete(void*) | |
| | | | | | | | + 0.09% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.09% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.09% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.03% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.03% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.06% SpinLock::SlowLock() | |
| | | | | | | | + 0.06% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.05% interval_set<unsigned long>::insert(unsigned long, unsigned long, unsigned long*, unsigned long*) | |
| | | | | | | | + 0.05% tc_new | |
| | | | | | | | + 0.05% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.05% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% interval_set<unsigned long>::union_of(interval_set<unsigned long> const&) | |
| | | | | | | + 0.01% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::swap(std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >&) | |
| | | | | | + 0.01% PGTransaction::write(hobject_t const&, unsigned long, unsigned long, ceph::buffer::list&, unsigned int) | |
| | | | | | | + 0.01% interval_map<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange>, PGTransaction::ObjectOperation::SplitMerger>::insert(unsigned long, unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange>&&) | |
| | | | | | | | + 0.01% std::pair<std::_Rb_tree_iterator<std::pair<unsigned long const, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > > >, bool> std::_Rb_tree<unsigned long, std::pair<unsigned long const, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > >, std::_Select1st<std::pair<unsigned long const, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > > >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > > > >::_M_insert_unique<std::pair<unsigned long, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > > >(std::pair<unsigned long, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > >&&) | |
| | | | | | | | + 0.01% std::_Rb_tree<unsigned long, std::pair<unsigned long const, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > >, std::_Select1st<std::pair<unsigned long const, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > > >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > > > >::_M_get_insert_unique_pos(unsigned long const&) | |
| | | | | | | + 0.01% ceph::buffer::list::list(ceph::buffer::list&&) | |
| | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::iterator_impl(ceph::buffer::list*, unsigned int) | |
| | | | | | + 0.44% md_config_t::get_val_generic(std::string const&) const | |
| | | | | | | + 0.24% Mutex::Lock(bool) | |
| | | | | | | | + 0.24% pthread_mutex_lock | |
| | | | | | | | + 0.24% _L_lock_870 | |
| | | | | | | | + 0.24% __lll_lock_wait | |
| | | | | | | + 0.01% Mutex::Unlock() | |
| | | | | | | | + 0.01% __pthread_mutex_unlock | |
| | | | | | | | + 0.01% _L_unlock_713 | |
| | | | | | | | + 0.01% __lll_unlock_wake | |
| | | | | | | + 0.19% md_config_t::_get_val_generic(std::string const&) const | |
| | | | | | | + 0.01% std::_Rb_tree<std::string, std::pair<std::string const, Option const&>, std::_Select1st<std::pair<std::string const, Option const&> >, std::less<std::string>, std::allocator<std::pair<std::string const, Option const&> > >::find(std::string const&) const | |
| | | | | | | | + 0.01% __memcmp_sse4_1 | |
| | | | | | | + 0.09% ConfFile::normalize_key_name(std::string const&) | |
| | | | | | | | + 0.09% ConfFile::trim_whitespace(std::string&, bool) | |
| | | | | | | | + 0.09% std::string::_M_replace_safe(unsigned long, unsigned long, char const*, unsigned long) | |
| | | | | | | | + 0.09% std::string::_M_mutate(unsigned long, unsigned long, unsigned long) | |
| | | | | | | | + 0.09% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | + 0.09% tc_new | |
| | | | | | | | + 0.09% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.09% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.06% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.03% SpinLock::SlowLock() | |
| | | | | | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.10% operator delete(void*) | |
| | | | | | | + 0.10% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.10% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.07% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.05% SpinLock::SlowLock() | |
| | | | | | | | + 0.05% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | + 0.01% std::string::_Rep::_M_dispose(std::allocator<char> const&) | |
| | | | | + 0.01% MOSDOpReply::MOSDOpReply(MOSDOp const*, int, unsigned int, int, bool) | |
| | | | | | + 0.01% ceph::buffer::list::list() | |
| | | | | | + 0.01% Message::Message(int, int, int) | |
| | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::iterator_impl(ceph::buffer::list*, unsigned int) | |
| | | | | + 0.01% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::_M_copy(std::_Rb_tree_node<std::pair<unsigned long const, unsigned long> > const*, std::_Rb_tree_node<std::pair<unsigned long const, unsigned long> >*) | |
| | | | | | + 0.01% tc_new | |
| | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 0.31% object_info_t::operator=(object_info_t&&) | |
| | | | | | + 0.31% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned long const, unsigned long> >*) | |
| | | | | | + 0.31% operator delete(void*) | |
| | | | | | + 0.31% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.31% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.27% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | + 0.04% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | + 0.01% madvise | |
| | | | | | | + 0.22% SpinLock::SlowLock() | |
| | | | | | | + 0.22% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | + 0.01% SnapSet::operator=(SnapSet const&) | |
| | | | | + 0.13% tc_new | |
| | | | | + 0.13% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | + 0.13% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | + 0.11% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.01% std::_Rb_tree<hobject_t, std::pair<hobject_t const, snapid_t>, std::_Select1st<std::pair<hobject_t const, snapid_t> >, std::less<hobject_t>, std::allocator<std::pair<hobject_t const, snapid_t> > >::find(hobject_t const&) | |
| | | | + 0.01% OSDOp::split_osd_op_vector_in_data(std::vector<OSDOp, std::allocator<OSDOp> >&, ceph::buffer::list&) | |
| | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, ceph::buffer::list&) | |
| | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | + 0.01% tc_new | |
| | | | + 0.01% std::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::~basic_ostringstream() | |
| | | | | + 0.01% std::ios_base::~ios_base() | |
| | | | | + 0.01% operator delete(void*) | |
| | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | + 0.01% tc_new | |
| | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | + 0.01% tcmalloc::CentralFreeList::Populate() | |
| | | + 0.01% ceph_clock_now() | |
| | | | + 0.01% __clock_gettime | |
| | | | + 0.01% #### | |
| | | + 0.01% OpRequest::mark_flag_point(unsigned char, char const*) | |
| | | + 0.01% TrackedOp::mark_event(char const*, utime_t) | |
| | | + 0.01% Mutex::Lock(bool) | |
| | + 0.02% Mutex::Unlock() | |
| | | + 0.02% __pthread_mutex_unlock | |
| | | + 0.02% _L_unlock_713 | |
| | | + 0.02% __lll_unlock_wake | |
| | + 72.46% pthread_cond_timedwait | |
| | + 0.01% operator delete(void*) | |
| | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | + 0.01% SpinLock::SlowLock() | |
| | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| + 0.01% ceph::HeartbeatMap::reset_timeout(ceph::heartbeat_handle_d*, unsigned long, unsigned long) | |
+ 0.01% __memcpy_chk_ssse3 | |
+ 0.01% __wcscpy_ssse3 | |
+ 0.01% std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*) | |
+ 0.01% std::_Rb_tree_increment(std::_Rb_tree_node_base*) | |
+ 0.01% std::string::_Rep::_M_dispose(std::allocator<char> const&) [clone .part.12] | |
+ 0.01% std::string::_Rep::_M_grab(std::allocator<char> const&, std::allocator<char> const&) | |
+ 0.01% std::string::replace(__gnu_cxx::__normal_iterator<char*, std::string>, __gnu_cxx::__normal_iterator<char*, std::string>, __gnu_cxx::__normal_iterator<char const*, std::string>, __gnu_cxx::__normal_iterator<char const*, std::string>) | |
+ 0.01% __pthread_rwlock_destroy | |
+ 0.02% pthread_cond_signal | |
+ 0.05% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
+ 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
+ 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
+ 0.01% tcmalloc::DLL_Init(tcmalloc::Span*) | |
+ 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
+ 0.02% SpinLock::SlowUnlock(unsigned long) | |
+ 0.01% tc_new_nothrow | |
+ 0.01% #### | |
| + 0.01% tc_new_nothrow | |
+ 0.01% #### | |
| + 0.01% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
+ 0.01% #### | |
+ 0.01% HeapLeakCheckerGlobalPrePost::~HeapLeakCheckerGlobalPrePost() | |
Thread: 21416 (tp_osd_tp) - 19934 samples, time suspended=1691ms | |
+ 0.01% OSD::init() | |
+ 0.01% ceph::buffer::ptr::iterator::iterator(ceph::buffer::ptr const*, unsigned long, bool) | |
+ 0.01% RefCountedObject::get() | |
+ 0.01% PG::_create(ObjectStore::Transaction&, spg_t, int) | |
+ 0.01% PrimaryLogPG::bless_context(Context*) | |
+ 0.01% PrimaryLogPG::log_operation(std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> > const&, boost::optional<pg_hit_set_history_t> const&, eversion_t const&, eversion_t const&, bool, ObjectStore::Transaction&) | |
+ 0.01% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::find(std::string const&) | |
+ 0.01% ObcLockManager::get_lock_type(ObjectContext::RWState::State, hobject_t const&, std::shared_ptr<ObjectContext>, boost::intrusive_ptr<OpRequest>) | |
+ 0.01% PG::MissingLoc::is_deleted(hobject_t const&) const | |
+ 0.01% PrimaryLogPG::WaitTrimTimer::WaitTrimTimer(boost::statechart::state<PrimaryLogPG::WaitTrimTimer, PrimaryLogPG::Trimming, boost::mpl::list<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, (boost::statechart::history_mode)0>::my_context)::OnTimer::finish(int) | |
+ 0.01% object_stat_sum_t::sub(object_stat_sum_t const&) | |
+ 0.01% BlueStore::LRUCache::_touch_onode(boost::intrusive_ptr<BlueStore::Onode>&) | |
+ 0.01% std::_Vector_base<bluestore_pextent_t, mempool::pool_allocator<(mempool::pool_index_t)4, bluestore_pextent_t> >::~_Vector_base() | |
+ 0.01% hobject_t::parse(std::string const&) | |
+ 0.01% crc32_iscsi_00 | |
+ 0.01% #### | |
| + 0.01% std::enable_if<denc_traits<interval_set<snapid_t>, void>::supported&&(!denc_traits<interval_set<snapid_t>, void>::featured), void>::type encode<interval_set<snapid_t>, denc_traits<interval_set<snapid_t>, void> >(interval_set<snapid_t> const&, ceph::buffer::list&, unsigned long) [clone .isra.1613] | |
+ 0.01% #### | |
| + 0.01% #### | |
| + 0.01% ceph::buffer::list::list(ceph::buffer::list const&) | |
| + 0.01% ceph::buffer::ptr::ptr(ceph::buffer::ptr&&) | |
+ 0.01% #### | |
| + 0.01% ceph::buffer::list::iterator::operator*() | |
+ 0.01% #### | |
| + 0.01% RocksDBStore::RocksDBTransactionImpl::put_bat(rocksdb::WriteBatch&, rocksdb::ColumnFamilyHandle*, std::string const&, ceph::buffer::list const&) | |
| + 0.01% std::_Rb_tree<std::string, std::pair<std::string const, std::string>, std::_Select1st<std::pair<std::string const, std::string> >, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > >::swap(std::_Rb_tree<std::string, std::pair<std::string const, std::string>, std::_Select1st<std::pair<std::string const, std::string> >, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > >&) | |
+ 0.01% #### | |
| + 0.01% void std::vector<entity_addr_t, std::allocator<entity_addr_t> >::emplace_back<entity_addr_t>(entity_addr_t&&) | |
+ 99.70% clone | |
| + 99.70% start_thread | |
| + 99.70% ShardedThreadPool::WorkThreadSharded::entry() | |
| + 99.70% ShardedThreadPool::shardedthreadpool_worker(unsigned int) | |
| + 99.70% OSD::ShardedOpWQ::_process(unsigned int, ceph::heartbeat_handle_d*) | |
| + 0.01% PGQueueable::PGQueueable(PGQueueable const&) | |
| + 7.58% PG::lock(bool) const | |
| | + 7.58% Mutex::Lock(bool) | |
| | + 7.58% pthread_mutex_lock | |
| | + 7.58% _L_lock_812 | |
| | + 7.58% __lll_lock_wait | |
| + 20.93% PGQueueable::RunVis::operator()(boost::intrusive_ptr<OpRequest> const&) | |
| | + 20.93% OSD::dequeue_op(boost::intrusive_ptr<PG>, boost::intrusive_ptr<OpRequest>, ThreadPool::TPHandle&) | |
| | + 0.01% RefCountedObject::get() | |
| | + 20.93% PrimaryLogPG::do_request(boost::intrusive_ptr<OpRequest>&, ThreadPool::TPHandle&) | |
| | + 0.01% PG::can_discard_request(boost::intrusive_ptr<OpRequest>&) | |
| | | + 0.01% PG::can_discard_op(boost::intrusive_ptr<OpRequest>&) | |
| | + 20.92% PrimaryLogPG::do_op(boost::intrusive_ptr<OpRequest>&) | |
| | + 0.01% hobject_t::~hobject_t() | |
| | | + 0.01% std::string::_Rep::_M_dispose(std::allocator<char> const&) | |
| | + 0.01% ceph::logging::SubsystemMap::should_gather(unsigned int, int) | |
| | + 0.02% OSDService::_check_full(OSDService::s_names, std::ostream&) const | |
| | | + 0.01% Mutex::Lock(bool) | |
| | | | + 0.01% pthread_mutex_lock | |
| | | | + 0.01% _L_lock_812 | |
| | | | + 0.01% __lll_lock_wait | |
| | | + 0.01% std::ostream& std::ostream::_M_insert<double>(double) | |
| | | + 0.01% std::ostreambuf_iterator<char, std::char_traits<char> > std::num_put<char, std::ostreambuf_iterator<char, std::char_traits<char> > >::_M_insert_float<double>(std::ostreambuf_iterator<char, std::char_traits<char> >, std::ios_base&, char, char, double) const | |
| | | + 0.01% std::__convert_from_v(__locale_struct* const&, char*, int, char const*, ...) | |
| | | + 0.01% vsnprintf | |
| | | + 0.01% _IO_vfprintf | |
| | | + 0.01% __printf_fp | |
| | + 0.01% PG::get_osdmap() const | |
| | + 0.36% ceph::buffer::list::clear() | |
| | | + 0.36% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | + 0.36% ceph::buffer::ptr::release() | |
| | | + 0.36% ceph::buffer::raw_combined::~raw_combined() | |
| | | + 0.36% std::_Rb_tree<std::pair<unsigned long, unsigned long>, std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> >, std::_Select1st<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >, std::less<std::pair<unsigned long, unsigned long> >, std::allocator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > > >::_M_erase(std::_Rb_tree_node<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >*) | |
| | | + 0.36% operator delete(void*) | |
| | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimitLocked() | |
| | | + 0.35% tcmalloc::ThreadCache::Scavenge() | |
| | | + 0.35% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | + 0.29% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | + 0.06% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | + 0.06% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | + 0.23% SpinLock::SlowLock() | |
| | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | + 0.22% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | + 0.11% std::vector<OSDOp, std::allocator<OSDOp> >::resize(unsigned long) | |
| | | + 0.11% std::vector<OSDOp, std::allocator<OSDOp> >::_M_default_append(unsigned long) | |
| | | + 0.01% void std::__uninitialized_default_n_1<false>::__uninit_default_n<OSDOp*, unsigned long>(OSDOp*, unsigned long) | |
| | | + 0.11% tc_new | |
| | | + 0.10% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | + 0.10% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | + 0.07% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | + 0.03% SpinLock::SlowLock() | |
| | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | + 0.13% PG::op_has_sufficient_caps(boost::intrusive_ptr<OpRequest>&) | |
| | | + 0.13% OSDCap::is_capable(std::string const&, std::string const&, long, std::string const&, bool, bool, std::vector<OpRequest::ClassInfo, std::allocator<OpRequest::ClassInfo> > const&) const | |
| | | + 0.08% std::vector<bool, std::allocator<bool> >::vector(unsigned long, bool const&, std::allocator<bool> const&) | |
| | | | + 0.08% tc_new | |
| | | | + 0.08% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | + 0.08% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | + 0.05% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | + 0.03% SpinLock::SlowLock() | |
| | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | + 0.05% operator delete(void*) | |
| | | + 0.05% tcmalloc::ThreadCache::Scavenge() | |
| | | + 0.05% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | + 0.05% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | + 0.04% SpinLock::SlowLock() | |
| | | + 0.04% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | + 0.02% PrimaryLogPG::maybe_await_blocked_head(hobject_t const&, boost::intrusive_ptr<OpRequest>) | |
| | | + 0.01% hobject_t::hobject_t(hobject_t const&) | |
| | | | + 0.01% std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) | |
| | | + 0.01% SharedLRU<hobject_t, ObjectContext, std::less<hobject_t>, std::hash<hobject_t> >::lookup(hobject_t const&) | |
| | | + 0.01% SharedLRU<hobject_t, ObjectContext, std::less<hobject_t>, std::hash<hobject_t> >::lru_add(hobject_t const&, std::shared_ptr<ObjectContext> const&, std::list<std::shared_ptr<ObjectContext>, std::allocator<std::shared_ptr<ObjectContext> > >*) | |
| | | + 0.01% std::_Hashtable<hobject_t, std::pair<hobject_t const, std::_List_iterator<std::pair<hobject_t, std::shared_ptr<ObjectContext> > > >, std::allocator<std::pair<hobject_t const, std::_List_iterator<std::pair<hobject_t, std::shared_ptr<ObjectContext> > > > >, std::__detail::_Select1st, std::equal_to<hobject_t>, std::hash<hobject_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::find(hobject_t const&) | |
| | | + 0.01% std::_Hashtable<hobject_t, std::pair<hobject_t const, std::_List_iterator<std::pair<hobject_t, std::shared_ptr<ObjectContext> > > >, std::allocator<std::pair<hobject_t const, std::_List_iterator<std::pair<hobject_t, std::shared_ptr<ObjectContext> > > > >, std::__detail::_Select1st, std::equal_to<hobject_t>, std::hash<hobject_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_find_before_node(unsigned long, hobject_t const&, unsigned long) const | |
| | + 20.21% PrimaryLogPG::execute_ctx(PrimaryLogPG::OpContext*) | |
| | | + 0.01% PrimaryLogPG::new_repop(PrimaryLogPG::OpContext*, std::shared_ptr<ObjectContext>, unsigned long) | |
| | | | + 0.01% tc_new | |
| | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | + 18.46% PrimaryLogPG::issue_repop(PrimaryLogPG::RepGather*, PrimaryLogPG::OpContext*) | |
| | | | + 0.01% ceph::buffer::list::list(ceph::buffer::list const&) | |
| | | | + 0.01% TrackedOp::put() | |
| | | | + 0.03% std::__detail::_Map_base<osd_reqid_t, std::pair<osd_reqid_t const, pg_log_entry_t*>, std::allocator<std::pair<osd_reqid_t const, pg_log_entry_t*> >, std::__detail::_Select1st, std::equal_to<osd_reqid_t>, std::hash<osd_reqid_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true>, true>::operator[](osd_reqid_t const&) | |
| | | | | + 0.02% tc_new | |
| | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 18.37% ReplicatedBackend::submit_transaction(hobject_t const&, object_stat_sum_t const&, eversion_t const&, std::unique_ptr<PGTransaction, std::default_delete<PGTransaction> >&&, eversion_t const&, eversion_t const&, std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> > const&, boost::optional<pg_hit_set_history_t>&, Context*, Context*, Context*, unsigned long, osd_reqid_t, boost::intrusive_ptr<OpRequest>) | |
| | | | | + 0.24% ObjectStore::Transaction::~Transaction() | |
| | | | | | + 0.17% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | + 0.16% ceph::buffer::ptr::release() | |
| | | | | | | | + 0.01% ceph::buffer::raw_combined::~raw_combined() | |
| | | | | | | | + 0.14% tc_free | |
| | | | | | | | + 0.14% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.14% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.12% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | + 0.11% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | + 0.10% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.06% ceph::buffer::ptr::release() | |
| | | | | | + 0.06% tc_free | |
| | | | | | + 0.06% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.06% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.05% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | + 0.04% SpinLock::SlowLock() | |
| | | | | | + 0.04% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.08% void std::vector<ObjectStore::Transaction, std::allocator<ObjectStore::Transaction> >::_M_emplace_back_aux<ObjectStore::Transaction>(ObjectStore::Transaction&&) | |
| | | | | | + 0.08% tc_new | |
| | | | | | + 0.08% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.08% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.06% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | + 0.02% std::_Rb_tree<hobject_t, std::pair<hobject_t const, std::shared_ptr<ObjectContext> >, std::_Select1st<std::pair<hobject_t const, std::shared_ptr<ObjectContext> > >, std::less<hobject_t>, std::allocator<std::pair<hobject_t const, std::shared_ptr<ObjectContext> > > >::_M_erase(std::_Rb_tree_node<std::pair<hobject_t const, std::shared_ptr<ObjectContext> > >*) | |
| | | | | | + 0.01% std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() | |
| | | | | | + 0.01% operator delete(void*) | |
| | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.10% void std::_Rb_tree<pg_shard_t, pg_shard_t, std::_Identity<pg_shard_t>, std::less<pg_shard_t>, std::allocator<pg_shard_t> >::_M_insert_unique<std::_Rb_tree_const_iterator<pg_shard_t> >(std::_Rb_tree_const_iterator<pg_shard_t>, std::_Rb_tree_const_iterator<pg_shard_t>) | |
| | | | | | + 0.10% std::_Rb_tree_iterator<pg_shard_t> std::_Rb_tree<pg_shard_t, pg_shard_t, std::_Identity<pg_shard_t>, std::less<pg_shard_t>, std::allocator<pg_shard_t> >::_M_insert_<pg_shard_t const&>(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, pg_shard_t const&) | |
| | | | | | + 0.10% tc_new | |
| | | | | | + 0.10% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.10% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.07% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.03% SpinLock::SlowLock() | |
| | | | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 2.80% PrimaryLogPG::log_operation(std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> > const&, boost::optional<pg_hit_set_history_t> const&, eversion_t const&, eversion_t const&, bool, ObjectStore::Transaction&) | |
| | | | | | + 2.80% PG::append_log(std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> > const&, eversion_t, eversion_t, ObjectStore::Transaction&, bool) | |
| | | | | | + 1.57% PG::write_if_dirty(ObjectStore::Transaction&) | |
| | | | | | | + 0.01% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, ceph::buffer::list> >*) | |
| | | | | | | | + 0.01% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | + 0.55% ObjectStore::Transaction::omap_setkeys(coll_t const&, ghobject_t const&, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > > const&) | |
| | | | | | | | + 0.40% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | + 0.40% operator delete(void*) | |
| | | | | | | | | + 0.40% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.40% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.35% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.08% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | + 0.06% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | | | | + 0.01% madvise | |
| | | | | | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | | | | | + 0.27% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | + 0.26% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.02% ceph::buffer::list::list(ceph::buffer::list const&) | |
| | | | | | | | | + 0.02% tc_new | |
| | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% ceph::buffer::list::contiguous_appender::~contiguous_appender() | |
| | | | | | | | + 0.01% ObjectStore::Transaction::_get_next_op() | |
| | | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::ptr const&) | |
| | | | | | | | | + 0.01% std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*) | |
| | | | | | | | + 0.11% ObjectStore::Transaction::_get_object_id(ghobject_t const&) | |
| | | | | | | | | + 0.11% std::_Rb_tree_iterator<std::pair<ghobject_t const, unsigned int> > std::_Rb_tree<ghobject_t, std::pair<ghobject_t const, unsigned int>, std::_Select1st<std::pair<ghobject_t const, unsigned int> >, std::less<ghobject_t>, std::allocator<std::pair<ghobject_t const, unsigned int> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<ghobject_t const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<ghobject_t const, unsigned int> >, std::piecewise_construct_t const&, std::tuple<ghobject_t const&>&&, std::tuple<>&&) | |
| | | | | | | | | + 0.11% tc_new | |
| | | | | | | | | + 0.11% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.11% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.10% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::list const&) | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::ptr(ceph::buffer::ptr const&) | |
| | | | | | | | + 0.01% std::_Rb_tree_increment(std::_Rb_tree_node_base*) | |
| | | | | | | + 0.03% PG::prepare_write_info(std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >*) | |
| | | | | | | | + 0.03% PG::_prepare_write_info(CephContext*, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >*, unsigned int, pg_info_t&, pg_info_t&, PastIntervals&, bool, bool, bool, PerfCounters*) | |
| | | | | | | | + 0.03% pg_fast_info_t::encode(ceph::buffer::list&) const | |
| | | | | | | | + 0.01% ceph::buffer::list::iterator::copy_in(unsigned int, char const*, bool) | |
| | | | | | | | + 0.02% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | | + 0.02% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | + 0.02% tc_new | |
| | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | + 0.99% PGLog::write_log_and_missing(ObjectStore::Transaction&, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >*, coll_t const&, ghobject_t const&, bool) | |
| | | | | | | + 0.99% PGLog::_write_log_and_missing(ObjectStore::Transaction&, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >*, pg_log_t&, coll_t const&, ghobject_t const&, eversion_t, eversion_t, eversion_t, std::set<eversion_t, std::less<eversion_t>, std::allocator<eversion_t> > const&, std::set<std::string, std::less<std::string>, std::allocator<std::string> > const&, pg_missing_set<true> const&, bool, bool, bool, eversion_t, eversion_t, eversion_t, bool*, std::set<std::string, std::less<std::string>, std::allocator<std::string> >*) | |
| | | | | | | + 0.01% ObjectStore::Transaction::omap_rmkeys(coll_t, ghobject_t const&, std::set<std::string, std::less<std::string>, std::allocator<std::string> > const&) | |
| | | | | | | | + 0.01% ObjectStore::Transaction::_get_object_id(ghobject_t const&) | |
| | | | | | | | + 0.01% std::_Rb_tree_iterator<std::pair<ghobject_t const, unsigned int> > std::_Rb_tree<ghobject_t, std::pair<ghobject_t const, unsigned int>, std::_Select1st<std::pair<ghobject_t const, unsigned int> >, std::less<ghobject_t>, std::allocator<std::pair<ghobject_t const, unsigned int> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<ghobject_t const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<ghobject_t const, unsigned int> >, std::piecewise_construct_t const&, std::tuple<ghobject_t const&>&&, std::tuple<>&&) | |
| | | | | | | | + 0.01% tc_new | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.01% std::pair<std::_Rb_tree_iterator<std::string>, bool> std::_Rb_tree<std::string, std::string, std::_Identity<std::string>, std::less<std::string>, std::allocator<std::string> >::_M_insert_unique<std::string>(std::string&&) | |
| | | | | | | | + 0.01% tc_new | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.02% std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::operator[](std::string&&) | |
| | | | | | | | + 0.02% std::_Rb_tree_iterator<std::pair<std::string const, ceph::buffer::list> > std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::string&&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::string const, ceph::buffer::list> >, std::piecewise_construct_t const&, std::tuple<std::string&&>&&, std::tuple<>&&) | |
| | | | | | | | + 0.01% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_insert_node(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node<std::pair<std::string const, ceph::buffer::list> >*) | |
| | | | | | | | + 0.02% tc_new | |
| | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.18% pg_log_entry_t::get_key_name() const | |
| | | | | | | | + 0.18% eversion_t::get_key_name() const | |
| | | | | | | | + 0.18% std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(unsigned long, char, std::allocator<char> const&) | |
| | | | | | | | + 0.18% std::string::_S_construct(unsigned long, char, std::allocator<char> const&) | |
| | | | | | | | + 0.18% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | + 0.18% tc_new | |
| | | | | | | | + 0.18% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.18% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.13% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.05% SpinLock::SlowLock() | |
| | | | | | | | + 0.05% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.74% pg_log_entry_t::encode_with_checksum(ceph::buffer::list&) const | |
| | | | | | | | + 0.67% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | + 0.67% operator delete(void*) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.66% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.66% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.51% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.11% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.09% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | | | + 0.01% madvise | |
| | | | | | | | | | + 0.40% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.40% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.03% pg_log_entry_t::encode(ceph::buffer::list&) const | |
| | | | | | | | | + 0.01% ceph::buffer::list::contiguous_appender::contiguous_appender(ceph::buffer::list*, unsigned long, bool) | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::end_c_str() | |
| | | | | | | | | + 0.02% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | | | | + 0.02% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | | + 0.02% tc_new | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% hobject_t::encode(ceph::buffer::list&) const | |
| | | | | | | | | + 0.01% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::list const&) | |
| | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.04% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | | + 0.04% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | + 0.04% tc_new | |
| | | | | | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% ceph::buffer::list::claim(ceph::buffer::list&, unsigned int) | |
| | | | | | | | + 0.01% ceph::buffer::list::claim_append(ceph::buffer::list&, unsigned int) | |
| | | | | | | | + 0.01% ceph::buffer::ptr::make_shareable() | |
| | | | | | | + 0.03% ceph::buffer::list::reserve(unsigned long) | |
| | | | | | | + 0.03% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | + 0.03% posix_memalign | |
| | | | | | | + 0.03% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.25% PG::add_log_entry(pg_log_entry_t const&, bool) | |
| | | | | | | + 0.25% PGLog::IndexedLog::add(pg_log_entry_t const&, bool) | |
| | | | | | | + 0.01% pg_log_entry_t::pg_log_entry_t(pg_log_entry_t const&) | |
| | | | | | | | + 0.01% ceph::buffer::list::list(ceph::buffer::list const&) | |
| | | | | | | + 0.24% std::__detail::_Map_base<osd_reqid_t, std::pair<osd_reqid_t const, pg_log_entry_t*>, std::allocator<std::pair<osd_reqid_t const, pg_log_entry_t*> >, std::__detail::_Select1st, std::equal_to<osd_reqid_t>, std::hash<osd_reqid_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true>, true>::operator[](osd_reqid_t const&) | |
| | | | | | | + 0.24% tc_new | |
| | | | | | | + 0.24% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.24% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.13% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% tcmalloc::DLL_Length(tcmalloc::Span const*) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.08% SpinLock::SlowLock() | |
| | | | | | | | + 0.08% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | + 0.86% PGLog::IndexedLog::trim(CephContext*, eversion_t, std::set<eversion_t, std::less<eversion_t>, std::allocator<eversion_t> >*, std::set<std::string, std::less<std::string>, std::allocator<std::string> >*, eversion_t*) | |
| | | | | | | + 0.01% std::__detail::_Map_base<osd_reqid_t, std::pair<osd_reqid_t const, pg_log_dup_t*>, std::allocator<std::pair<osd_reqid_t const, pg_log_dup_t*> >, std::__detail::_Select1st, std::equal_to<osd_reqid_t>, std::hash<osd_reqid_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true>, true>::operator[](osd_reqid_t const&) | |
| | | | | | | | + 0.01% std::_Hashtable<osd_reqid_t, std::pair<osd_reqid_t const, pg_log_dup_t*>, std::allocator<std::pair<osd_reqid_t const, pg_log_dup_t*> >, std::__detail::_Select1st, std::equal_to<osd_reqid_t>, std::hash<osd_reqid_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_insert_unique_node(unsigned long, unsigned long, std::__detail::_Hash_node<std::pair<osd_reqid_t const, pg_log_dup_t*>, true>*) | |
| | | | | | | + 0.69% PGLog::IndexedLog::unindex(pg_log_entry_t const&) | |
| | | | | | | | + 0.69% operator delete(void*) | |
| | | | | | | | + 0.69% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.69% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.53% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.09% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.09% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::DLL_Remove(tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | | | | + 0.43% SpinLock::SlowLock() | |
| | | | | | | | | + 0.43% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.04% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.04% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.16% operator delete[](void*) | |
| | | | | | | + 0.16% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.16% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.13% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | + 0.05% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | + 0.04% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | + 0.08% SpinLock::SlowLock() | |
| | | | | | | + 0.08% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.01% PGLog::trim(eversion_t, pg_info_t&) | |
| | | | | | | + 0.01% PGLog::IndexedLog::trim(CephContext*, eversion_t, std::set<eversion_t, std::less<eversion_t>, std::allocator<eversion_t> >*, std::set<std::string, std::less<std::string>, std::allocator<std::string> >*, eversion_t*) | |
| | | | | | | + 0.01% PGLog::IndexedLog::unindex(pg_log_entry_t const&) | |
| | | | | | | + 0.01% std::_Hashtable<osd_reqid_t, std::pair<osd_reqid_t const, pg_log_entry_t*>, std::allocator<std::pair<osd_reqid_t const, pg_log_entry_t*> >, std::__detail::_Select1st, std::equal_to<osd_reqid_t>, std::hash<osd_reqid_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::count(osd_reqid_t const&) const | |
| | | | | | + 0.11% tc_new | |
| | | | | | + 0.11% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.11% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.07% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.05% SpinLock::SlowLock() | |
| | | | | | + 0.05% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 12.28% PrimaryLogPG::queue_transactions(std::vector<ObjectStore::Transaction, std::allocator<ObjectStore::Transaction> >&, boost::intrusive_ptr<OpRequest>) | |
| | | | | | + 12.28% BlueStore::queue_transactions(ObjectStore::Sequencer*, std::vector<ObjectStore::Transaction, std::allocator<ObjectStore::Transaction> >&, boost::intrusive_ptr<TrackedOp>, ThreadPool::TPHandle*) | |
| | | | | | + 0.04% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | + 0.04% ceph::buffer::ptr::release() | |
| | | | | | | + 0.04% tc_free | |
| | | | | | | + 0.04% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.04% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.04% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | + 0.04% SpinLock::SlowLock() | |
| | | | | | | + 0.04% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.03% ceph::buffer::list::contiguous_appender::contiguous_appender(ceph::buffer::list*, unsigned long, bool) | |
| | | | | | | + 0.03% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | + 0.01% mempool::pool_t::adjust_count(long, long) | |
| | | | | | | + 0.02% posix_memalign | |
| | | | | | | + 0.02% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.02% tcmalloc::CentralFreeList::Populate() | |
| | | | | | + 0.38% C_ContextsBase<Context, Context>::list_to_context(std::list<Context*, std::allocator<Context*> >&) | |
| | | | | | | + 0.38% operator delete(void*) | |
| | | | | | | + 0.38% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.38% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.30% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | + 0.07% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | + 0.05% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | + 0.23% SpinLock::SlowLock() | |
| | | | | | | + 0.23% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.34% BlueStore::_txc_create(BlueStore::OpSequencer*) | |
| | | | | | | + 0.28% RocksDBStore::get_transaction() | |
| | | | | | | | + 0.07% RocksDBStore::RocksDBTransactionImpl::RocksDBTransactionImpl(RocksDBStore*) | |
| | | | | | | | | + 0.07% rocksdb::WriteBatch::WriteBatch(unsigned long, unsigned long) | |
| | | | | | | | | + 0.06% std::string::reserve(unsigned long) | |
| | | | | | | | | | + 0.06% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | + 0.06% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | + 0.06% tc_new | |
| | | | | | | | | | + 0.06% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.06% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.05% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% std::string::append(unsigned long, char) | |
| | | | | | | | + 0.21% tc_new | |
| | | | | | | | + 0.21% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.21% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.19% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.05% operator new[](unsigned long) | |
| | | | | | | + 0.05% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.05% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | + 0.01% BlueStore::_txc_state_proc(BlueStore::TransContext*) | |
| | | | | | | + 0.01% BlueStore::_txc_finish_io(BlueStore::TransContext*) | |
| | | | | | | + 0.01% BlueStore::_txc_state_proc(BlueStore::TransContext*) | |
| | | | | | | + 0.01% PerfCounters::tinc(int, utime_t, unsigned int) | |
| | | | | | + 2.95% BlueStore::_txc_write_nodes(BlueStore::TransContext*, std::shared_ptr<KeyValueDB::TransactionImpl>) | |
| | | | | | | + 0.01% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | + 0.03% ceph::buffer::list::contiguous_appender::contiguous_appender(ceph::buffer::list*, unsigned long, bool) | |
| | | | | | | | + 0.02% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | + 0.02% posix_memalign | |
| | | | | | | | | + 0.02% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | + 0.01% tcmalloc::AlignmentForSize(unsigned long) | |
| | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% ceph::buffer::create(unsigned int) | |
| | | | | | | + 2.59% BlueStore::ExtentMap::update(std::shared_ptr<KeyValueDB::TransactionImpl>, bool) | |
| | | | | | | | + 0.01% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | | + 0.01% tc_free | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 2.50% void generate_extent_shard_key_and_apply<std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > >(std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > const&, unsigned int, std::string*, std::function<void (std::string const&)>) | |
| | | | | | | | | + 0.01% void get_extent_shard_key<std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > >(std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > const&, unsigned int, std::string*) | |
| | | | | | | | | | + 0.01% std::string::reserve(unsigned long) | |
| | | | | | | | | | + 0.01% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | + 0.01% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 2.49% RocksDBStore::RocksDBTransactionImpl::set(std::string const&, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | | + 1.15% RocksDBStore::RocksDBTransactionImpl::put_bat(rocksdb::WriteBatch&, rocksdb::ColumnFamilyHandle*, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | | | + 1.15% rocksdb::WriteBatch::Put(rocksdb::ColumnFamilyHandle*, rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | | | | | | | | + 1.15% rocksdb::WriteBatchInternal::Put(rocksdb::WriteBatch*, unsigned int, rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | | | | | | | | | + 0.01% std::string::reserve(unsigned long) | |
| | | | | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 1.14% std::string::append(char const*, unsigned long) | |
| | | | | | | | | | | + 1.14% std::string::reserve(unsigned long) | |
| | | | | | | | | | | + 0.04% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | | | + 0.04% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | | | + 0.04% tc_new | |
| | | | | | | | | | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::Populate() | |
| | | | | | | | | | | + 1.11% operator delete(void*) | |
| | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 1.10% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 1.09% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.90% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | + 0.16% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | | | + 0.14% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | | | | | + 0.01% madvise | |
| | | | | | | | | | | | + 0.73% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | | + 0.72% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.03% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.03% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 0.01% rocksdb::ColumnFamilyHandleImpl::GetID() const | |
| | | | | | | | | + 1.33% std::string::append(std::string const&) | |
| | | | | | | | | | + 1.33% std::string::reserve(unsigned long) | |
| | | | | | | | | | + 0.01% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | | + 0.01% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 1.31% operator delete(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 1.31% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 1.31% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 1.00% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | + 0.23% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | + 0.20% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | + 0.75% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | + 0.74% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.05% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.05% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.04% BlueStore::ExtentMap::encode_some(unsigned int, unsigned int, ceph::buffer::list&, unsigned int*) | |
| | | | | | | | | + 0.02% ceph::buffer::list::contiguous_appender::contiguous_appender(ceph::buffer::list*, unsigned long, bool) | |
| | | | | | | | | | + 0.02% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | | + 0.02% posix_memalign | |
| | | | | | | | | | + 0.02% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% __memcpy_ssse3 | |
| | | | | | | | + 0.01% ceph::buffer::list::list(ceph::buffer::list&&) | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::swap(ceph::buffer::ptr&) | |
| | | | | | | | + 0.03% tc_new | |
| | | | | | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> >::basic_string(std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > const&) | |
| | | | | | | + 0.31% RocksDBStore::RocksDBTransactionImpl::set(std::string const&, char const*, unsigned long, ceph::buffer::list const&) | |
| | | | | | | + 0.05% RocksDBStore::RocksDBTransactionImpl::put_bat(rocksdb::WriteBatch&, rocksdb::ColumnFamilyHandle*, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | + 0.05% rocksdb::WriteBatch::Put(rocksdb::ColumnFamilyHandle*, rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | | | | | | + 0.05% rocksdb::WriteBatchInternal::Put(rocksdb::WriteBatch*, unsigned int, rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | | | | | | + 0.01% rocksdb::WriteBatchInternal::Count(rocksdb::WriteBatch const*) | |
| | | | | | | | + 0.05% std::string::append(char const*, unsigned long) | |
| | | | | | | | + 0.01% __memcpy_ssse3 | |
| | | | | | | | + 0.01% _init | |
| | | | | | | | + 0.04% std::string::reserve(unsigned long) | |
| | | | | | | | + 0.04% operator delete(void*) | |
| | | | | | | | + 0.04% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.04% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.04% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.03% SpinLock::SlowLock() | |
| | | | | | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% std::_Hashtable<std::string, std::pair<std::string const, void*>, std::allocator<std::pair<std::string const, void*> >, std::__detail::_Select1st, std::equal_to<std::string>, std::hash<std::string>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::find(std::string const&) | |
| | | | | | | | + 0.01% std::_Hashtable<std::string, std::pair<std::string const, void*>, std::allocator<std::pair<std::string const, void*> >, std::__detail::_Select1st, std::equal_to<std::string>, std::hash<std::string>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_find_before_node(unsigned long, std::string const&, unsigned long) const | |
| | | | | | | + 0.26% std::string::assign(std::string const&) | |
| | | | | | | + 0.26% operator delete(void*) | |
| | | | | | | + 0.26% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.26% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.21% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.05% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.04% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.16% SpinLock::SlowLock() | |
| | | | | | | | + 0.16% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | + 7.56% BlueStore::_txc_add_transaction(BlueStore::TransContext*, ObjectStore::Transaction*) | |
| | | | | | | + 0.01% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | + 0.01% decode(ceph::buffer::list&, ceph::buffer::list::iterator&) | |
| | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, char*) | |
| | | | | | | + 0.18% std::enable_if<denc_traits<std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >, void>::supported&&(!denc_traits<std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >, void>::need_contiguous), void>::type decode<std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >, denc_traits<std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >, void> >(std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >&, ceph::buffer::list::iterator&) | |
| | | | | | | | + 0.09% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | + 0.09% operator delete(void*) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.09% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.09% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.07% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | + 0.06% SpinLock::SlowLock() | |
| | | | | | | | | + 0.06% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.08% std::_Rb_tree_iterator<std::pair<std::string const, ceph::buffer::ptr> > std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::ptr>, std::_Select1st<std::pair<std::string const, ceph::buffer::ptr> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >::_M_emplace_hint_unique<std::pair<std::string, ceph::buffer::ptr> >(std::_Rb_tree_const_iterator<std::pair<std::string const, ceph::buffer::ptr> >, std::pair<std::string, ceph::buffer::ptr>&&) | |
| | | | | | | | + 0.08% tc_new | |
| | | | | | | | + 0.07% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.07% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.04% SpinLock::SlowLock() | |
| | | | | | | | | + 0.04% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.02% decode_str_str_map_to_bl(ceph::buffer::list::iterator&, ceph::buffer::list*) | |
| | | | | | | | + 0.02% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, ceph::buffer::list&) | |
| | | | | | | | + 0.02% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | + 0.02% tc_new | |
| | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 1.93% BlueStore::_omap_setkeys(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>&, ceph::buffer::list&) | |
| | | | | | | | + 1.39% RocksDBStore::RocksDBTransactionImpl::set(std::string const&, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | | + 1.39% RocksDBStore::RocksDBTransactionImpl::put_bat(rocksdb::WriteBatch&, rocksdb::ColumnFamilyHandle*, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | | + 0.02% rocksdb::WriteBatch::Put(rocksdb::ColumnFamilyHandle*, rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | | | | | | | | + 0.02% rocksdb::WriteBatchInternal::Put(rocksdb::WriteBatch*, unsigned int, rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | | | | | | | | + 0.02% std::string::append(char const*, unsigned long) | |
| | | | | | | | | | + 0.02% std::string::reserve(unsigned long) | |
| | | | | | | | | | + 0.01% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | | + 0.01% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 1.37% rocksdb::WriteBatch::Put(rocksdb::ColumnFamilyHandle*, rocksdb::SliceParts const&, rocksdb::SliceParts const&) | |
| | | | | | | | | + 1.37% rocksdb::WriteBatchInternal::Put(rocksdb::WriteBatch*, unsigned int, rocksdb::SliceParts const&, rocksdb::SliceParts const&) | |
| | | | | | | | | + 1.37% std::string::append(char const*, unsigned long) | |
| | | | | | | | | + 1.37% std::string::reserve(unsigned long) | |
| | | | | | | | | + 0.12% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | + 0.12% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | + 0.12% tc_new | |
| | | | | | | | | | + 0.12% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.12% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.08% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 1.25% operator delete(void*) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimitLocked() | |
| | | | | | | | | + 1.24% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 1.24% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 1.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.30% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | + 0.24% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | + 0.01% tcmalloc::DLL_Remove(tcmalloc::Span*) | |
| | | | | | | | | | + 0.70% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | + 0.69% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.03% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.03% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, ceph::buffer::list&) | |
| | | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::ptr(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.47% std::string::append(std::string const&) | |
| | | | | | | | | + 0.47% std::string::reserve(unsigned long) | |
| | | | | | | | | + 0.12% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | + 0.12% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | + 0.12% tc_new | |
| | | | | | | | | | + 0.12% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.12% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.07% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | + 0.05% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.05% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.35% operator delete(void*) | |
| | | | | | | | | + 0.35% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.35% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.27% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.05% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.05% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.21% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.21% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.01% std::string::append(char const*, unsigned long) | |
| | | | | | | | | + 0.01% std::string::reserve(unsigned long) | |
| | | | | | | | + 0.05% std::string::push_back(char) | |
| | | | | | | | | + 0.05% std::string::reserve(unsigned long) | |
| | | | | | | | | + 0.02% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | + 0.02% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | + 0.02% tc_new | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.03% operator delete(void*) | |
| | | | | | | | | + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.03% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.05% BlueStore::_omap_rmkeys(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>&, ceph::buffer::list&) | |
| | | | | | | | + 0.05% RocksDBStore::RocksDBTransactionImpl::rmkey(std::string const&, std::string const&) | |
| | | | | | | | + 0.05% rocksdb::WriteBatch::Delete(rocksdb::ColumnFamilyHandle*, rocksdb::Slice const&) | |
| | | | | | | | + 0.05% rocksdb::WriteBatchInternal::Delete(rocksdb::WriteBatch*, unsigned int, rocksdb::Slice const&) | |
| | | | | | | | + 0.05% std::string::append(char const*, unsigned long) | |
| | | | | | | | + 0.05% std::string::reserve(unsigned long) | |
| | | | | | | | + 0.05% operator delete(void*) | |
| | | | | | | | + 0.05% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.05% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.05% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.03% SpinLock::SlowLock() | |
| | | | | | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.09% BlueStore::_get_collection(coll_t const&) | |
| | | | | | | | + 0.01% std::_Hashtable<coll_t, std::pair<coll_t const, boost::intrusive_ptr<BlueStore::Collection> >, mempool::pool_allocator<(mempool::pool_index_t)4, std::pair<coll_t const, boost::intrusive_ptr<BlueStore::Collection> > >, std::__detail::_Select1st, std::equal_to<coll_t>, std::hash<coll_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_find_before_node(unsigned long, coll_t const&, unsigned long) const | |
| | | | | | | | + 0.01% RefCountedObject::get() const | |
| | | | | | | | + 0.04% std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) | |
| | | | | | | | | + 0.04% char* std::string::_S_construct<char const*>(char const*, char const*, std::allocator<char> const&, std::forward_iterator_tag) | |
| | | | | | | | | + 0.04% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | + 0.04% tc_new | |
| | | | | | | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.03% SpinLock::SlowLock() | |
| | | | | | | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.04% operator delete(void*) | |
| | | | | | | | + 0.04% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.04% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.09% BlueStore::_setattrs(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>&, std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > > const&) | |
| | | | | | | | + 0.08% ceph::buffer::ptr::operator=(ceph::buffer::ptr&&) | |
| | | | | | | | | + 0.08% ceph::buffer::ptr::release() | |
| | | | | | | | | + 0.01% _init | |
| | | | | | | | | + 0.07% tc_free | |
| | | | | | | | | + 0.07% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.07% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.04% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.04% SpinLock::SlowLock() | |
| | | | | | | | | + 0.04% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% ceph::buffer::ptr::ptr(char const*, unsigned int) | |
| | | | | | | | + 0.01% ceph::buffer::copy(char const*, unsigned int) | |
| | | | | | | | + 0.01% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | + 0.01% posix_memalign | |
| | | | | | | | + 0.01% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.04% BlueStore::Collection::get_onode(ghobject_t const&, bool) | |
| | | | | | | | + 0.04% BlueStore::OnodeSpace::lookup(ghobject_t const&) | |
| | | | | | | | + 0.03% std::_Hashtable<onode_map_handle, std::pair<onode_map_handle const, boost::intrusive_ptr<BlueStore::Onode> >, mempool::pool_allocator<(mempool::pool_index_t)4, std::pair<onode_map_handle const, boost::intrusive_ptr<BlueStore::Onode> > >, std::__detail::_Select1st, std::equal_to<onode_map_handle>, std::hash<onode_map_handle>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::find(onode_map_handle const&) | |
| | | | | | | | | + 0.03% std::_Hashtable<onode_map_handle, std::pair<onode_map_handle const, boost::intrusive_ptr<BlueStore::Onode> >, mempool::pool_allocator<(mempool::pool_index_t)4, std::pair<onode_map_handle const, boost::intrusive_ptr<BlueStore::Onode> > >, std::__detail::_Select1st, std::equal_to<onode_map_handle>, std::hash<onode_map_handle>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_find_before_node(unsigned long, onode_map_handle const&, unsigned long) const | |
| | | | | | | | + 0.01% PerfCounters::inc(int, unsigned long) | |
| | | | | | | + 1.79% BlueStore::_write(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>&, unsigned long, unsigned long, ceph::buffer::list&, unsigned int) | |
| | | | | | | | + 1.79% BlueStore::_do_write(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list&, unsigned int) | |
| | | | | | | | + 0.03% BlueStore::_choose_write_options(boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned int, BlueStore::WriteContext*) | |
| | | | | | | | | + 0.02% std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) | |
| | | | | | | | | | + 0.02% char* std::string::_S_construct<char const*>(char const*, char const*, std::allocator<char> const&, std::forward_iterator_tag) | |
| | | | | | | | | | + 0.02% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | + 0.02% tc_new | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.41% BlueStore::_wctx_finish(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, BlueStore::WriteContext*, std::set<BlueStore::SharedBlob*, std::less<BlueStore::SharedBlob*>, std::allocator<BlueStore::SharedBlob*> >*) | |
| | | | | | | | | + 0.01% BlueStore::Blob::discard_unallocated(BlueStore::Collection*) | |
| | | | | | | | | + 0.40% operator delete(void*) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimitLocked() | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.39% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.39% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.27% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.10% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.08% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.17% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.17% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.03% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.03% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.01% BlueStore::ExtentMap::compress_extent_map(unsigned long, unsigned long) | |
| | | | | | | | | + 0.01% BlueStore::ExtentMap::seek_lextent(unsigned long) | |
| | | | | | | | + 1.34% BlueStore::_do_write_data(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list&, BlueStore::WriteContext*) | |
| | | | | | | | | + 1.34% BlueStore::_do_write_small(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list::iterator&, BlueStore::WriteContext*) | |
| | | | | | | | | + 0.77% std::_Function_base::_Base_manager<BlueStore::_do_write_small(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list::iterator&, BlueStore::WriteContext*)::{lambda(unsigned long, unsigned long)#3}>::_M_manager(std::_Any_data&, std::_Function_base::_Base_manager<BlueStore::_do_write_small(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list::iterator&, BlueStore::WriteContext*)::{lambda(unsigned long, unsigned long)#3}> const&, std::_Manager_operation) | |
| | | | | | | | | | + 0.77% operator delete(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.77% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 0.76% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 0.59% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | + 0.12% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | + 0.10% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | + 0.46% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | + 0.46% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.04% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.04% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.24% BlueStore::_get_deferred_op(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Onode>) | |
| | | | | | | | | | + 0.24% tc_new | |
| | | | | | | | | | + 0.24% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.24% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.18% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.04% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.04% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.01% BlueStore::_buffer_cache_write(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Blob>, unsigned long, ceph::buffer::list&, unsigned int) [clone .isra.2035] | |
| | | | | | | | | | + 0.01% std::pair<std::_Rb_tree_iterator<boost::intrusive_ptr<BlueStore::SharedBlob> >, bool> std::_Rb_tree<boost::intrusive_ptr<BlueStore::SharedBlob>, boost::intrusive_ptr<BlueStore::SharedBlob>, std::_Identity<boost::intrusive_ptr<BlueStore::SharedBlob> >, std::less<boost::intrusive_ptr<BlueStore::SharedBlob> >, std::allocator<boost::intrusive_ptr<BlueStore::SharedBlob> > >::_M_insert_unique<boost::intrusive_ptr<BlueStore::SharedBlob> const&>(boost::intrusive_ptr<BlueStore::SharedBlob> const&) | |
| | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.18% BlueStore::ExtentMap::set_lextent(boost::intrusive_ptr<BlueStore::Collection>&, unsigned long, unsigned long, unsigned long, boost::intrusive_ptr<BlueStore::Blob>, boost::intrusive::list<BlueStore::OldExtent, boost::intrusive::member_hook<BlueStore::OldExtent, boost::intrusive::list_member_hook<void, void, void>, &BlueStore::OldExtent::old_extent_item>, void, void, void>*) | |
| | | | | | | | | | + 0.01% BlueStore::Extent::operator new(unsigned long) | |
| | | | | | | | | | + 0.16% BlueStore::ExtentMap::punch_hole(boost::intrusive_ptr<BlueStore::Collection>&, unsigned long, unsigned long, boost::intrusive::list<BlueStore::OldExtent, boost::intrusive::member_hook<BlueStore::OldExtent, boost::intrusive::list_member_hook<void, void, void>, &BlueStore::OldExtent::old_extent_item>, void, void, void>*) | |
| | | | | | | | | | | + 0.12% BlueStore::OldExtent::create(boost::intrusive_ptr<BlueStore::Collection>, unsigned int, unsigned int, unsigned int, boost::intrusive_ptr<BlueStore::Blob>&) | |
| | | | | | | | | | | | + 0.12% tc_new | |
| | | | | | | | | | | | + 0.12% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | | + 0.12% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | | + 0.08% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | | + 0.02% BlueStore::ExtentMap::rm(boost::intrusive::tree_iterator<boost::intrusive::bhtraits<BlueStore::Extent, boost::intrusive::rbtree_node_traits<void*, true>, (boost::intrusive::link_mode_type)1, boost::intrusive::dft_tag, 3u>, false>) | |
| | | | | | | | | | | | + 0.02% operator delete[](void*) | |
| | | | | | | | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.02% BlueStore::ExtentMap::add(unsigned int, unsigned int, unsigned int, boost::intrusive_ptr<BlueStore::Blob>&) | |
| | | | | | | | | | | + 0.01% BlueStore::Extent::operator new(unsigned long) | |
| | | | | | | | | | | + 0.01% operator new[](unsigned long) | |
| | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.02% operator new[](unsigned long) | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.12% bluestore_blob_t::map(unsigned long, unsigned long, std::function<int (unsigned long, unsigned long)>) const | |
| | | | | | | | | | + 0.12% std::_Function_handler<int (unsigned long, unsigned long), BlueStore::_do_write_small(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list::iterator&, BlueStore::WriteContext*)::{lambda(unsigned long, unsigned long)#3}>::_M_invoke(std::_Any_data const&, unsigned long, unsigned long) | |
| | | | | | | | | | + 0.12% void std::vector<bluestore_pextent_t, mempool::pool_allocator<(mempool::pool_index_t)4, bluestore_pextent_t> >::_M_emplace_back_aux<bluestore_pextent_t>(bluestore_pextent_t&&) | |
| | | | | | | | | | + 0.11% operator new[](unsigned long) | |
| | | | | | | | | | + 0.11% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.11% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.06% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.06% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.06% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% bluestore_blob_t::calc_csum(unsigned long, ceph::buffer::list const&) | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::c_str() | |
| | | | | | | | | + 0.02% tc_new | |
| | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% BlueStore::Onode::put() | |
| | | | | | | + 2.84% ceph::buffer::list::get_contiguous(unsigned int, unsigned int) | |
| | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | + 0.80% ceph::buffer::list::rebuild() | |
| | | | | | | | | + 0.70% ceph::buffer::list::rebuild(ceph::buffer::ptr&) | |
| | | | | | | | | | + 0.70% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | | + 0.70% operator delete(void*) | |
| | | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.69% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 0.69% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.52% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | + 0.10% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | | | + 0.08% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | | + 0.01% tcmalloc::DLL_Length(tcmalloc::Span const*) | |
| | | | | | | | | | | | + 0.40% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.40% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 0.01% __memcpy_ssse3 | |
| | | | | | | | | + 0.10% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | + 0.09% posix_memalign | |
| | | | | | | | | + 0.09% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | + 0.09% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.09% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.09% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 2.04% operator delete(void*) | |
| | | | | | | | + 2.04% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 2.04% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 1.68% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.34% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.27% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::DLL_Remove(tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 1.32% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | + 1.31% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.03% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.03% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.52% tc_new | |
| | | | | | | + 0.52% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.52% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.37% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.08% SpinLock::SlowLock() | |
| | | | | | | | + 0.08% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.04% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | + 0.04% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | + 0.96% RocksDBStore::RocksDBTransactionImpl::set(std::string const&, std::string const&, ceph::buffer::list const&) | |
| | | | | | | + 0.96% RocksDBStore::RocksDBTransactionImpl::put_bat(rocksdb::WriteBatch&, rocksdb::ColumnFamilyHandle*, std::string const&, ceph::buffer::list const&) | |
| | | | | | | + 0.90% rocksdb::WriteBatch::Put(rocksdb::ColumnFamilyHandle*, rocksdb::SliceParts const&, rocksdb::SliceParts const&) | |
| | | | | | | | + 0.90% rocksdb::WriteBatchInternal::Put(rocksdb::WriteBatch*, unsigned int, rocksdb::SliceParts const&, rocksdb::SliceParts const&) | |
| | | | | | | | + 0.90% std::string::append(char const*, unsigned long) | |
| | | | | | | | + 0.01% __memcpy_ssse3 | |
| | | | | | | | + 0.89% std::string::reserve(unsigned long) | |
| | | | | | | | + 0.89% operator delete(void*) | |
| | | | | | | | + 0.89% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.89% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.74% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.09% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.09% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.01% _init | |
| | | | | | | | | + 0.65% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | + 0.64% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.03% tc_new | |
| | | | | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.03% operator delete(void*) | |
| | | | | | | + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.03% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.01% ceph_clock_now() | |
| | | | | | | + 0.01% __clock_gettime | |
| | | | | | + 0.01% Throttle::get(long, long) | |
| | | | | | + 0.01% PerfCounters::inc(int, unsigned long) | |
| | | | | + 0.13% std::_Rb_tree<hobject_t, std::pair<hobject_t const, PGTransaction::ObjectOperation>, std::_Select1st<std::pair<hobject_t const, PGTransaction::ObjectOperation> >, std::less<hobject_t>, std::allocator<std::pair<hobject_t const, PGTransaction::ObjectOperation> > >::_M_erase(std::_Rb_tree_node<std::pair<hobject_t const, PGTransaction::ObjectOperation> >*) | |
| | | | | | + 0.01% hobject_t::~hobject_t() | |
| | | | | | + 0.11% std::_Rb_tree<std::string, std::pair<std::string const, boost::optional<ceph::buffer::list> >, std::_Select1st<std::pair<std::string const, boost::optional<ceph::buffer::list> > >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::optional<ceph::buffer::list> > > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, boost::optional<ceph::buffer::list> > >*) | |
| | | | | | | + 0.01% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | + 0.01% tc_free | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.10% std::_Rb_tree<std::string, std::pair<std::string const, boost::optional<ceph::buffer::list> >, std::_Select1st<std::pair<std::string const, boost::optional<ceph::buffer::list> > >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::optional<ceph::buffer::list> > > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, boost::optional<ceph::buffer::list> > >*) | |
| | | | | | | + 0.10% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | + 0.10% ceph::buffer::ptr::release() | |
| | | | | | | + 0.10% tc_free | |
| | | | | | | + 0.10% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.10% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.09% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.09% SpinLock::SlowLock() | |
| | | | | | | | + 0.09% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | + 0.02% operator delete(void*) | |
| | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 2.56% generate_transaction(std::unique_ptr<PGTransaction, std::default_delete<PGTransaction> >&, coll_t const&, std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> >&, ObjectStore::Transaction*, std::set<hobject_t, std::less<hobject_t>, std::allocator<hobject_t> >*, std::set<hobject_t, std::less<hobject_t>, std::allocator<hobject_t> >*) | |
| | | | | | + 0.01% ObjectStore::Transaction::_get_next_op() | |
| | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | + 0.04% std::list<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::operator=(std::list<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> > const&) | |
| | | | | | | + 0.04% tc_new | |
| | | | | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.01% std::_Rb_tree_iterator<std::pair<std::string const, ceph::buffer::list> > std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::string const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::string const, ceph::buffer::list> >, std::piecewise_construct_t const&, std::tuple<std::string const&>&&, std::tuple<>&&) | |
| | | | | | | + 0.01% _init | |
| | | | | | | + 0.01% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator<std::pair<std::string const, ceph::buffer::list> >, std::string const&) | |
| | | | | | | + 0.01% std::string::find_last_not_of(char, unsigned long) const | |
| | | | | | + 2.31% ObjectStore::Transaction::setattrs(coll_t const&, ghobject_t const&, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > > const&) | |
| | | | | | | + 0.04% ObjectStore::Transaction::_get_next_op() | |
| | | | | | | | + 0.03% ceph::buffer::list::append(ceph::buffer::ptr const&) | |
| | | | | | | | | + 0.03% tc_new | |
| | | | | | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.01% ceph::buffer::ptr::ptr(unsigned int) | |
| | | | | | | | + 0.01% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | + 0.01% posix_memalign | |
| | | | | | | | + 0.01% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% tcmalloc::DLL_Remove(tcmalloc::Span*) | |
| | | | | | | + 0.04% ObjectStore::Transaction::_get_coll_id(coll_t const&) | |
| | | | | | | | + 0.04% std::_Rb_tree_iterator<std::pair<coll_t const, unsigned int> > std::_Rb_tree<coll_t, std::pair<coll_t const, unsigned int>, std::_Select1st<std::pair<coll_t const, unsigned int> >, std::less<coll_t>, std::allocator<std::pair<coll_t const, unsigned int> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<coll_t const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<coll_t const, unsigned int> >, std::piecewise_construct_t const&, std::tuple<coll_t const&>&&, std::tuple<>&&) | |
| | | | | | | | + 0.04% tc_new | |
| | | | | | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% ObjectStore::Transaction::_get_object_id(ghobject_t const&) | |
| | | | | | | | + 0.01% std::_Rb_tree_iterator<std::pair<ghobject_t const, unsigned int> > std::_Rb_tree<ghobject_t, std::pair<ghobject_t const, unsigned int>, std::_Select1st<std::pair<ghobject_t const, unsigned int> >, std::less<ghobject_t>, std::allocator<std::pair<ghobject_t const, unsigned int> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<ghobject_t const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<ghobject_t const, unsigned int> >, std::piecewise_construct_t const&, std::tuple<ghobject_t const&>&&, std::tuple<>&&) | |
| | | | | | | | + 0.01% hobject_t::hobject_t(hobject_t const&) | |
| | | | | | | | + 0.01% std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) | |
| | | | | | | + 2.23% std::enable_if<denc_traits<std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >, void>::supported&&(!denc_traits<std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >, void>::featured), void>::type encode<std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >, denc_traits<std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >, void> >(std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > > const&, ceph::buffer::list&, unsigned long) [clone .isra.1547] | |
| | | | | | | + 0.01% _init | |
| | | | | | | + 1.97% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | + 1.97% operator delete(void*) | |
| | | | | | | | + 0.03% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimitLocked() | |
| | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 1.95% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 1.95% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 1.51% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.37% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | + 0.33% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.03% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | | | + 0.03% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | | | + 0.03% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | | | + 0.03% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | | | + 0.03% madvise | |
| | | | | | | | | | + 0.01% tcmalloc::DLL_Remove(tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 1.12% SpinLock::SlowLock() | |
| | | | | | | | | + 0.02% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | + 1.10% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.06% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.06% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.02% ceph::buffer::list::list(ceph::buffer::list const&) | |
| | | | | | | | + 0.02% tc_new | |
| | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.04% ceph::buffer::list::contiguous_appender::contiguous_appender(ceph::buffer::list*, unsigned long, bool) | |
| | | | | | | | + 0.04% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | + 0.04% posix_memalign | |
| | | | | | | | + 0.04% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::Populate() | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.12% ceph::buffer::list::append(ceph::buffer::ptr&&) | |
| | | | | | | | + 0.12% tc_new | |
| | | | | | | | + 0.11% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.11% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.06% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.05% SpinLock::SlowLock() | |
| | | | | | | | + 0.05% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.09% ceph::buffer::list::append(ceph::buffer::list const&) | |
| | | | | | | + 0.09% tc_new | |
| | | | | | | + 0.09% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.09% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.05% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.03% SpinLock::SlowLock() | |
| | | | | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::list const&) | |
| | | | | | | + 0.01% ceph::buffer::ptr::ptr(ceph::buffer::ptr const&) | |
| | | | | | + 0.01% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | + 0.01% posix_memalign | |
| | | | | | | + 0.01% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.02% tc_new | |
| | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.15% operator delete(void*) | |
| | | | | | + 0.15% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.15% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.13% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | + 0.06% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | + 0.06% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | + 0.02% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | + 0.02% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | + 0.02% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | + 0.02% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | + 0.02% madvise | |
| | | | | | | + 0.01% tcmalloc::DLL_Remove(tcmalloc::Span*) | |
| | | | | | + 0.07% SpinLock::SlowLock() | |
| | | | | | + 0.07% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.15% std::pair<std::_Rb_tree_iterator<std::pair<unsigned long const, ReplicatedBackend::InProgressOp> >, bool> std::_Rb_tree<unsigned long, std::pair<unsigned long const, ReplicatedBackend::InProgressOp>, std::_Select1st<std::pair<unsigned long const, ReplicatedBackend::InProgressOp> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, ReplicatedBackend::InProgressOp> > >::_M_insert_unique<std::pair<unsigned long, ReplicatedBackend::InProgressOp> >(std::pair<unsigned long, ReplicatedBackend::InProgressOp>&&) | |
| | | | | | + 0.15% tc_new | |
| | | | | | + 0.15% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.15% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.13% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | + 0.02% operator delete(void*) | |
| | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.02% tc_new | |
| | | | + 0.04% operator new[](unsigned long) | |
| | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | + 0.02% SpinLock::SlowLock() | |
| | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | + 1.35% PrimaryLogPG::prepare_transaction(PrimaryLogPG::OpContext*) | |
| | | | + 0.77% PrimaryLogPG::finish_ctx(PrimaryLogPG::OpContext*, int) | |
| | | | | + 0.47% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, ceph::buffer::list> >*) | |
| | | | | | + 0.47% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, ceph::buffer::list> >*) | |
| | | | | | + 0.47% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | + 0.47% operator delete(void*) | |
| | | | | | + 0.47% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.47% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.40% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | + 0.04% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | + 0.03% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | + 0.35% SpinLock::SlowLock() | |
| | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | + 0.34% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | + 0.12% std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::operator[](std::string&&) | |
| | | | | | + 0.12% std::_Rb_tree_iterator<std::pair<std::string const, ceph::buffer::list> > std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::string&&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::string const, ceph::buffer::list> >, std::piecewise_construct_t const&, std::tuple<std::string&&>&&, std::tuple<>&&) | |
| | | | | | + 0.01% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator<std::pair<std::string const, ceph::buffer::list> >, std::string const&) | |
| | | | | | | + 0.01% std::string::compare(std::string const&) const | |
| | | | | | | + 0.01% __memcmp_sse4_1 | |
| | | | | | + 0.11% tc_new | |
| | | | | | + 0.11% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.11% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.08% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | + 0.01% pg_log_entry_t::pg_log_entry_t(int, hobject_t const&, eversion_t const&, eversion_t const&, unsigned long, osd_reqid_t const&, utime_t const&, int) | |
| | | | | | + 0.01% ceph::buffer::list::list() | |
| | | | | + 0.09% object_info_t::operator=(object_info_t const&) | |
| | | | | | + 0.09% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::operator=(std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > > const&) | |
| | | | | | + 0.09% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned long const, unsigned long> >*) | |
| | | | | | + 0.09% operator delete(void*) | |
| | | | | | + 0.09% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.09% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.07% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | + 0.03% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | + 0.01% _init | |
| | | | | | | + 0.03% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | + 0.04% SpinLock::SlowLock() | |
| | | | | | + 0.04% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.03% void std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> >::_M_emplace_back_aux<pg_log_entry_t>(pg_log_entry_t&&) | |
| | | | | | + 0.01% pg_log_entry_t::pg_log_entry_t(pg_log_entry_t&&) | |
| | | | | | | + 0.01% ceph::buffer::list::list(ceph::buffer::list&&) | |
| | | | | | + 0.02% tc_new | |
| | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.01% PGTransaction::setattrs(hobject_t const&, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >&) | |
| | | | | | + 0.01% std::_Rb_tree_iterator<std::pair<std::string const, boost::optional<ceph::buffer::list> > > std::_Rb_tree<std::string, std::pair<std::string const, boost::optional<ceph::buffer::list> >, std::_Select1st<std::pair<std::string const, boost::optional<ceph::buffer::list> > >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::optional<ceph::buffer::list> > > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::string const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::string const, boost::optional<ceph::buffer::list> > >, std::piecewise_construct_t const&, std::tuple<std::string const&>&&, std::tuple<>&&) | |
| | | | | | + 0.01% std::_Rb_tree<std::string, std::pair<std::string const, boost::optional<ceph::buffer::list> >, std::_Select1st<std::pair<std::string const, boost::optional<ceph::buffer::list> > >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::optional<ceph::buffer::list> > > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator<std::pair<std::string const, boost::optional<ceph::buffer::list> > >, std::string const&) | |
| | | | | | + 0.01% std::string::compare(std::string const&) const | |
| | | | | + 0.01% SnapSet::encode(ceph::buffer::list&) const | |
| | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::advance(int) | |
| | | | | + 0.03% object_info_t::encode(ceph::buffer::list&, unsigned long) const | |
| | | | | | + 0.01% object_locator_t::encode(ceph::buffer::list&) const | |
| | | | | | | + 0.01% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | + 0.01% ceph::buffer::ptr::append(char const*, unsigned int) | |
| | | | | | + 0.01% ceph::buffer::list::iterator::copy_in(unsigned int, char const*, bool) | |
| | | | | | | + 0.01% ceph::buffer::ptr::copy_in(unsigned int, unsigned int, char const*, bool) | |
| | | | | | + 0.02% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | + 0.01% ceph::buffer::ptr::unused_tail_length() const | |
| | | | | | | + 0.01% ceph::buffer::ptr::append(char const*, unsigned int) | |
| | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::advance(int) | |
| | | | | + 0.02% OSDMap::get_features(int, unsigned long*) const | |
| | | | | + 0.01% __memcmp_sse4_1 | |
| | | | | + 0.01% operator delete(void*) | |
| | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | + 0.59% PrimaryLogPG::do_osd_ops(PrimaryLogPG::OpContext*, std::vector<OSDOp, std::allocator<OSDOp> >&) | |
| | | | + 0.12% PrimaryLogPG::write_update_size_and_usage(object_stat_sum_t&, object_info_t&, interval_set<unsigned long>&, unsigned long, unsigned long, bool) | |
| | | | | + 0.01% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned long const, unsigned long> >*) | |
| | | | | + 0.01% interval_set<unsigned long>::intersection_of(interval_set<unsigned long> const&, interval_set<unsigned long> const&) | |
| | | | | | + 0.01% interval_set<unsigned long>::intersection_size_asym(interval_set<unsigned long> const&, interval_set<unsigned long> const&) | |
| | | | | | + 0.01% std::_Rb_tree_iterator<std::pair<unsigned long const, unsigned long> > std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::_M_insert_unique_<std::pair<unsigned long const, unsigned long>&>(std::_Rb_tree_const_iterator<std::pair<unsigned long const, unsigned long> >, std::pair<unsigned long const, unsigned long>&) | |
| | | | | | + 0.01% tc_new | |
| | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.08% interval_set<unsigned long>::subtract(interval_set<unsigned long> const&) | |
| | | | | | + 0.01% std::_Rb_tree_increment(std::_Rb_tree_node_base*) | |
| | | | | | + 0.08% operator delete(void*) | |
| | | | | | + 0.08% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.08% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.06% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | + 0.06% SpinLock::SlowLock() | |
| | | | | | + 0.06% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.02% interval_set<unsigned long>::insert(unsigned long, unsigned long, unsigned long*, unsigned long*) | |
| | | | | | + 0.02% tc_new | |
| | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 0.01% interval_set<unsigned long>::union_of(interval_set<unsigned long> const&) | |
| | | | | + 0.01% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::operator=(std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > > const&) | |
| | | | + 0.01% PGTransaction::write(hobject_t const&, unsigned long, unsigned long, ceph::buffer::list&, unsigned int) | |
| | | | | + 0.01% std::_Rb_tree_iterator<std::pair<hobject_t const, PGTransaction::ObjectOperation> > std::_Rb_tree<hobject_t, std::pair<hobject_t const, PGTransaction::ObjectOperation>, std::_Select1st<std::pair<hobject_t const, PGTransaction::ObjectOperation> >, std::less<hobject_t>, std::allocator<std::pair<hobject_t const, PGTransaction::ObjectOperation> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<hobject_t const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<hobject_t const, PGTransaction::ObjectOperation> >, std::piecewise_construct_t const&, std::tuple<hobject_t const&>&&, std::tuple<>&&) | |
| | | | | | + 0.01% tc_new | |
| | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 0.01% interval_map<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange>, PGTransaction::ObjectOperation::SplitMerger>::insert(unsigned long, unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange>&&) | |
| | | | | + 0.01% std::pair<std::_Rb_tree_iterator<std::pair<unsigned long const, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > > >, bool> std::_Rb_tree<unsigned long, std::pair<unsigned long const, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > >, std::_Select1st<std::pair<unsigned long const, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > > >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > > > >::_M_insert_unique<std::pair<unsigned long, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > > >(std::pair<unsigned long, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > >&&) | |
| | | | | + 0.01% ceph::buffer::list::list(ceph::buffer::list&&) | |
| | | | | + 0.01% ceph::buffer::ptr::swap(ceph::buffer::ptr&) | |
| | | | + 0.45% md_config_t::get_val_generic(std::string const&) const | |
| | | | + 0.22% Mutex::Lock(bool) | |
| | | | | + 0.22% pthread_mutex_lock | |
| | | | | + 0.22% _L_lock_870 | |
| | | | | + 0.22% __lll_lock_wait | |
| | | | + 0.02% Mutex::Unlock() | |
| | | | | + 0.02% __pthread_mutex_unlock | |
| | | | | + 0.01% _L_unlock_713 | |
| | | | | + 0.01% __lll_unlock_wake | |
| | | | + 0.22% md_config_t::_get_val_generic(std::string const&) const | |
| | | | + 0.01% std::_Rb_tree<std::string, std::pair<std::string const, Option const&>, std::_Select1st<std::pair<std::string const, Option const&> >, std::less<std::string>, std::allocator<std::pair<std::string const, Option const&> > >::find(std::string const&) const | |
| | | | | + 0.01% __memcmp_sse4_1 | |
| | | | + 0.13% ConfFile::normalize_key_name(std::string const&) | |
| | | | | + 0.13% ConfFile::trim_whitespace(std::string&, bool) | |
| | | | | + 0.13% std::string::_M_replace_safe(unsigned long, unsigned long, char const*, unsigned long) | |
| | | | | + 0.13% std::string::_M_mutate(unsigned long, unsigned long, unsigned long) | |
| | | | | + 0.13% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | + 0.13% tc_new | |
| | | | | + 0.13% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | + 0.13% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | + 0.09% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 0.04% SpinLock::SlowLock() | |
| | | | | | + 0.04% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | + 0.08% operator delete(void*) | |
| | | | + 0.08% tcmalloc::ThreadCache::Scavenge() | |
| | | | + 0.08% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | + 0.07% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | + 0.02% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | + 0.02% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | + 0.01% madvise | |
| | | | | + 0.06% SpinLock::SlowLock() | |
| | | | | + 0.06% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | + 0.01% MOSDOpReply::MOSDOpReply(MOSDOp const*, int, unsigned int, int, bool) | |
| | | | + 0.01% ceph::buffer::ptr::release() | |
| | | + 0.27% object_info_t::operator=(object_info_t&&) | |
| | | | + 0.27% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned long const, unsigned long> >*) | |
| | | | + 0.27% operator delete(void*) | |
| | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.26% tcmalloc::ThreadCache::Scavenge() | |
| | | | + 0.26% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | + 0.20% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | + 0.03% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | + 0.02% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | + 0.16% SpinLock::SlowLock() | |
| | | | | + 0.16% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | + 0.01% SnapSet::operator=(SnapSet const&) | |
| | | + 0.11% tc_new | |
| | | + 0.11% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | + 0.11% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | + 0.08% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | + 0.02% SpinLock::SlowLock() | |
| | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | + 0.01% PrimaryLogPG::OpContext::OpContext(boost::intrusive_ptr<OpRequest>, osd_reqid_t, std::vector<OSDOp, std::allocator<OSDOp> >*, std::shared_ptr<ObjectContext>&, PrimaryLogPG*) | |
| | | + 0.01% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::_M_copy(std::_Rb_tree_node<std::pair<unsigned long const, unsigned long> > const*, std::_Rb_tree_node<std::pair<unsigned long const, unsigned long> >*) | |
| | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, char*) | |
| | + 0.01% Throttle::put(long) | |
| | + 0.01% std::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::~basic_ostringstream() | |
| | | + 0.01% operator delete(void*) | |
| | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | + 0.01% SpinLock::SlowLock() | |
| | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | + 0.01% std::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream(std::_Ios_Openmode) | |
| | | + 0.01% std::ios_base::ios_base() | |
| | + 0.02% tc_new | |
| | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| + 0.01% Mutex::Lock(bool) | |
| + 0.03% Mutex::Unlock() | |
| | + 0.01% _init | |
| | + 0.02% __pthread_mutex_unlock | |
| | + 0.02% _L_unlock_713 | |
| | + 0.02% __lll_unlock_wake | |
| + 71.14% pthread_cond_timedwait | |
+ 0.01% __clock_getres | |
+ 0.01% __strchr_sse42 | |
+ 0.01% __memcpy_chk_ssse3 | |
+ 0.01% __wcscpy_ssse3 | |
+ 0.01% std::locale::_Impl::_Impl(std::locale::_Impl const&, unsigned long) | |
+ 0.02% std::_Rb_tree_increment(std::_Rb_tree_node_base*) | |
+ 0.01% std::_Rb_tree_rotate_right(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*&) | |
+ 0.01% std::__detail::_Prime_rehash_policy::_M_next_bkt(unsigned long) const | |
+ 0.01% std::string::compare(unsigned long, unsigned long, std::string const&, unsigned long, unsigned long) const | |
+ 0.01% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
+ 0.01% std::string::resize(unsigned long) | |
+ 0.01% std::string::_Rep::_M_grab(std::allocator<char> const&, std::allocator<char> const&) | |
+ 0.01% #### | |
| + 0.01% ceph::buffer::list::iterator::operator++() | |
+ 0.01% __pthread_mutex_unlock_usercnt | |
+ 0.01% pthread_cond_signal | |
+ 0.04% tcmalloc::CentralFreeList::Init(unsigned long) | |
+ 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
+ 0.01% tcmalloc::DLL_Init(tcmalloc::Span*) | |
+ 0.01% SpinLock::SlowLock() | |
+ 0.01% tc_new_nothrow | |
+ 0.01% #### | |
| + 0.01% std::string::_Rep::_M_refdata() | |
+ 0.01% #### | |
| + 0.01% tc_realloc | |
+ 0.01% #### | |
| + 0.01% BlueStore::GarbageCollector::process_protrusive_extents(BlueStore::ExtentMap const&, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long) | |
+ 0.01% #### | |
+ 0.01% std::string::_Rep::_M_dispose(std::allocator<char> const&) [clone .part.12] | |
Thread: 21417 (tp_osd_tp) - 19934 samples, time suspended=1667ms | |
+ 0.01% #### | |
| + 0.01% vsnprintf | |
| + 0.01% __guess_grouping | |
+ 0.01% #### | |
| + 0.01% virtual thunk to boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<std::length_error> >::rethrow() const | |
+ 0.01% entity_addr_t::is_blank_ip() const | |
+ 0.01% RefCountedObject::get() | |
+ 0.01% PG::add_pg_backoff(boost::intrusive_ptr<Session>) | |
+ 0.01% RocksDBStore::combine_strings(std::string const&, std::string const&) | |
+ 0.01% ceph::buffer::list::iterator_impl<false>::advance(int) | |
+ 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, ceph::buffer::list&) | |
+ 0.01% __tcf_0 | |
+ 0.01% hobject_t::parse(std::string const&) | |
+ 0.01% ghobject_t::encode(ceph::buffer::list&) const | |
+ 0.01% crc32_iscsi_00 | |
+ 0.01% #### | |
| + 0.01% PG::get(char const*) | |
+ 0.01% #### | |
| + 0.01% __memcpy_chk_ssse3 | |
+ 0.01% #### | |
| + 0.01% ConfFile::normalize_key_name(std::string const&) | |
| + 0.01% ispunct | |
+ 0.01% #### | |
| + 0.01% RocksDBStore::RocksDBTransactionImpl::put_bat(rocksdb::WriteBatch&, rocksdb::ColumnFamilyHandle*, std::string const&, ceph::buffer::list const&) | |
| + 0.01% std::_Rb_tree<std::string, std::pair<std::string const, std::string>, std::_Select1st<std::pair<std::string const, std::string> >, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > >::swap(std::_Rb_tree<std::string, std::pair<std::string const, std::string>, std::_Select1st<std::pair<std::string const, std::string> >, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > >&) | |
+ 99.77% clone | |
| + 99.77% start_thread | |
| + 99.77% ShardedThreadPool::WorkThreadSharded::entry() | |
| + 99.77% ShardedThreadPool::shardedthreadpool_worker(unsigned int) | |
| + 99.77% OSD::ShardedOpWQ::_process(unsigned int, ceph::heartbeat_handle_d*) | |
| + 0.01% WeightedPriorityQueue<std::pair<spg_t, PGQueueable>, unsigned long>::dequeue() | |
| | + 0.01% WeightedPriorityQueue<std::pair<spg_t, PGQueueable>, unsigned long>::Queue::pop(bool) | |
| | + 0.01% WeightedPriorityQueue<std::pair<spg_t, PGQueueable>, unsigned long>::SubQueue::pop() | |
| | + 0.01% operator delete(void*) | |
| + 6.46% PG::lock(bool) const | |
| | + 6.46% Mutex::Lock(bool) | |
| | + 6.46% pthread_mutex_lock | |
| | + 6.46% _L_lock_812 | |
| | + 6.46% __lll_lock_wait | |
| + 20.97% PGQueueable::RunVis::operator()(boost::intrusive_ptr<OpRequest> const&) | |
| | + 20.97% OSD::dequeue_op(boost::intrusive_ptr<PG>, boost::intrusive_ptr<OpRequest>, ThreadPool::TPHandle&) | |
| | + 0.01% RefCountedObject::get() | |
| | + 20.96% PrimaryLogPG::do_request(boost::intrusive_ptr<OpRequest>&, ThreadPool::TPHandle&) | |
| | + 20.96% PrimaryLogPG::do_op(boost::intrusive_ptr<OpRequest>&) | |
| | + 0.01% hobject_t::~hobject_t() | |
| | | + 0.01% std::string::_Rep::_M_dispose(std::allocator<char> const&) | |
| | + 0.01% OSDService::_check_full(OSDService::s_names, std::ostream&) const | |
| | | + 0.01% std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*) | |
| | | + 0.01% std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long) | |
| | | + 0.01% std::basic_streambuf<char, std::char_traits<char> >::xsputn(char const*, long) | |
| | | + 0.01% __memcpy_ssse3 | |
| | | + 0.01% std::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >::overflow(int) | |
| | | + 0.01% std::string::reserve(unsigned long) | |
| | | + 0.01% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | + 0.01% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | + 0.01% tc_new | |
| | + 0.01% OSD::init_op_flags(boost::intrusive_ptr<OpRequest>&) | |
| | + 0.36% ceph::buffer::list::clear() | |
| | | + 0.35% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | + 0.35% ceph::buffer::ptr::release() | |
| | | | + 0.34% ceph::buffer::raw_combined::~raw_combined() | |
| | | | | + 0.34% std::_Rb_tree<std::pair<unsigned long, unsigned long>, std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> >, std::_Select1st<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >, std::less<std::pair<unsigned long, unsigned long> >, std::allocator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > > >::_M_erase(std::_Rb_tree_node<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >*) | |
| | | | | + 0.34% operator delete(void*) | |
| | | | | + 0.34% tcmalloc::ThreadCache::Scavenge() | |
| | | | | + 0.34% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | + 0.28% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | + 0.03% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | + 0.03% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | + 0.25% SpinLock::SlowLock() | |
| | | | | | + 0.25% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | + 0.01% tc_free | |
| | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | + 0.01% SpinLock::SlowLock() | |
| | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | + 0.01% ceph::buffer::ptr::operator=(ceph::buffer::ptr&&) | |
| | | + 0.01% ceph::buffer::ptr::release() | |
| | + 0.09% std::vector<OSDOp, std::allocator<OSDOp> >::resize(unsigned long) | |
| | | + 0.09% std::vector<OSDOp, std::allocator<OSDOp> >::_M_default_append(unsigned long) | |
| | | + 0.09% tc_new | |
| | | + 0.09% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | + 0.09% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | + 0.07% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | + 0.02% SpinLock::SlowLock() | |
| | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | + 0.10% PG::op_has_sufficient_caps(boost::intrusive_ptr<OpRequest>&) | |
| | | + 0.10% OSDCap::is_capable(std::string const&, std::string const&, long, std::string const&, bool, bool, std::vector<OpRequest::ClassInfo, std::allocator<OpRequest::ClassInfo> > const&) const | |
| | | | + 0.07% std::vector<bool, std::allocator<bool> >::vector(unsigned long, bool const&, std::allocator<bool> const&) | |
| | | | | + 0.07% tc_new | |
| | | | | + 0.07% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | + 0.07% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | + 0.06% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.03% operator delete(void*) | |
| | | | + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| | | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | + 0.03% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | + 0.01% Mutex::Lock(bool) | |
| | | + 0.01% pthread_mutex_lock | |
| | | + 0.01% _L_lock_812 | |
| | | + 0.01% __lll_lock_wait | |
| | + 0.01% PrimaryLogPG::maybe_await_blocked_head(hobject_t const&, boost::intrusive_ptr<OpRequest>) | |
| | | + 0.01% SharedLRU<hobject_t, ObjectContext, std::less<hobject_t>, std::hash<hobject_t> >::lookup(hobject_t const&) | |
| | | + 0.01% Mutex::Unlock() | |
| | | + 0.01% __pthread_mutex_unlock | |
| | + 20.35% PrimaryLogPG::execute_ctx(PrimaryLogPG::OpContext*) | |
| | | + 0.01% std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_add_ref_copy() | |
| | | + 0.01% PrimaryLogPG::new_repop(PrimaryLogPG::OpContext*, std::shared_ptr<ObjectContext>, unsigned long) | |
| | | | + 0.01% tc_new | |
| | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | + 18.17% PrimaryLogPG::issue_repop(PrimaryLogPG::RepGather*, PrimaryLogPG::OpContext*) | |
| | | | + 0.12% std::__detail::_Map_base<osd_reqid_t, std::pair<osd_reqid_t const, pg_log_entry_t*>, std::allocator<std::pair<osd_reqid_t const, pg_log_entry_t*> >, std::__detail::_Select1st, std::equal_to<osd_reqid_t>, std::hash<osd_reqid_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true>, true>::operator[](osd_reqid_t const&) | |
| | | | | + 0.12% tc_new | |
| | | | | + 0.12% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | + 0.12% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | + 0.09% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.02% PGTransaction::add_obc(std::shared_ptr<ObjectContext>) | |
| | | | | + 0.02% std::_Rb_tree_iterator<std::pair<hobject_t const, std::shared_ptr<ObjectContext> > > std::_Rb_tree<hobject_t, std::pair<hobject_t const, std::shared_ptr<ObjectContext> >, std::_Select1st<std::pair<hobject_t const, std::shared_ptr<ObjectContext> > >, std::less<hobject_t>, std::allocator<std::pair<hobject_t const, std::shared_ptr<ObjectContext> > > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<hobject_t const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<hobject_t const, std::shared_ptr<ObjectContext> > >, std::piecewise_construct_t const&, std::tuple<hobject_t const&>&&, std::tuple<>&&) | |
| | | | | + 0.02% tc_new | |
| | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 17.90% ReplicatedBackend::submit_transaction(hobject_t const&, object_stat_sum_t const&, eversion_t const&, std::unique_ptr<PGTransaction, std::default_delete<PGTransaction> >&&, eversion_t const&, eversion_t const&, std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> > const&, boost::optional<pg_hit_set_history_t>&, Context*, Context*, Context*, unsigned long, osd_reqid_t, boost::intrusive_ptr<OpRequest>) | |
| | | | | + 0.25% ObjectStore::Transaction::~Transaction() | |
| | | | | | + 0.23% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | + 0.21% ceph::buffer::ptr::release() | |
| | | | | | | | + 0.01% ceph::buffer::raw_combined::~raw_combined() | |
| | | | | | | | | + 0.01% std::_Rb_tree<std::pair<unsigned long, unsigned long>, std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> >, std::_Select1st<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >, std::less<std::pair<unsigned long, unsigned long> >, std::allocator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > > >::_M_erase(std::_Rb_tree_node<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<unsigned int, unsigned int> > >*) | |
| | | | | | | | | + 0.01% mempool::pool_t::adjust_count(long, long) | |
| | | | | | | | + 0.19% tc_free | |
| | | | | | | | + 0.19% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.19% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.17% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | | + 0.01% madvise | |
| | | | | | | | | + 0.15% SpinLock::SlowLock() | |
| | | | | | | | | + 0.15% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.01% std::_Rb_tree<ghobject_t, std::pair<ghobject_t const, unsigned int>, std::_Select1st<std::pair<ghobject_t const, unsigned int> >, std::less<ghobject_t>, std::allocator<std::pair<ghobject_t const, unsigned int> > >::_M_erase(std::_Rb_tree_node<std::pair<ghobject_t const, unsigned int> >*) | |
| | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | + 0.01% tc_free | |
| | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | + 0.09% void std::vector<ObjectStore::Transaction, std::allocator<ObjectStore::Transaction> >::_M_emplace_back_aux<ObjectStore::Transaction>(ObjectStore::Transaction&&) | |
| | | | | | + 0.01% ObjectStore::Transaction::Transaction(ObjectStore::Transaction&&) | |
| | | | | | | + 0.01% ceph::buffer::list::list(ceph::buffer::list&&) | |
| | | | | | | + 0.01% std::__detail::_List_node_base::swap(std::__detail::_List_node_base&, std::__detail::_List_node_base&) | |
| | | | | | + 0.08% tc_new | |
| | | | | | + 0.08% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.08% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.07% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | + 0.13% void std::_Rb_tree<pg_shard_t, pg_shard_t, std::_Identity<pg_shard_t>, std::less<pg_shard_t>, std::allocator<pg_shard_t> >::_M_insert_unique<std::_Rb_tree_const_iterator<pg_shard_t> >(std::_Rb_tree_const_iterator<pg_shard_t>, std::_Rb_tree_const_iterator<pg_shard_t>) | |
| | | | | | + 0.13% std::_Rb_tree_iterator<pg_shard_t> std::_Rb_tree<pg_shard_t, pg_shard_t, std::_Identity<pg_shard_t>, std::less<pg_shard_t>, std::allocator<pg_shard_t> >::_M_insert_<pg_shard_t const&>(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, pg_shard_t const&) | |
| | | | | | + 0.13% tc_new | |
| | | | | | + 0.13% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.13% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.09% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.04% SpinLock::SlowLock() | |
| | | | | | + 0.04% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.01% PrimaryLogPG::apply_stats(hobject_t const&, object_stat_sum_t const&) | |
| | | | | + 2.66% PrimaryLogPG::log_operation(std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> > const&, boost::optional<pg_hit_set_history_t> const&, eversion_t const&, eversion_t const&, bool, ObjectStore::Transaction&) | |
| | | | | | + 2.66% PG::append_log(std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> > const&, eversion_t, eversion_t, ObjectStore::Transaction&, bool) | |
| | | | | | + 1.32% PG::write_if_dirty(ObjectStore::Transaction&) | |
| | | | | | | + 0.02% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, ceph::buffer::list> >*) | |
| | | | | | | | + 0.01% std::string::_Rep::_M_dispose(std::allocator<char> const&) | |
| | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | + 0.67% ObjectStore::Transaction::omap_setkeys(coll_t const&, ghobject_t const&, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > > const&) | |
| | | | | | | | + 0.44% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | + 0.44% operator delete(void*) | |
| | | | | | | | | + 0.44% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.44% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.33% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.06% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.04% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.27% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.27% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.01% ceph::buffer::list::list(ceph::buffer::list const&) | |
| | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% ceph::buffer::list::contiguous_appender::contiguous_appender(ceph::buffer::list*, unsigned long, bool) | |
| | | | | | | | | + 0.01% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | + 0.01% posix_memalign | |
| | | | | | | | | + 0.01% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.21% ObjectStore::Transaction::_get_object_id(ghobject_t const&) | |
| | | | | | | | | + 0.20% std::_Rb_tree_iterator<std::pair<ghobject_t const, unsigned int> > std::_Rb_tree<ghobject_t, std::pair<ghobject_t const, unsigned int>, std::_Select1st<std::pair<ghobject_t const, unsigned int> >, std::less<ghobject_t>, std::allocator<std::pair<ghobject_t const, unsigned int> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<ghobject_t const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<ghobject_t const, unsigned int> >, std::piecewise_construct_t const&, std::tuple<ghobject_t const&>&&, std::tuple<>&&) | |
| | | | | | | | | | + 0.20% tc_new | |
| | | | | | | | | | + 0.20% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.20% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.14% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.05% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.05% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.01% cmp(ghobject_t const&, ghobject_t const&) | |
| | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::list const&) | |
| | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) | |
| | | | | | | + 0.01% PG::prepare_write_info(std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >*) | |
| | | | | | | | + 0.01% PG::_prepare_write_info(CephContext*, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >*, unsigned int, pg_info_t&, pg_info_t&, PastIntervals&, bool, bool, bool, PerfCounters*) | |
| | | | | | | | + 0.01% pg_fast_info_t::encode(ceph::buffer::list&) const | |
| | | | | | | | + 0.01% ceph::buffer::list::iterator::iterator(ceph::buffer::list*, unsigned int, std::_List_iterator<ceph::buffer::ptr>, unsigned int) | |
| | | | | | | + 0.63% PGLog::write_log_and_missing(ObjectStore::Transaction&, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >*, coll_t const&, ghobject_t const&, bool) | |
| | | | | | | + 0.01% std::_Rb_tree<eversion_t, eversion_t, std::_Identity<eversion_t>, std::less<eversion_t>, std::allocator<eversion_t> >::_M_erase(std::_Rb_tree_node<eversion_t>*) | |
| | | | | | | + 0.63% PGLog::_write_log_and_missing(ObjectStore::Transaction&, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >*, pg_log_t&, coll_t const&, ghobject_t const&, eversion_t, eversion_t, eversion_t, std::set<eversion_t, std::less<eversion_t>, std::allocator<eversion_t> > const&, std::set<std::string, std::less<std::string>, std::allocator<std::string> > const&, pg_missing_set<true> const&, bool, bool, bool, eversion_t, eversion_t, eversion_t, bool*, std::set<std::string, std::less<std::string>, std::allocator<std::string> >*) | |
| | | | | | | + 0.01% std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::operator[](std::string&&) | |
| | | | | | | + 0.02% pg_log_entry_t::get_key_name() const | |
| | | | | | | | + 0.02% eversion_t::get_key_name() const | |
| | | | | | | | + 0.01% std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(unsigned long, char, std::allocator<char> const&) | |
| | | | | | | | | + 0.01% std::string::_S_construct(unsigned long, char, std::allocator<char> const&) | |
| | | | | | | | | + 0.01% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% std::string::_M_mutate(unsigned long, unsigned long, unsigned long) | |
| | | | | | | + 0.58% pg_log_entry_t::encode_with_checksum(ceph::buffer::list&) const | |
| | | | | | | | + 0.56% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | + 0.56% operator delete(void*) | |
| | | | | | | | | + 0.56% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.56% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.43% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.09% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.07% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.32% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.32% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.01% pg_log_entry_t::encode(ceph::buffer::list&) const | |
| | | | | | | | | + 0.01% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | | | | + 0.01% ceph::buffer::ptr::append(char const*, unsigned int) | |
| | | | | | | | | + 0.01% hobject_t::encode(ceph::buffer::list&) const | |
| | | | | | | | | + 0.01% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | | + 0.01% ceph::buffer::list::crc32c(unsigned int) const | |
| | | | | | | | + 0.01% ceph_crc32c_intel_baseline | |
| | | | | | | + 0.03% ceph::buffer::list::reserve(unsigned long) | |
| | | | | | | + 0.03% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | + 0.03% posix_memalign | |
| | | | | | | + 0.03% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | + 0.16% PG::add_log_entry(pg_log_entry_t const&, bool) | |
| | | | | | | + 0.16% PGLog::IndexedLog::add(pg_log_entry_t const&, bool) | |
| | | | | | | + 0.16% std::__detail::_Map_base<osd_reqid_t, std::pair<osd_reqid_t const, pg_log_entry_t*>, std::allocator<std::pair<osd_reqid_t const, pg_log_entry_t*> >, std::__detail::_Select1st, std::equal_to<osd_reqid_t>, std::hash<osd_reqid_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true>, true>::operator[](osd_reqid_t const&) | |
| | | | | | | + 0.16% tc_new | |
| | | | | | | + 0.16% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.16% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.11% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | | + 0.05% SpinLock::SlowLock() | |
| | | | | | | + 0.05% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 1.03% PGLog::IndexedLog::trim(CephContext*, eversion_t, std::set<eversion_t, std::less<eversion_t>, std::allocator<eversion_t> >*, std::set<std::string, std::less<std::string>, std::allocator<std::string> >*, eversion_t*) | |
| | | | | | | + 0.01% std::__detail::_Map_base<osd_reqid_t, std::pair<osd_reqid_t const, pg_log_dup_t*>, std::allocator<std::pair<osd_reqid_t const, pg_log_dup_t*> >, std::__detail::_Select1st, std::equal_to<osd_reqid_t>, std::hash<osd_reqid_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true>, true>::operator[](osd_reqid_t const&) | |
| | | | | | | | + 0.01% std::_Hashtable<osd_reqid_t, std::pair<osd_reqid_t const, pg_log_dup_t*>, std::allocator<std::pair<osd_reqid_t const, pg_log_dup_t*> >, std::__detail::_Select1st, std::equal_to<osd_reqid_t>, std::hash<osd_reqid_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_insert_unique_node(unsigned long, unsigned long, std::__detail::_Hash_node<std::pair<osd_reqid_t const, pg_log_dup_t*>, true>*) | |
| | | | | | | + 0.81% PGLog::IndexedLog::unindex(pg_log_entry_t const&) | |
| | | | | | | | + 0.81% operator delete(void*) | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.81% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.81% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.67% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.16% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.13% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | | + 0.01% madvise | |
| | | | | | | | | + 0.51% SpinLock::SlowLock() | |
| | | | | | | | | + 0.51% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.01% operator new[](unsigned long) | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.20% operator delete[](void*) | |
| | | | | | | + 0.20% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.20% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.15% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.05% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.05% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.10% SpinLock::SlowLock() | |
| | | | | | | | + 0.10% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | + 0.02% PGLog::trim(eversion_t, pg_info_t&) | |
| | | | | | | + 0.02% PGLog::IndexedLog::trim(CephContext*, eversion_t, std::set<eversion_t, std::less<eversion_t>, std::allocator<eversion_t> >*, std::set<std::string, std::less<std::string>, std::allocator<std::string> >*, eversion_t*) | |
| | | | | | | + 0.01% PGLog::IndexedLog::unindex(pg_log_entry_t const&) | |
| | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% std::string::_Rep::_M_dispose(std::allocator<char> const&) | |
| | | | | | + 0.13% tc_new | |
| | | | | | + 0.13% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.13% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.09% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.04% SpinLock::SlowLock() | |
| | | | | | | + 0.04% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | + 11.60% PrimaryLogPG::queue_transactions(std::vector<ObjectStore::Transaction, std::allocator<ObjectStore::Transaction> >&, boost::intrusive_ptr<OpRequest>) | |
| | | | | | + 11.60% BlueStore::queue_transactions(ObjectStore::Sequencer*, std::vector<ObjectStore::Transaction, std::allocator<ObjectStore::Transaction> >&, boost::intrusive_ptr<TrackedOp>, ThreadPool::TPHandle*) | |
| | | | | | + 0.04% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | + 0.04% ceph::buffer::ptr::release() | |
| | | | | | | + 0.01% ceph::buffer::raw_combined::~raw_combined() | |
| | | | | | | | + 0.01% mempool::pool_t::adjust_count(long, long) | |
| | | | | | | + 0.03% tc_free | |
| | | | | | | + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | + 0.03% ceph::buffer::list::contiguous_appender::contiguous_appender(ceph::buffer::list*, unsigned long, bool) | |
| | | | | | | + 0.03% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | + 0.03% posix_memalign | |
| | | | | | | + 0.03% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | + 0.02% tcmalloc::CentralFreeList::Populate() | |
| | | | | | + 0.01% ceph::buffer::list::contiguous_appender::flush_and_continue() | |
| | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::ptr&&) | |
| | | | | | | + 0.01% tc_new | |
| | | | | | + 0.64% C_ContextsBase<Context, Context>::list_to_context(std::list<Context*, std::allocator<Context*> >&) | |
| | | | | | | + 0.64% operator delete(void*) | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.63% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.63% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.56% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.16% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.14% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.40% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | + 0.40% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | + 0.28% BlueStore::_txc_create(BlueStore::OpSequencer*) | |
| | | | | | | + 0.25% RocksDBStore::get_transaction() | |
| | | | | | | | + 0.04% RocksDBStore::RocksDBTransactionImpl::RocksDBTransactionImpl(RocksDBStore*) | |
| | | | | | | | | + 0.04% rocksdb::WriteBatch::WriteBatch(unsigned long, unsigned long) | |
| | | | | | | | | + 0.04% std::string::reserve(unsigned long) | |
| | | | | | | | | + 0.04% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | + 0.04% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | + 0.04% tc_new | |
| | | | | | | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.04% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.21% tc_new | |
| | | | | | | | + 0.21% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.21% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.16% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::Populate() | |
| | | | | | | | + 0.03% SpinLock::SlowLock() | |
| | | | | | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.04% operator new[](unsigned long) | |
| | | | | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | + 2.67% BlueStore::_txc_write_nodes(BlueStore::TransContext*, std::shared_ptr<KeyValueDB::TransactionImpl>) | |
| | | | | | | + 0.01% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | + 0.01% tc_free | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.01% ceph::buffer::list::contiguous_appender::contiguous_appender(ceph::buffer::list*, unsigned long, bool) | |
| | | | | | | | + 0.01% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | + 0.01% posix_memalign | |
| | | | | | | | + 0.01% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.01% ceph::buffer::list::contiguous_appender::append(char const*, unsigned long) | |
| | | | | | | | + 0.01% __memcpy_ssse3 | |
| | | | | | | + 2.12% BlueStore::ExtentMap::update(std::shared_ptr<KeyValueDB::TransactionImpl>, bool) | |
| | | | | | | | + 0.02% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | + 0.02% ceph::buffer::ptr::release() | |
| | | | | | | | | + 0.01% ceph::buffer::raw_combined::~raw_combined() | |
| | | | | | | | | + 0.01% tc_free | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 2.06% void generate_extent_shard_key_and_apply<std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > >(std::basic_string<char, std::char_traits<char>, mempool::pool_allocator<(mempool::pool_index_t)4, char> > const&, unsigned int, std::string*, std::function<void (std::string const&)>) | |
| | | | | | | | | + 2.05% RocksDBStore::RocksDBTransactionImpl::set(std::string const&, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | | + 1.03% RocksDBStore::RocksDBTransactionImpl::put_bat(rocksdb::WriteBatch&, rocksdb::ColumnFamilyHandle*, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | | | + 1.03% rocksdb::WriteBatch::Put(rocksdb::ColumnFamilyHandle*, rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | | | | | | | | + 1.03% rocksdb::WriteBatchInternal::Put(rocksdb::WriteBatch*, unsigned int, rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | | | | | | | | + 0.02% std::string::reserve(unsigned long) | |
| | | | | | | | | | | + 0.02% operator delete(void*) | |
| | | | | | | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 1.01% std::string::append(char const*, unsigned long) | |
| | | | | | | | | | + 1.01% std::string::reserve(unsigned long) | |
| | | | | | | | | | + 0.04% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | | + 0.04% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | | + 0.04% tc_new | |
| | | | | | | | | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::Populate() | |
| | | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 0.97% operator delete(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.96% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 0.96% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.80% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | | + 0.11% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | | | + 0.10% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | + 0.68% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | | + 0.68% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.03% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.03% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.01% std::string::reserve(unsigned long) | |
| | | | | | | | | | + 0.01% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | + 0.01% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | + 1.02% std::string::append(std::string const&) | |
| | | | | | | | | + 1.02% std::string::reserve(unsigned long) | |
| | | | | | | | | + 1.02% operator delete(void*) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 1.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 0.99% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 0.82% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | + 0.19% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | | + 0.15% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | + 0.61% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | + 0.61% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.03% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.03% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.03% BlueStore::ExtentMap::encode_some(unsigned int, unsigned int, ceph::buffer::list&, unsigned int*) | |
| | | | | | | | | + 0.02% ceph::buffer::list::contiguous_appender::contiguous_appender(ceph::buffer::list*, unsigned long, bool) | |
| | | | | | | | | | + 0.02% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | | + 0.02% posix_memalign | |
| | | | | | | | | | + 0.02% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::c_str() const | |
| | | | | | | | + 0.02% tc_new | |
| | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.53% RocksDBStore::RocksDBTransactionImpl::set(std::string const&, char const*, unsigned long, ceph::buffer::list const&) | |
| | | | | | | + 0.04% RocksDBStore::RocksDBTransactionImpl::put_bat(rocksdb::WriteBatch&, rocksdb::ColumnFamilyHandle*, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | + 0.04% rocksdb::WriteBatch::Put(rocksdb::ColumnFamilyHandle*, rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | | | | | | + 0.04% rocksdb::WriteBatchInternal::Put(rocksdb::WriteBatch*, unsigned int, rocksdb::Slice const&, rocksdb::Slice const&) | |
| | | | | | | | + 0.04% std::string::append(char const*, unsigned long) | |
| | | | | | | | + 0.01% __memcpy_ssse3 | |
| | | | | | | | + 0.03% std::string::reserve(unsigned long) | |
| | | | | | | | + 0.03% operator delete(void*) | |
| | | | | | | | + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.03% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% std::_Hashtable<std::string, std::pair<std::string const, void*>, std::allocator<std::pair<std::string const, void*> >, std::__detail::_Select1st, std::equal_to<std::string>, std::hash<std::string>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::find(std::string const&) | |
| | | | | | | | + 0.01% std::_Hashtable<std::string, std::pair<std::string const, void*>, std::allocator<std::pair<std::string const, void*> >, std::__detail::_Select1st, std::equal_to<std::string>, std::hash<std::string>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_find_before_node(unsigned long, std::string const&, unsigned long) const | |
| | | | | | | + 0.01% std::string::reserve(unsigned long) | |
| | | | | | | + 0.01% std::string::append(char const*, unsigned long) | |
| | | | | | | | + 0.01% std::string::reserve(unsigned long) | |
| | | | | | | + 0.48% std::string::assign(std::string const&) | |
| | | | | | | + 0.48% operator delete(void*) | |
| | | | | | | + 0.48% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.47% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.41% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.03% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.03% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.37% SpinLock::SlowLock() | |
| | | | | | | | + 0.37% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.03% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | + 0.03% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | + 7.19% BlueStore::_txc_add_transaction(BlueStore::TransContext*, ObjectStore::Transaction*) | |
| | | | | | | + 0.01% RWLock::unlock(bool) const | |
| | | | | | | + 0.01% RWLock::get_write(bool) | |
| | | | | | | + 0.01% decode(ceph::buffer::list&, ceph::buffer::list::iterator&) | |
| | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, ceph::buffer::list&) | |
| | | | | | | | + 0.01% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | + 0.01% ceph::buffer::ptr::ptr(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | + 0.01% coll_t::calc_str() | |
| | | | | | | | + 0.01% spg_t::calc_name(char*, char const*) const | |
| | | | | | | + 0.27% std::enable_if<denc_traits<std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >, void>::supported&&(!denc_traits<std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >, void>::need_contiguous), void>::type decode<std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >, denc_traits<std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >, void> >(std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > >&, ceph::buffer::list::iterator&) | |
| | | | | | | | + 0.25% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | + 0.25% operator delete(void*) | |
| | | | | | | | | + 0.25% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.25% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.20% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.04% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.04% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | + 0.15% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | + 0.15% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% ceph::buffer::list::iterator::get_current_ptr() | |
| | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, char*) | |
| | | | | | | + 0.03% decode_str_str_map_to_bl(ceph::buffer::list::iterator&, ceph::buffer::list*) | |
| | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, char*) | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::copy_out(unsigned int, unsigned int, char*) const | |
| | | | | | | | + 0.02% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, ceph::buffer::list&) | |
| | | | | | | | + 0.02% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | + 0.02% tc_new | |
| | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 1.36% BlueStore::_omap_setkeys(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>&, ceph::buffer::list&) | |
| | | | | | | | + 1.20% RocksDBStore::RocksDBTransactionImpl::set(std::string const&, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | | + 1.20% RocksDBStore::RocksDBTransactionImpl::put_bat(rocksdb::WriteBatch&, rocksdb::ColumnFamilyHandle*, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | | + 1.20% rocksdb::WriteBatch::Put(rocksdb::ColumnFamilyHandle*, rocksdb::SliceParts const&, rocksdb::SliceParts const&) | |
| | | | | | | | | + 1.20% rocksdb::WriteBatchInternal::Put(rocksdb::WriteBatch*, unsigned int, rocksdb::SliceParts const&, rocksdb::SliceParts const&) | |
| | | | | | | | | | + 1.19% std::string::append(char const*, unsigned long) | |
| | | | | | | | | | + 0.01% __memcpy_ssse3 | |
| | | | | | | | | | + 1.19% std::string::reserve(unsigned long) | |
| | | | | | | | | | + 0.11% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | | + 0.11% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | | + 0.11% tc_new | |
| | | | | | | | | | | + 0.11% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | | + 0.11% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | | + 0.08% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::Populate() | |
| | | | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | | + 1.08% operator delete(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 1.08% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 1.08% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 0.85% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | + 0.33% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | | + 0.28% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | | + 0.01% tcmalloc::DLL_Remove(tcmalloc::Span*) | |
| | | | | | | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | | | | | | + 0.51% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.02% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | + 0.50% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.03% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.03% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.01% rocksdb::GetColumnFamilyID(rocksdb::ColumnFamilyHandle*) | |
| | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, char*) | |
| | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::advance(int) | |
| | | | | | | | + 0.02% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, ceph::buffer::list&) | |
| | | | | | | | | + 0.02% ceph::buffer::list::append(ceph::buffer::ptr const&, unsigned int, unsigned int) | |
| | | | | | | | | | + 0.02% tc_new | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::advance(int) | |
| | | | | | | | + 0.06% std::string::append(std::string const&) | |
| | | | | | | | | + 0.06% std::string::reserve(unsigned long) | |
| | | | | | | | | + 0.02% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | + 0.02% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | + 0.02% tc_new | |
| | | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.04% operator delete(void*) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.04% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.04% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.03% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% std::string::append(char const*, unsigned long) | |
| | | | | | | | | + 0.01% std::string::reserve(unsigned long) | |
| | | | | | | | | + 0.01% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | + 0.01% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.07% std::string::push_back(char) | |
| | | | | | | | + 0.06% std::string::reserve(unsigned long) | |
| | | | | | | | + 0.03% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | + 0.03% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | + 0.03% tc_new | |
| | | | | | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.03% operator delete(void*) | |
| | | | | | | | + 0.03% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.03% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.02% BlueStore::_omap_rmkeys(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>&, ceph::buffer::list&) | |
| | | | | | | | + 0.02% RocksDBStore::RocksDBTransactionImpl::rmkey(std::string const&, std::string const&) | |
| | | | | | | | + 0.02% rocksdb::WriteBatch::Delete(rocksdb::ColumnFamilyHandle*, rocksdb::Slice const&) | |
| | | | | | | | + 0.02% rocksdb::WriteBatchInternal::Delete(rocksdb::WriteBatch*, unsigned int, rocksdb::Slice const&) | |
| | | | | | | | + 0.02% std::string::append(char const*, unsigned long) | |
| | | | | | | | + 0.02% std::string::reserve(unsigned long) | |
| | | | | | | | + 0.02% operator delete(void*) | |
| | | | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.09% BlueStore::_get_collection(coll_t const&) | |
| | | | | | | | + 0.01% std::_Hashtable<coll_t, std::pair<coll_t const, boost::intrusive_ptr<BlueStore::Collection> >, mempool::pool_allocator<(mempool::pool_index_t)4, std::pair<coll_t const, boost::intrusive_ptr<BlueStore::Collection> > >, std::__detail::_Select1st, std::equal_to<coll_t>, std::hash<coll_t>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_find_before_node(unsigned long, coll_t const&, unsigned long) const | |
| | | | | | | | + 0.05% std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) | |
| | | | | | | | | + 0.05% char* std::string::_S_construct<char const*>(char const*, char const*, std::allocator<char> const&, std::forward_iterator_tag) | |
| | | | | | | | | + 0.04% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | + 0.04% tc_new | |
| | | | | | | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.04% operator delete(void*) | |
| | | | | | | | + 0.04% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.04% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.02% BlueStore::_setattrs(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>&, std::map<std::string, ceph::buffer::ptr, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::ptr> > > const&) | |
| | | | | | | | + 0.01% ceph::buffer::ptr::operator=(ceph::buffer::ptr&&) | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | + 0.01% ceph::buffer::ptr::ptr(char const*, unsigned int) | |
| | | | | | | | + 0.01% ceph::buffer::copy(char const*, unsigned int) | |
| | | | | | | | + 0.01% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | + 0.01% posix_memalign | |
| | | | | | | | + 0.01% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | + 0.02% BlueStore::Collection::get_onode(ghobject_t const&, bool) | |
| | | | | | | | + 0.02% BlueStore::OnodeSpace::lookup(ghobject_t const&) | |
| | | | | | | | + 0.01% std::_Hashtable<onode_map_handle, std::pair<onode_map_handle const, boost::intrusive_ptr<BlueStore::Onode> >, mempool::pool_allocator<(mempool::pool_index_t)4, std::pair<onode_map_handle const, boost::intrusive_ptr<BlueStore::Onode> > >, std::__detail::_Select1st, std::equal_to<onode_map_handle>, std::hash<onode_map_handle>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::find(onode_map_handle const&) | |
| | | | | | | | + 0.01% std::_Hashtable<onode_map_handle, std::pair<onode_map_handle const, boost::intrusive_ptr<BlueStore::Onode> >, mempool::pool_allocator<(mempool::pool_index_t)4, std::pair<onode_map_handle const, boost::intrusive_ptr<BlueStore::Onode> > >, std::__detail::_Select1st, std::equal_to<onode_map_handle>, std::hash<onode_map_handle>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_find_before_node(unsigned long, onode_map_handle const&, unsigned long) const | |
| | | | | | | + 2.29% BlueStore::_write(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>&, unsigned long, unsigned long, ceph::buffer::list&, unsigned int) | |
| | | | | | | | + 2.29% BlueStore::_do_write(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list&, unsigned int) | |
| | | | | | | | + 0.02% BlueStore::_choose_write_options(boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned int, BlueStore::WriteContext*) | |
| | | | | | | | | + 0.01% std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) | |
| | | | | | | | | | + 0.01% char* std::string::_S_construct<char const*>(char const*, char const*, std::allocator<char> const&, std::forward_iterator_tag) | |
| | | | | | | | | | + 0.01% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.61% BlueStore::_wctx_finish(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, BlueStore::WriteContext*, std::set<BlueStore::SharedBlob*, std::less<BlueStore::SharedBlob*>, std::allocator<BlueStore::SharedBlob*> >*) | |
| | | | | | | | | + 0.61% operator delete(void*) | |
| | | | | | | | | + 0.61% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.61% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.44% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.18% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | | + 0.14% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | + 0.26% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.26% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.03% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.03% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.02% BlueStore::ExtentMap::compress_extent_map(unsigned long, unsigned long) | |
| | | | | | | | | + 0.01% boost::intrusive::bstree_algorithms_base<boost::intrusive::rbtree_node_traits<void*, true> >::next_node(boost::intrusive::compact_rbtree_node<void*>* const&) [clone .isra.1033] | |
| | | | | | | | | + 0.01% operator delete[](void*) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 1.64% BlueStore::_do_write_data(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list&, BlueStore::WriteContext*) | |
| | | | | | | | + 1.64% BlueStore::_do_write_small(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list::iterator&, BlueStore::WriteContext*) | |
| | | | | | | | + 0.94% std::_Function_base::_Base_manager<BlueStore::_do_write_small(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list::iterator&, BlueStore::WriteContext*)::{lambda(unsigned long, unsigned long)#3}>::_M_manager(std::_Any_data&, std::_Function_base::_Base_manager<BlueStore::_do_write_small(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list::iterator&, BlueStore::WriteContext*)::{lambda(unsigned long, unsigned long)#3}> const&, std::_Manager_operation) | |
| | | | | | | | | + 0.94% operator delete(void*) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimitLocked() | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.93% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.92% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.71% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.20% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.16% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | + 0.01% tcmalloc::DLL_Remove(tcmalloc::Span*) | |
| | | | | | | | | | + 0.51% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.51% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.42% BlueStore::_get_deferred_op(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Onode>) | |
| | | | | | | | | + 0.42% tc_new | |
| | | | | | | | | + 0.42% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.42% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.01% _init | |
| | | | | | | | | + 0.30% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | | | | + 0.10% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.10% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.01% BlueStore::ExtentMap::seek_lextent(unsigned long) | |
| | | | | | | | + 0.03% BlueStore::_buffer_cache_write(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Blob>, unsigned long, ceph::buffer::list&, unsigned int) [clone .isra.2035] | |
| | | | | | | | | + 0.01% ceph::buffer::list::list(ceph::buffer::list const&) | |
| | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | + 0.01% std::pair<std::_Rb_tree_iterator<boost::intrusive_ptr<BlueStore::SharedBlob> >, bool> std::_Rb_tree<boost::intrusive_ptr<BlueStore::SharedBlob>, boost::intrusive_ptr<BlueStore::SharedBlob>, std::_Identity<boost::intrusive_ptr<BlueStore::SharedBlob> >, std::less<boost::intrusive_ptr<BlueStore::SharedBlob> >, std::allocator<boost::intrusive_ptr<BlueStore::SharedBlob> > >::_M_insert_unique<boost::intrusive_ptr<BlueStore::SharedBlob> const&>(boost::intrusive_ptr<BlueStore::SharedBlob> const&) | |
| | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% ceph::buffer::list::reassign_to_mempool(int) | |
| | | | | | | | | + 0.01% mempool::pool_t::adjust_count(long, long) | |
| | | | | | | | + 0.13% BlueStore::ExtentMap::set_lextent(boost::intrusive_ptr<BlueStore::Collection>&, unsigned long, unsigned long, unsigned long, boost::intrusive_ptr<BlueStore::Blob>, boost::intrusive::list<BlueStore::OldExtent, boost::intrusive::member_hook<BlueStore::OldExtent, boost::intrusive::list_member_hook<void, void, void>, &BlueStore::OldExtent::old_extent_item>, void, void, void>*) | |
| | | | | | | | | + 0.01% BlueStore::Extent::operator new(unsigned long) | |
| | | | | | | | | + 0.08% BlueStore::ExtentMap::punch_hole(boost::intrusive_ptr<BlueStore::Collection>&, unsigned long, unsigned long, boost::intrusive::list<BlueStore::OldExtent, boost::intrusive::member_hook<BlueStore::OldExtent, boost::intrusive::list_member_hook<void, void, void>, &BlueStore::OldExtent::old_extent_item>, void, void, void>*) | |
| | | | | | | | | | + 0.04% BlueStore::ExtentMap::rm(boost::intrusive::tree_iterator<boost::intrusive::bhtraits<BlueStore::Extent, boost::intrusive::rbtree_node_traits<void*, true>, (boost::intrusive::link_mode_type)1, boost::intrusive::dft_tag, 3u>, false>) | |
| | | | | | | | | | | + 0.04% operator delete[](void*) | |
| | | | | | | | | | | + 0.04% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | | + 0.04% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.05% BlueStore::ExtentMap::add(unsigned int, unsigned int, unsigned int, boost::intrusive_ptr<BlueStore::Blob>&) | |
| | | | | | | | | | + 0.01% BlueStore::Extent::operator new(unsigned long) | |
| | | | | | | | | | + 0.04% operator new[](unsigned long) | |
| | | | | | | | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.04% operator new[](unsigned long) | |
| | | | | | | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.05% bluestore_blob_t::map(unsigned long, unsigned long, std::function<int (unsigned long, unsigned long)>) const | |
| | | | | | | | | + 0.05% std::_Function_handler<int (unsigned long, unsigned long), BlueStore::_do_write_small(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>, unsigned long, unsigned long, ceph::buffer::list::iterator&, BlueStore::WriteContext*)::{lambda(unsigned long, unsigned long)#3}>::_M_invoke(std::_Any_data const&, unsigned long, unsigned long) | |
| | | | | | | | | + 0.05% void std::vector<bluestore_pextent_t, mempool::pool_allocator<(mempool::pool_index_t)4, bluestore_pextent_t> >::_M_emplace_back_aux<bluestore_pextent_t>(bluestore_pextent_t&&) | |
| | | | | | | | | + 0.05% operator new[](unsigned long) | |
| | | | | | | | | + 0.05% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.05% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.03% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.01% BlueStore::Blob::put() | |
| | | | | | | | + 0.01% bluestore_blob_t::calc_csum(unsigned long, ceph::buffer::list const&) | |
| | | | | | | | | + 0.01% ceph::buffer::list::iterator_impl<true>::iterator_impl(ceph::buffer::list const*, unsigned int) | |
| | | | | | | | + 0.07% tc_new | |
| | | | | | | | + 0.07% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.07% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.04% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 2.40% ceph::buffer::list::get_contiguous(unsigned int, unsigned int) | |
| | | | | | | | + 0.63% ceph::buffer::list::rebuild() | |
| | | | | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | | | | | + 0.53% ceph::buffer::list::rebuild(ceph::buffer::ptr&) | |
| | | | | | | | | | + 0.53% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | | + 0.53% operator delete(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.53% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | | + 0.52% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | | + 0.46% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | | + 0.06% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | | + 0.05% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | | + 0.38% SpinLock::SlowLock() | |
| | | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | | + 0.37% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | | + 0.09% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | | + 0.01% mempool::pool_t::adjust_count(long, long) | |
| | | | | | | | | + 0.08% posix_memalign | |
| | | | | | | | | + 0.08% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | | + 0.08% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.08% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.06% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::Populate() | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 1.77% operator delete(void*) | |
| | | | | | | | + 0.02% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 1.75% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 1.75% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 1.41% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.24% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | + 0.21% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | + 1.14% SpinLock::SlowLock() | |
| | | | | | | | | + 0.02% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | + 1.12% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.01% __errno_location | |
| | | | | | | | + 0.07% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.07% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.66% tc_new | |
| | | | | | | | + 0.66% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.66% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.44% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.05% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | + 0.05% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::Populate() | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.17% SpinLock::SlowLock() | |
| | | | | | | | | + 0.17% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.01% operator delete(void*) | |
| | | | | | + 0.72% RocksDBStore::RocksDBTransactionImpl::set(std::string const&, std::string const&, ceph::buffer::list const&) | |
| | | | | | | + 0.71% RocksDBStore::RocksDBTransactionImpl::put_bat(rocksdb::WriteBatch&, rocksdb::ColumnFamilyHandle*, std::string const&, ceph::buffer::list const&) | |
| | | | | | | | + 0.67% rocksdb::WriteBatch::Put(rocksdb::ColumnFamilyHandle*, rocksdb::SliceParts const&, rocksdb::SliceParts const&) | |
| | | | | | | | | + 0.67% rocksdb::WriteBatchInternal::Put(rocksdb::WriteBatch*, unsigned int, rocksdb::SliceParts const&, rocksdb::SliceParts const&) | |
| | | | | | | | | + 0.67% std::string::append(char const*, unsigned long) | |
| | | | | | | | | + 0.01% __memcpy_ssse3 | |
| | | | | | | | | + 0.67% std::string::reserve(unsigned long) | |
| | | | | | | | | + 0.01% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | | | | | + 0.01% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | | | | | + 0.01% tc_new | |
| | | | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | | + 0.01% tcmalloc::CentralFreeList::Populate() | |
| | | | | | | | | + 0.66% operator delete(void*) | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.65% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.65% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.58% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | | + 0.08% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | | + 0.07% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.50% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | | + 0.49% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | | + 0.02% tc_new | |
| | | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.02% operator delete(void*) | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimitLocked() | |
| | | | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% std::_Hashtable<std::string, std::pair<std::string const, void*>, std::allocator<std::pair<std::string const, void*> >, std::__detail::_Select1st, std::equal_to<std::string>, std::hash<std::string>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::find(std::string const&) | |
| | | | | | | + 0.01% std::_Hashtable<std::string, std::pair<std::string const, void*>, std::allocator<std::pair<std::string const, void*> >, std::__detail::_Select1st, std::equal_to<std::string>, std::hash<std::string>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::_M_find_before_node(unsigned long, std::string const&, unsigned long) const | |
| | | | | | + 0.01% ghobject_t::encoded_size() const | |
| | | | | | + 0.01% std::string::_Rep::_M_dispose(std::allocator<char> const&) | |
| | | | | | + 0.01% std::string::append(char const*, unsigned long) | |
| | | | | | + 0.01% std::string::reserve(unsigned long) | |
| | | | | | + 0.01% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
| | | | | | + 0.01% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | | + 0.01% tc_new | |
| | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 0.03% std::_Rb_tree<hobject_t, std::pair<hobject_t const, PGTransaction::ObjectOperation>, std::_Select1st<std::pair<hobject_t const, PGTransaction::ObjectOperation> >, std::less<hobject_t>, std::allocator<std::pair<hobject_t const, PGTransaction::ObjectOperation> > >::_M_erase(std::_Rb_tree_node<std::pair<hobject_t const, PGTransaction::ObjectOperation> >*) | |
| | | | | | + 0.03% std::_Rb_tree<std::string, std::pair<std::string const, boost::optional<ceph::buffer::list> >, std::_Select1st<std::pair<std::string const, boost::optional<ceph::buffer::list> > >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::optional<ceph::buffer::list> > > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, boost::optional<ceph::buffer::list> > >*) | |
| | | | | | | + 0.02% std::_Rb_tree<std::string, std::pair<std::string const, boost::optional<ceph::buffer::list> >, std::_Select1st<std::pair<std::string const, boost::optional<ceph::buffer::list> > >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::optional<ceph::buffer::list> > > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, boost::optional<ceph::buffer::list> > >*) | |
| | | | | | | | + 0.02% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | | + 0.02% ceph::buffer::ptr::release() | |
| | | | | | | | | + 0.02% tc_free | |
| | | | | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% operator delete(void*) | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.01% std::_Rb_tree<unsigned long, std::pair<unsigned long const, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > >, std::_Select1st<std::pair<unsigned long const, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > > >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > > > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned long const, std::pair<unsigned long, boost::variant<PGTransaction::ObjectOperation::BufferUpdate::Write, PGTransaction::ObjectOperation::BufferUpdate::Zero, PGTransaction::ObjectOperation::BufferUpdate::CloneRange> > > >*) | |
| | | | | | + 0.01% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | + 0.01% ceph::buffer::ptr::release() | |
| | | | | + 3.01% generate_transaction(std::unique_ptr<PGTransaction, std::default_delete<PGTransaction> >&, coll_t const&, std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> >&, ObjectStore::Transaction*, std::set<hobject_t, std::less<hobject_t>, std::allocator<hobject_t> >*, std::set<hobject_t, std::less<hobject_t>, std::allocator<hobject_t> >*) | |
| | | | | | + 0.01% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, ceph::buffer::list> >*) | |
| | | | | | | + 0.01% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, ceph::buffer::list> >*) | |
| | | | | | | + 0.01% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | + 0.01% operator delete(void*) | |
| | | | | | + 0.11% std::list<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::operator=(std::list<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> > const&) | |
| | | | | | | + 0.11% tc_new | |
| | | | | | | + 0.11% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.11% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.06% SpinLock::SlowLock() | |
| | | | | | | | + 0.06% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | + 2.32% ObjectStore::Transaction::setattrs(coll_t const&, ghobject_t const&, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > > const&) | |
| | | | | | | + 0.05% ObjectStore::Transaction::_get_next_op() | |
| | | | | | | | + 0.03% ceph::buffer::list::append(ceph::buffer::ptr const&) | |
| | | | | | | | | + 0.03% tc_new | |
| | | | | | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | | + 0.03% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.02% ceph::buffer::ptr::ptr(unsigned int) | |
| | | | | | | | + 0.02% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | + 0.02% posix_memalign | |
| | | | | | | | + 0.02% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.01% ObjectStore::Transaction::_get_coll_id(coll_t const&) | |
| | | | | | | | + 0.01% std::_Rb_tree_iterator<std::pair<coll_t const, unsigned int> > std::_Rb_tree<coll_t, std::pair<coll_t const, unsigned int>, std::_Select1st<std::pair<coll_t const, unsigned int> >, std::less<coll_t>, std::allocator<std::pair<coll_t const, unsigned int> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<coll_t const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<coll_t const, unsigned int> >, std::piecewise_construct_t const&, std::tuple<coll_t const&>&&, std::tuple<>&&) | |
| | | | | | | | + 0.01% coll_t::calc_str() | |
| | | | | | | | + 0.01% spg_t::calc_name(char*, char const*) const | |
| | | | | | | + 0.01% ObjectStore::Transaction::_get_object_id(ghobject_t const&) | |
| | | | | | | | + 0.01% std::_Rb_tree_iterator<std::pair<ghobject_t const, unsigned int> > std::_Rb_tree<ghobject_t, std::pair<ghobject_t const, unsigned int>, std::_Select1st<std::pair<ghobject_t const, unsigned int> >, std::less<ghobject_t>, std::allocator<std::pair<ghobject_t const, unsigned int> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<ghobject_t const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<ghobject_t const, unsigned int> >, std::piecewise_construct_t const&, std::tuple<ghobject_t const&>&&, std::tuple<>&&) | |
| | | | | | | | + 0.01% tc_new | |
| | | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 2.26% std::enable_if<denc_traits<std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >, void>::supported&&(!denc_traits<std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >, void>::featured), void>::type encode<std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >, denc_traits<std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >, void> >(std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > > const&, ceph::buffer::list&, unsigned long) [clone .isra.1547] | |
| | | | | | | + 1.99% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | + 1.99% operator delete(void*) | |
| | | | | | | | + 0.04% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | | | + 0.02% tcmalloc::ThreadCache::IncreaseCacheLimitLocked() | |
| | | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 1.95% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 1.95% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 1.47% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.31% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | + 0.27% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | | | + 0.01% madvise | |
| | | | | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | | | | + 1.13% SpinLock::SlowLock() | |
| | | | | | | | | + 0.02% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | + 1.11% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.10% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.10% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.03% ceph::buffer::list::list(ceph::buffer::list const&) | |
| | | | | | | | + 0.01% ceph::buffer::ptr::ptr(ceph::buffer::ptr const&) | |
| | | | | | | | + 0.01% std::__detail::_List_node_base::_M_reverse() | |
| | | | | | | | + 0.02% tc_new | |
| | | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.04% ceph::buffer::list::contiguous_appender::contiguous_appender(ceph::buffer::list*, unsigned long, bool) | |
| | | | | | | | + 0.04% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | | | + 0.04% posix_memalign | |
| | | | | | | | + 0.04% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | | + 0.04% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.04% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.04% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.14% ceph::buffer::list::append(ceph::buffer::ptr&&) | |
| | | | | | | | + 0.14% tc_new | |
| | | | | | | | + 0.14% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.14% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.06% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.06% SpinLock::SlowLock() | |
| | | | | | | | | + 0.06% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.07% ceph::buffer::list::append(ceph::buffer::list const&) | |
| | | | | | | | + 0.07% tc_new | |
| | | | | | | | + 0.07% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | | + 0.07% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | | + 0.05% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) | |
| | | | | | + 0.02% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | | | + 0.01% posix_memalign | |
| | | | | | | + 0.01% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.08% tc_new | |
| | | | | | | + 0.08% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.08% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.07% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | | + 0.01% tcmalloc::DLL_Remove(tcmalloc::Span*) | |
| | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | + 0.49% operator delete(void*) | |
| | | | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.48% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.48% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.41% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | + 0.10% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | + 0.09% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | + 0.01% madvise | |
| | | | | | | + 0.01% tcmalloc::DLL_Remove(tcmalloc::Span*) | |
| | | | | | + 0.31% SpinLock::SlowLock() | |
| | | | | | + 0.31% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.12% std::pair<std::_Rb_tree_iterator<std::pair<unsigned long const, ReplicatedBackend::InProgressOp> >, bool> std::_Rb_tree<unsigned long, std::pair<unsigned long const, ReplicatedBackend::InProgressOp>, std::_Select1st<std::pair<unsigned long const, ReplicatedBackend::InProgressOp> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, ReplicatedBackend::InProgressOp> > >::_M_insert_unique<std::pair<unsigned long, ReplicatedBackend::InProgressOp> >(std::pair<unsigned long, ReplicatedBackend::InProgressOp>&&) | |
| | | | | | + 0.12% tc_new | |
| | | | | | + 0.12% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.12% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.09% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.01% operator delete(void*) | |
| | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.13% tc_new | |
| | | | | + 0.13% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | + 0.13% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | + 0.08% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 0.05% SpinLock::SlowLock() | |
| | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | + 0.04% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.01% operator new[](unsigned long) | |
| | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | + 0.01% SpinLock::SlowLock() | |
| | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | + 0.01% PrimaryLogPG::eval_repop(PrimaryLogPG::RepGather*) | |
| | | + 1.68% PrimaryLogPG::prepare_transaction(PrimaryLogPG::OpContext*) | |
| | | | + 1.14% PrimaryLogPG::finish_ctx(PrimaryLogPG::OpContext*, int) | |
| | | | | + 0.70% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, ceph::buffer::list> >*) | |
| | | | | | + 0.68% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, ceph::buffer::list> >*) | |
| | | | | | | + 0.64% std::_List_base<ceph::buffer::ptr, std::allocator<ceph::buffer::ptr> >::_M_clear() | |
| | | | | | | | + 0.64% operator delete(void*) | |
| | | | | | | | + 0.64% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | | + 0.64% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | | + 0.52% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | | | + 0.09% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | | | + 0.01% _init | |
| | | | | | | | | | + 0.06% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | | | | + 0.01% madvise | |
| | | | | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | | + 0.42% SpinLock::SlowLock() | |
| | | | | | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | | | | | + 0.41% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | | | + 0.02% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | | | + 0.02% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | | | + 0.05% operator delete(void*) | |
| | | | | | | + 0.05% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | | + 0.05% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | | + 0.04% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | + 0.03% SpinLock::SlowLock() | |
| | | | | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.02% operator delete(void*) | |
| | | | | | + 0.02% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.02% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.02% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | + 0.01% madvise | |
| | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.16% std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::operator[](std::string&&) | |
| | | | | | + 0.16% std::_Rb_tree_iterator<std::pair<std::string const, ceph::buffer::list> > std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::string&&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::string const, ceph::buffer::list> >, std::piecewise_construct_t const&, std::tuple<std::string&&>&&, std::tuple<>&&) | |
| | | | | | + 0.16% tc_new | |
| | | | | | + 0.16% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.16% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.11% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.03% SpinLock::SlowLock() | |
| | | | | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | + 0.16% object_info_t::operator=(object_info_t const&) | |
| | | | | | + 0.16% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::operator=(std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > > const&) | |
| | | | | | + 0.16% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned long const, unsigned long> >*) | |
| | | | | | + 0.16% operator delete(void*) | |
| | | | | | + 0.16% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.16% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.13% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | + 0.05% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | + 0.04% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | | + 0.01% madvise | |
| | | | | | | + 0.07% SpinLock::SlowLock() | |
| | | | | | | + 0.07% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | + 0.06% void std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> >::_M_emplace_back_aux<pg_log_entry_t>(pg_log_entry_t&&) | |
| | | | | | + 0.06% tc_new | |
| | | | | | + 0.06% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.06% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.06% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.01% tcmalloc::DLL_Prepend(tcmalloc::Span*, tcmalloc::Span*) | |
| | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.01% void std::vector<pg_log_entry_t, std::allocator<pg_log_entry_t> >::emplace_back<pg_log_entry_t>(pg_log_entry_t&&) | |
| | | | | + 0.03% PGTransaction::setattrs(hobject_t const&, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >&) | |
| | | | | | + 0.01% ceph::buffer::list::list(ceph::buffer::list const&) | |
| | | | | | | + 0.01% tc_new | |
| | | | | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.02% std::_Rb_tree_iterator<std::pair<std::string const, boost::optional<ceph::buffer::list> > > std::_Rb_tree<std::string, std::pair<std::string const, boost::optional<ceph::buffer::list> >, std::_Select1st<std::pair<std::string const, boost::optional<ceph::buffer::list> > >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::optional<ceph::buffer::list> > > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::string const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::string const, boost::optional<ceph::buffer::list> > >, std::piecewise_construct_t const&, std::tuple<std::string const&>&&, std::tuple<>&&) | |
| | | | | | | + 0.02% tc_new | |
| | | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | | + 0.01% PGTransaction::get_object_op_for_modify(hobject_t const&) | |
| | | | | | + 0.01% std::_Rb_tree<hobject_t, std::pair<hobject_t const, PGTransaction::ObjectOperation>, std::_Select1st<std::pair<hobject_t const, PGTransaction::ObjectOperation> >, std::less<hobject_t>, std::allocator<std::pair<hobject_t const, PGTransaction::ObjectOperation> > >::_M_lower_bound(std::_Rb_tree_node<std::pair<hobject_t const, PGTransaction::ObjectOperation> >*, std::_Rb_tree_node<std::pair<hobject_t const, PGTransaction::ObjectOperation> >*, hobject_t const&) [clone .isra.1474] | |
| | | | | | + 0.01% cmp(hobject_t const&, hobject_t const&) | |
| | | | | + 0.01% object_info_t::encode(ceph::buffer::list&, unsigned long) const | |
| | | | | | + 0.01% ceph::buffer::list::append(char const*, unsigned int) | |
| | | | | + 0.01% ceph::buffer::list::claim(ceph::buffer::list&, unsigned int) | |
| | | | | | + 0.01% ceph::buffer::list::claim_append(ceph::buffer::list&, unsigned int) | |
| | | | | + 0.01% ceph::buffer::list::reserve(unsigned long) | |
| | | | | | + 0.01% ceph::buffer::create_aligned(unsigned int, unsigned int) | |
| | | | | | + 0.01% posix_memalign | |
| | | | | | + 0.01% (anonymous namespace)::do_memalign(unsigned long, unsigned long) | |
| | | | | + 0.01% ceph_clock_now() | |
| | | | | | + 0.01% __clock_gettime | |
| | | | | | + 0.01% #### | |
| | | | | + 0.01% OSDMap::get_features(int, unsigned long*) const | |
| | | | | + 0.01% operator delete(void*) | |
| | | | | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | | | | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.53% PrimaryLogPG::do_osd_ops(PrimaryLogPG::OpContext*, std::vector<OSDOp, std::allocator<OSDOp> >&) | |
| | | | + 0.20% PrimaryLogPG::write_update_size_and_usage(object_stat_sum_t&, object_info_t&, interval_set<unsigned long>&, unsigned long, unsigned long, bool) | |
| | | | | + 0.03% interval_set<unsigned long>::intersection_of(interval_set<unsigned long> const&, interval_set<unsigned long> const&) | |
| | | | | | + 0.03% interval_set<unsigned long>::intersection_size_asym(interval_set<unsigned long> const&, interval_set<unsigned long> const&) | |
| | | | | | + 0.02% std::_Rb_tree_iterator<std::pair<unsigned long const, unsigned long> > std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::_M_insert_unique_<std::pair<unsigned long const, unsigned long>&>(std::_Rb_tree_const_iterator<std::pair<unsigned long const, unsigned long> >, std::pair<unsigned long const, unsigned long>&) | |
| | | | | | + 0.02% tc_new | |
| | | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 0.15% interval_set<unsigned long>::subtract(interval_set<unsigned long> const&) | |
| | | | | | + 0.14% operator delete(void*) | |
| | | | | | + 0.14% tcmalloc::ThreadCache::Scavenge() | |
| | | | | | + 0.14% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | | | + 0.13% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | | | + 0.03% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | | | + 0.03% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | + 0.10% SpinLock::SlowLock() | |
| | | | | | | + 0.10% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | | | + 0.03% interval_set<unsigned long>::insert(unsigned long, unsigned long, unsigned long*, unsigned long*) | |
| | | | | + 0.03% tc_new | |
| | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 0.02% SpinLock::SlowLock() | |
| | | | | + 0.02% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.03% PGTransaction::write(hobject_t const&, unsigned long, unsigned long, ceph::buffer::list&, unsigned int) | |
| | | | | + 0.01% ceph::buffer::list::list(ceph::buffer::list const&) | |
| | | | | | + 0.01% ceph::buffer::ptr::ptr(ceph::buffer::ptr const&) | |
| | | | | + 0.03% std::_Rb_tree_iterator<std::pair<hobject_t const, PGTransaction::ObjectOperation> > std::_Rb_tree<hobject_t, std::pair<hobject_t const, PGTransaction::ObjectOperation>, std::_Select1st<std::pair<hobject_t const, PGTransaction::ObjectOperation> >, std::less<hobject_t>, std::allocator<std::pair<hobject_t const, PGTransaction::ObjectOperation> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<hobject_t const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<hobject_t const, PGTransaction::ObjectOperation> >, std::piecewise_construct_t const&, std::tuple<hobject_t const&>&&, std::tuple<>&&) | |
| | | | | + 0.01% _init | |
| | | | | + 0.02% tc_new | |
| | | | | + 0.02% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | + 0.02% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | + 0.31% md_config_t::get_val_generic(std::string const&) const | |
| | | | + 0.22% Mutex::Lock(bool) | |
| | | | | + 0.22% pthread_mutex_lock | |
| | | | | + 0.22% _L_lock_870 | |
| | | | | + 0.22% __lll_lock_wait | |
| | | | + 0.09% md_config_t::_get_val_generic(std::string const&) const | |
| | | | + 0.03% ConfFile::normalize_key_name(std::string const&) | |
| | | | | + 0.03% ConfFile::trim_whitespace(std::string&, bool) | |
| | | | | + 0.03% std::string::_M_replace_safe(unsigned long, unsigned long, char const*, unsigned long) | |
| | | | | + 0.03% std::string::_M_mutate(unsigned long, unsigned long, unsigned long) | |
| | | | | + 0.03% std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) | |
| | | | | + 0.03% tc_new | |
| | | | | + 0.03% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | | + 0.03% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | | + 0.02% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.06% operator delete(void*) | |
| | | | + 0.06% tcmalloc::ThreadCache::Scavenge() | |
| | | | + 0.06% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | + 0.05% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | + 0.02% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | + 0.02% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | + 0.01% madvise | |
| | | | | + 0.04% SpinLock::SlowLock() | |
| | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | + 0.03% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | + 0.01% MOSDOpReply::MOSDOpReply(MOSDOp const*, int, unsigned int, int, bool) | |
| | | | + 0.01% ceph::buffer::list::list() | |
| | | | | + 0.01% ceph::buffer::list::iterator_impl<false>::iterator_impl(ceph::buffer::list*, unsigned int) | |
| | | | + 0.01% Message::Message(int, int, int) | |
| | | | + 0.01% ceph::buffer::list::iterator_impl<false>::advance(int) | |
| | | + 0.01% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::_M_copy(std::_Rb_tree_node<std::pair<unsigned long const, unsigned long> > const*, std::_Rb_tree_node<std::pair<unsigned long const, unsigned long> >*) | |
| | | | + 0.01% tc_new | |
| | | | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | + 0.37% object_info_t::operator=(object_info_t&&) | |
| | | | + 0.37% std::_Rb_tree<unsigned long, std::pair<unsigned long const, unsigned long>, std::_Select1st<std::pair<unsigned long const, unsigned long> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, unsigned long> > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned long const, unsigned long> >*) | |
| | | | + 0.37% operator delete(void*) | |
| | | | + 0.01% tcmalloc::ThreadCache::IncreaseCacheLimit() | |
| | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.37% tcmalloc::ThreadCache::Scavenge() | |
| | | | + 0.37% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | | | + 0.30% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | | | | + 0.04% tcmalloc::CentralFreeList::ReleaseListToSpans(void*) | |
| | | | | | + 0.03% tcmalloc::CentralFreeList::ReleaseToSpans(void*) | |
| | | | | | | + 0.01% tcmalloc::PageHeap::Delete(tcmalloc::Span*) | |
| | | | | | | + 0.01% tcmalloc::PageHeap::MergeIntoFreeList(tcmalloc::Span*) | |
| | | | | | | + 0.01% tcmalloc::PageHeap::DecommitSpan(tcmalloc::Span*) | |
| | | | | | | + 0.01% TCMalloc_SystemRelease(void*, unsigned long) | |
| | | | | | | + 0.01% madvise | |
| | | | | | + 0.01% SpinLock::SlowLock() | |
| | | | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | | + 0.26% SpinLock::SlowLock() | |
| | | | | + 0.01% SpinLock::SpinLoop(long, int*) | |
| | | | | + 0.25% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | | + 0.01% SnapSet::operator=(SnapSet const&) | |
| | | + 0.09% tc_new | |
| | | + 0.08% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | | + 0.08% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | | + 0.07% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpansSafe(int, void**, void**) | |
| | | | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| | | + 0.01% SpinLock::SlowLock() | |
| | | | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| | | + 0.01% SpinLock::SlowUnlock(unsigned long) | |
| | | + 0.01% base::internal::SpinLockWake(int volatile*, bool) | |
| | + 0.01% decode(std::string&, ceph::buffer::list::iterator&) | |
| | | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, std::string&) | |
| | | + 0.01% ceph::buffer::ptr::c_str() | |
| | + 0.01% PG::Scrubber::write_blocked_by_scrub(hobject_t const&) | |
| | | + 0.01% cmp(hobject_t const&, hobject_t const&) | |
| | + 0.01% PrimaryLogPG::OpContext::OpContext(boost::intrusive_ptr<OpRequest>, osd_reqid_t, std::vector<OSDOp, std::allocator<OSDOp> >*, std::shared_ptr<ObjectContext>&, PrimaryLogPG*) | |
| | + 0.01% object_locator_t::decode(ceph::buffer::list::iterator&) | |
| | + 0.01% ceph::buffer::list::iterator_impl<false>::copy(unsigned int, char*) | |
| | | + 0.01% ceph::buffer::ptr::copy_out(unsigned int, unsigned int, char*) const | |
| | + 0.01% PerfCounters::tinc(int, utime_t, unsigned int) | |
| | + 0.01% tc_new | |
| | + 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
| | + 0.01% tcmalloc::CentralFreeList::RemoveRange(void**, void**, int) | |
| | + 0.01% tcmalloc::CentralFreeList::FetchFromOneSpans(int, void**, void**) | |
| + 0.02% Mutex::Unlock() | |
| | + 0.02% __pthread_mutex_unlock | |
| | + 0.02% _L_unlock_713 | |
| | + 0.02% __lll_unlock_wake | |
| + 72.32% pthread_cond_timedwait | |
| + 0.01% __pthread_enable_asynccancel | |
+ 0.01% __memcpy_chk_ssse3 | |
+ 0.01% __wcscpy_ssse3 | |
+ 0.01% std::locale::_Impl::_Impl(std::locale::_Impl const&, unsigned long) | |
+ 0.01% std::local_Rb_tree_decrement(std::_Rb_tree_node_base*) | |
+ 0.01% std::string::_Rep::_M_dispose(std::allocator<char> const&) [clone .part.12] | |
+ 0.01% std::string::_Rep::_M_clone(std::allocator<char> const&, unsigned long) | |
+ 0.01% std::string::_Rep::_M_grab(std::allocator<char> const&, std::allocator<char> const&) | |
+ 0.01% _L_cond_lock_1016 | |
+ 0.06% tcmalloc::CentralFreeList::Init(unsigned long) | |
+ 0.01% tcmalloc::DLL_Init(tcmalloc::Span*) | |
+ 0.01% tcmalloc::ThreadCache::FetchFromCentralCache(unsigned long, unsigned long) | |
+ 0.01% tc_realloc | |
+ 0.01% tc_new_nothrow | |
+ 0.01% #### | |
| + 0.01% boost::re_detail_106300::perl_matcher<char const*, std::allocator<boost::sub_match<char const*> >, boost::regex_traits<char, boost::cpp_regex_traits<char> > >::match_word_boundary() | |
+ 0.01% #### | |
+ 0.01% std::_Rb_tree<std::string, std::pair<std::string const, ceph::buffer::list>, std::_Select1st<std::pair<std::string const, ceph::buffer::list> >, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator<std::pair<std::string const, ceph::buffer::list> >, std::string const&) | |
Thread: 21418 (tp_osd_tp) - 19934 samples, time suspended=1675ms | |
+ 0.01% MOSDOpReply::~MOSDOpReply() | |
+ 0.01% PG::MissingLoc::is_deleted(hobject_t const&) const | |
+ 0.01% OpTracker::check_ops_in_flight(std::vector<std::string, std::allocator<std::string> >&, int*) | |
+ 0.01% BlueStore::_remove(BlueStore::TransContext*, boost::intrusive_ptr<BlueStore::Collection>&, boost::intrusive_ptr<BlueStore::Onode>&) | |
+ 0.01% ceph::buffer::list::crc32c(unsigned int) const | |
+ 0.01% __tcf_0 | |
+ 0.01% OpRequest::_dump(ceph::Formatter*) const | |
+ 0.01% crc32_iscsi_00 | |
+ 0.01% #### | |
| + 0.01% std::__detail::_List_node_base::swap(std::__detail::_List_node_base&, std::__detail::_List_node_base&) | |
+ 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% ceph::buffer::list::prepend_zero(unsigned int) | |
+ 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
| + 0.01% #### | |
+ 99.83% clone | |
| + 99.83% start_thread | |
| + 99.83% ShardedThreadPool::WorkThreadSharded::entry() | |
| + 99.83% ShardedThreadPool::shardedthreadpool_worker(unsigned int) | |
| + 99.83% OSD::ShardedOpWQ::_process(unsigned int, ceph::heartbeat_handle_d*) | |
| + 0.01% PGQueueable::PGQueueable(PGQueueable const&) | |
| + 0.01% WeightedPriorityQueue<std::pair<spg_t, PGQueueable>, unsigned long>::dequeue() | |
| | + 0.01% WeightedPriorityQueue<std::pair<spg_t, PGQueueable>, unsigned long>::Queue::pop(bool) | |
| | + 0.01% WeightedPriorityQueue<std::pair<spg_t, PGQueueable>, unsigned long>::SubQueue::pop() | |
| | + 0.01% operator delete(void*) | |
| | + 0.01% tcmalloc::ThreadCache::Scavenge() | |
| | + 0.01% tcmalloc::ThreadCache::ReleaseToCentralCache(tcmalloc::ThreadCache::FreeList*, unsigned long, int) | |
| | + 0.01% tcmalloc::CentralFreeList::InsertRange(void*, void*, int) | |
| | + 0.01% SpinLock::SlowLock() | |
| | + 0.01% base::internal::SpinLockDelay(int volatile*, int, int) | |
| + 6.43% PG::lock(bool) const | |
| | + 6.43% Mutex::Lock(bool) | |
| | + 6.43% pthread_mutex_lock | |
| | + 6.43% _L_lock_812 | |
| | + 6.43% __lll_lock_wait | |
| + 20.23% PGQueueable::RunVis::operator()(boost::intrusive_ptr<OpRequest> const&) | |
| | + 20.23% OSD::dequeue_op(boost::intrusive_ptr<PG>, boost::intrusive_ptr<OpRequest>, ThreadPool::TPHandle&) | |
| | + 20.22% PrimaryLogPG::do_request(boost::intrusive_ptr<OpRequest>&, ThreadPool::TPHandle&) | |
| | | + 20.21% PrimaryLogPG::do_op(boost::intrusive_ptr<OpRequest>&) | |
| | | + 0.01% OSDService::_check_full(OSDService::s_names, std::ostream&) const | |
| | | | + 0.01% std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*) | |
| | | | | + 0.01% std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std: |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment