Skip to content

Instantly share code, notes, and snippets.

@aclamk
Created January 15, 2018 15:32
Show Gist options
  • Save aclamk/9d8900b82181cb14f47b1fca03fd88ed to your computer and use it in GitHub Desktop.
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.
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