Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consider tidying / stripping from function names #4

Open
zz85 opened this issue Oct 29, 2022 · 0 comments
Open

Consider tidying / stripping from function names #4

zz85 opened this issue Oct 29, 2022 · 0 comments

Comments

@zz85
Copy link
Owner

zz85 commented Oct 29, 2022

Some rust function names can be pretty verbose and makes it difficult to be displayed (as well as generates long stress).

Consider stripping generics or even crate prefixes out of function names for more concise labels.

See how it's done in FlameGraph or inferno

An example of long symbols

                                library/alloc/src/raw_vec.rs: alloc::raw_vec::RawVec<T,A>::ptr
      github.com-1ecc6299db9ec823/num_cpus-1.13.1/src/lib.rs: alloc::raw_vec::finish_grow
                                  library/core/src/result.rs: <core::result::Result<T,E> as core::ops::try_trait::Try>::branch
                             gimli-0.26.2/src/read/abbrev.rs: gimli::read::abbrev::AttributeSpecification::new
                                     core/src/num/nonzero.rs: core::num::nonzero::NonZeroUsize::new_unchecked
                                         core/src/ptr/mod.rs: core::ptr::slice_from_raw_parts
                                       core/src/array/mod.rs: core::array::<impl core::ops::index::IndexMut<I> for [T; N]>::index_mut
                                     core/src/slice/index.rs: <core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get_unchecked
                                    src/slice/iter/macros.rs: <core::slice::iter::Iter<T> as core::iter::traits::iterator::Iterator>::position
   github.com-1ecc6299db9ec823/gimli-0.26.2/src/endianity.rs: <gimli::endianity::RunTimeEndian as core::clone::Clone>::clone
                      gimli-0.26.2/src/read/endian_reader.rs: gimli::read::endian_reader::SubRange<T>::read_slice
                                    src/slice/iter/macros.rs: <core::slice::iter::Iter<T> as core::iter::traits::iterator::Iterator>::next
                           gimli-0.26.2/src/read/rnglists.rs: gimli::read::rnglists::RawRange::parse
                                        alloc/src/vec/mod.rs: <alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter
                                  library/alloc/src/alloc.rs: <alloc::alloc::Global as core::alloc::Allocator>::allocate
                                   core/src/ptr/const_ptr.rs: core::ptr::const_ptr::<impl *const T>::is_null
                      gimli-0.26.2/src/read/endian_reader.rs: <gimli::read::endian_reader::EndianReader<Endian,T> as gimli::read::reader::Reader>::len
                                           std/src/io/mod.rs: std::io::BufRead::read_line
                                         core/src/ptr/mod.rs: core::ptr::slice_from_raw_parts
                                    core/src/alloc/layout.rs: core::alloc::layout::Layout::array
                                     core/src/slice/index.rs: <core::ops::range::RangeTo<usize> as core::slice::index::SliceIndex<[T]>>::index_mut
                            gimli-0.26.2/src/read/aranges.rs: gimli::read::aranges::ArangeHeaderIter<R>::next
                             gimli-0.26.2/src/read/abbrev.rs: gimli::read::abbrev::get_attribute_size
                                       core/src/slice/raw.rs: core::slice::raw::from_raw_parts_mut
                               gimli-0.26.2/src/read/unit.rs: gimli::read::unit::skip_attributes
                                  library/core/src/result.rs: <core::result::Result<T,E> as core::ops::try_trait::Try>::branch
                                    core/src/ptr/metadata.rs: core::ptr::metadata::from_raw_parts_mut
                               gimli-0.26.2/src/read/unit.rs: gimli::read::unit::EntriesRaw<R>::read_abbreviation
                                    core/src/ptr/metadata.rs: core::ptr::metadata::from_raw_parts
                                    src/slice/iter/macros.rs: <core::slice::iter::Iter<T> as core::iter::traits::iterator::Iterator>::next
                                       core/src/slice/mod.rs: core::slice::<impl [T]>::get_unchecked
                                    core_arch/src/x86/avx.rs: core::core_arch::x86::avx::_mm256_load_si256
                                       core/src/slice/mod.rs: core::slice::<impl [T]>::get_unchecked
                                        core/src/str/iter.rs: <core::str::iter::Chars as core::iter::traits::double_ended::DoubleEndedIterator>::next_back
    github.com-1ecc6299db9ec823/lock_api-0.4.9/src/rwlock.rs: <<lock_api::rwlock::RwLock<R,T> as core::fmt::Debug>::fmt::LockedPlaceholder as core::fmt::Debug>::fmt
                                         core/src/ptr/mod.rs: core::ptr::drop_in_place<alloc::vec::Vec<u8>>
                                     core/src/ptr/mut_ptr.rs: core::ptr::mut_ptr::<impl *mut T>::is_null
                                   core/src/ptr/const_ptr.rs: core::ptr::const_ptr::<impl *const T>::copy_to_nonoverlapping
                               gimli-0.26.2/src/read/line.rs: gimli::read::line::LineRow::execute
                                    core/src/str/converts.rs: core::str::converts::from_utf8
                                    core/src/num/wrapping.rs: <core::num::wrapping::Wrapping<u64> as core::ops::arith::AddAssign>::add_assign
                                    src/slice/iter/macros.rs: <core::slice::iter::Iter<T> as core::iter::traits::iterator::Iterator>::next
                                  library/core/src/result.rs: <core::result::Result<T,E> as core::ops::try_trait::Try>::branch
                                        alloc/src/vec/mod.rs: alloc::vec::Vec<T,A>::extend_desugared
                              src/iter/adapters/enumerate.rs: <core::iter::adapters::enumerate::Enumerate<I> as core::iter::traits::iterator::Iterator>::next
                                  library/core/src/result.rs: <core::result::Result<T,E> as core::ops::try_trait::Try>::branch
                                  library/core/src/option.rs: <core::option::Option<T> as core::ops::try_trait::Try>::branch
                                     core/src/ptr/mut_ptr.rs: core::ptr::mut_ptr::<impl *mut T>::guaranteed_eq

----

core/src/slice/index.rs: <core::ops::range::RangeFrom<usize> as core::slice::index::SliceIndex<[T]>>::index
                                      core/src/future/mod.rs: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
                           tokio-1.21.2/src/runtime/enter.rs: tokio::runtime::enter::Enter::block_on
                       runtime/scheduler/multi_thread/mod.rs: tokio::runtime::scheduler::multi_thread::MultiThread::block_on
                             tokio-1.21.2/src/runtime/mod.rs: tokio::runtime::Runtime::block_on
                bpf-profiling/profile-bee/bin/profile-bee.rs: profile_bee::main
                                    core/src/ops/function.rs: core::ops::function::FnOnce::call_once
    github.com-1ecc6299db9ec823/lock_api-0.4.9/src/rwlock.rs: <<lock_api::rwlock::RwLock<R,T> as core::fmt::Debug>::fmt::LockedPlaceholder as core::fmt::Debug>::fmt
                                library/alloc/src/raw_vec.rs: alloc::raw_vec::RawVec<T,A>::with_capacity_in
                                   core/src/ptr/const_ptr.rs: core::ptr::const_ptr::<impl *const [T]>::as_ptr
                                library/alloc/src/raw_vec.rs: alloc::raw_vec::RawVec<T,A>::current_memory
                             src/collections/btree/search.rs: alloc::collections::btree::search::<impl alloc::collections::btree::node::NodeRef<BorrowType,K,V,Type>>::search_node
                                  library/alloc/src/boxed.rs: alloc::boxed::Box<T,A>::try_new_uninit_in
                                  library/core/src/result.rs: <core::result::Result<T,E> as core::ops::try_trait::Try>::branch
                                       core/src/slice/mod.rs: core::slice::<impl [T]>::len
                                     core/src/str/pattern.rs: <core::str::pattern::CharSearcher as core::str::pattern::Searcher>::next_match
                                       core/src/slice/mod.rs: core::slice::<impl [T]>::get
                              src/iter/adapters/enumerate.rs: <core::iter::adapters::enumerate::Enumerate<I> as core::iter::traits::iterator::Iterator>::next
                              src/iter/adapters/enumerate.rs: <core::iter::adapters::enumerate::Enumerate<I> as core::iter::traits::iterator::Iterator>::next
                                     core/src/slice/index.rs: <usize as core::slice::index::SliceIndex<[T]>>::get_unchecked
                                     core/src/ptr/mut_ptr.rs: core::ptr::mut_ptr::<impl *mut T>::is_null
                              src/iter/adapters/enumerate.rs: <core::iter::adapters::enumerate::Enumerate<I> as core::iter::traits::iterator::Iterator>::next
                              src/iter/adapters/enumerate.rs: <core::iter::adapters::enumerate::Enumerate<I> as core::iter::traits::iterator::Iterator>::next
                                  library/alloc/src/slice.rs: alloc::slice::<impl [T]>::to_vec
                                     core/src/slice/index.rs: <core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get
                                     library/core/src/cmp.rs: core::cmp::impls::<impl core::cmp::PartialEq<&B> for &A>::eq
                                  library/core/src/option.rs: core::option::Option<T>::ok_or
                                         core/src/str/mod.rs: core::str::<impl str>::get_unchecked
                              src/iter/adapters/enumerate.rs: <core::iter::adapters::enumerate::Enumerate<I> as core::iter::traits::iterator::Iterator>::next
                                        alloc/src/vec/mod.rs: alloc::vec::Vec<T,A>::set_len
                                     core/src/ptr/mut_ptr.rs: core::ptr::mut_ptr::<impl *mut T>::guaranteed_eq
                              src/iter/adapters/enumerate.rs: <core::iter::adapters::enumerate::Enumerate<I> as core::iter::traits::iterator::Iterator>::next
                                    core/src/char/methods.rs: core::char::methods::<impl char>::encode_utf8
          github.com-1ecc6299db9ec823/aya-0.11.0/src/util.rs: aya::util::parse_kernel_symbols
                                     core/src/slice/index.rs: <core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get_unchecked
                                     core/src/slice/index.rs: <core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get
                                        alloc/src/vec/mod.rs: <alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index
----
                                     core/src/ptr/mut_ptr.rs: core::ptr::mut_ptr::<impl *mut T>::guaranteed_eq
                                 core/src/num/uint_macros.rs: core::num::<impl usize>::checked_mul
                             src/collections/btree/search.rs: alloc::collections::btree::search::<impl alloc::collections::btree::node::NodeRef<BorrowType,K,V,Type>>::find_key_index
                                    src/slice/iter/macros.rs: <core::slice::iter::Iter<T> as core::iter::traits::iterator::Iterator>::next
                             gimli-0.26.2/src/read/reader.rs: gimli::read::reader::Reader::read_u8_array
                                   core/src/ptr/const_ptr.rs: core::ptr::const_ptr::<impl *const T>::is_null
                                library/alloc/src/raw_vec.rs: alloc::raw_vec::RawVec<T,A>::allocate_in
                             src/collections/btree/search.rs: alloc::collections::btree::search::<impl alloc::collections::btree::node::NodeRef<BorrowType,K,V,alloc::collections::btree::node::marker::LeafOrInterna
l>>::search_tree
                                     core/src/num/nonzero.rs: core::num::nonzero::NonZeroUsize::get
                                  library/core/src/option.rs: core::option::Option<T>::ok_or
                                    src/slice/iter/macros.rs: <core::slice::iter::Iter<T> as core::iter::traits::iterator::Iterator>::next
                               gimli-0.26.2/src/read/unit.rs: gimli::read::unit::EntriesRaw<R>::is_empty
                                     library/core/src/cmp.rs: core::cmp::impls::<impl core::cmp::Ord for u64>::cmp
                                         core/src/ptr/mod.rs: core::ptr::slice_from_raw_parts_mut
                                    core/src/ptr/metadata.rs: core::ptr::metadata::from_raw_parts
                                  library/core/src/option.rs: core::option::Option<T>::map
                                        alloc/src/vec/mod.rs: alloc::vec::Vec<T,A>::set_len
                                       core/src/slice/raw.rs: core::slice::raw::from_raw_parts
                                    core/src/ptr/non_null.rs: core::ptr::non_null::NonNull<[T]>::slice_from_raw_parts
     github.com-1ecc6299db9ec823/addr2line-0.18.0/src/lib.rs: addr2line::Lines::parse
                                         core/src/ptr/mod.rs: core::ptr::read
                                library/alloc/src/raw_vec.rs: alloc::raw_vec::RawVec<T,A>::allocate_in
                                  library/alloc/src/slice.rs: <T as alloc::slice::hack::ConvertVec>::to_vec
                                  library/core/src/option.rs: core::option::Option<T>::is_none
                      gimli-0.26.2/src/read/endian_reader.rs: <gimli::read::endian_reader::EndianReader<Endian,T> as gimli::read::reader::Reader>::read_slice
                                    core/src/ptr/metadata.rs: core::ptr::metadata::from_raw_parts
                                   core/src/ptr/const_ptr.rs: core::ptr::const_ptr::<impl *const [T]>::len
                              library/core/src/intrinsics.rs: core::intrinsics::copy_nonoverlapping
                      gimli-0.26.2/src/read/endian_reader.rs: gimli::read::endian_reader::SubRange<T>::read_slice
                                    core/src/ptr/non_null.rs: core::ptr::non_null::NonNull<T>::cast
                               gimli-0.26.2/src/read/unit.rs: gimli::read::unit::skip_attributes
                                  library/core/src/result.rs: <core::result::Result<T,E> as core::ops::try_trait::Try>::branch
                      gimli-0.26.2/src/read/endian_reader.rs: gimli::read::endian_reader::SubRange<T>::read_slice
                               gimli-0.26.2/src/read/unit.rs: gimli::read::unit::parse_attribute
      github.com-1ecc6299db9ec823/gimli-0.26.2/src/leb128.rs: gimli::leb128::read::u16
                      gimli-0.26.2/src/read/endian_reader.rs: <gimli::read::endian_reader::EndianReader<Endian,T> as gimli::read::reader::Reader>::read_slice
                                     core/src/num/nonzero.rs: core::num::nonzero::NonZeroUsize::new_unchecked
                                       core/src/slice/mod.rs: core::slice::<impl [T]>::get_unchecked_mut
                                  library/core/src/option.rs: <core::option::Option<T> as core::ops::try_trait::Try>::branch
                                    src/slice/iter/macros.rs: <core::slice::iter::Iter<T> as core::iter::traits::iterator::Iterator>::next
                                  library/core/src/borrow.rs: <T as core::borrow::Borrow<T>>::borrow
                             gimli-0.26.2/src/read/abbrev.rs: gimli::read::abbrev::get_attribute_size
                                  library/core/src/result.rs: <core::result::Result<T,E> as core::ops::try_trait::Try>::branch
                                   core/src/ptr/const_ptr.rs: core::ptr::const_ptr::<impl *const T>::guaranteed_eq
                                   core/src/ptr/const_ptr.rs: <core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::get_unchecked
                                    src/slice/iter/macros.rs: <core::slice::iter::Iter<T> as core::iter::traits::iterator::Iterator>::next
                                   core_arch/src/x86/avx2.rs: core::core_arch::x86::avx2::_mm256_movemask_epi8
                                       src/memchr/x86/avx.rs: memchr::memchr::x86::avx::memchr::matched
                                       src/memchr/x86/avx.rs: memchr::memchr::x86::avx::memchr
                              memchr-2.5.0/src/memchr/mod.rs: memchr::memchr::memchr
                                    core_arch/src/x86/mod.rs: core::core_arch::x86::m256iExt::as_i8x32
                                   core_arch/src/x86/avx2.rs: core::core_arch::x86::avx2::_mm256_cmpeq_epi8
                                       src/memchr/x86/avx.rs: memchr::memchr::x86::avx::memchr
                             gimli-0.26.2/src/read/abbrev.rs: gimli::read::abbrev::get_attribute_size
                                  library/core/src/borrow.rs: <T as core::borrow::Borrow<T>>::borrow
                             gimli-0.26.2/src/read/reader.rs: gimli::read::reader::Reader::read_u8_array
    github.com-1ecc6299db9ec823/lock_api-0.4.9/src/rwlock.rs: <<lock_api::rwlock::RwLock<R,T> as core::fmt::Debug>::fmt::LockedPlaceholder as core::fmt::Debug>::fmt
                                    core/src/ptr/non_null.rs: core::ptr::non_null::NonNull<T>::as_ptr
                                  library/alloc/src/alloc.rs: alloc::alloc::Global::grow_impl
                                    core/src/ptr/non_null.rs: core::ptr::non_null::NonNull<T>::as_ptr
                                    core/src/ptr/non_null.rs: core::ptr::non_null::NonNull<T>::new
                              gimli-0.26.2/src/read/dwarf.rs: gimli::read::dwarf::Unit<R>::new
                                         core/src/ptr/mod.rs: core::ptr::drop_in_place<alloc::raw_vec::RawVec<u8>>
                                    core/src/ptr/non_null.rs: <core::ptr::non_null::NonNull<T> as core::convert::From<core::ptr::unique::Unique<T>>>::from
                                     library/core/src/cmp.rs: core::cmp::impls::<impl core::cmp::Ord for u64>::cmp
                                   core/src/ptr/const_ptr.rs: core::ptr::const_ptr::<impl *const T>::offset
                                   core/src/ptr/const_ptr.rs: core::ptr::const_ptr::<impl *const T>::add
                                       src/memchr/x86/avx.rs: memchr::memchr::x86::avx::memchr
zz85 added a commit that referenced this issue Oct 29, 2022
- using string manipulations
- also cleaned up rust brackets (See #4)
- in general does seems like it improves readability even though
  in some cases might be clearer to have  <iter>::next() instead of
  just `next`.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant