Difference between revisions of "DPS915 C U D A B O Y S"

From CDOT Wiki
Jump to: navigation, search
(✗Profile 1: PI Approximation)
(Assignment 1)
Line 9: Line 9:
 
== Assignment 1 ==
 
== Assignment 1 ==
  
=== <span style="color: red">&#x2717;Profile 1: PI Approximation</span> ===  
+
=== <span style="color: green">&#x2713; Profile 0: File Encryption</span> ===
'''compiled by Johnathan'''
+
 
 +
 
 +
=== <span style="color: red">&#x2717; Profile 1: PI Approximation</span> ===  
 +
 
  
 
* Sample run:
 
* Sample run:
Line 46: Line 49:
 
  0.00    106.93    0.00        1    0.00    0.00  _GLOBAL__sub_I__Z10reportTimePKcNSt6chrono8durationIlSt5ratioILl1ELl1000000EEEE
 
  0.00    106.93    0.00        1    0.00    0.00  _GLOBAL__sub_I__Z10reportTimePKcNSt6chrono8durationIlSt5ratioILl1ELl1000000EEEE
  
=== <span style="color: green">&#x2713; Profile 2: Wave Form Generator</span> ===
+
=== <span style="color: red">&#x2717; Profile 2: Wave Form Generator</span> ===
'''compiled by Manjot'''
 
  
'''This is the program we selected to optimize. It's a great candidate because it has 2 primary functions that have a few for loops in them. One of the functions reads an Mp3 file and writes wave data to a file -- this function takes quite a bit of time to execute. The other function actually takes this data and converts it to a view-able sound wave image. Both functions would benefit greatly from the extra processing power that a GPU provides: mp3 read/decode time would be greatly reduced.'''
+
<s>'''This is the program we selected to optimize. It's a great candidate because it has 2 primary functions that have a few for loops in them. One of the functions reads an Mp3 file and writes wave data to a file -- this function takes quite a bit of time to execute. The other function actually takes this data and converts it to a view-able sound wave image. Both functions would benefit greatly from the extra processing power that a GPU provides: mp3 read/decode time would be greatly reduced.'''</s> This piece of code is too complex and requires a linux environment to run. Please see Profile 0 for the one we are currently using.
  
 
* Sample Run
 
* Sample Run
Line 102: Line 104:
 
   0.00      7.29    0.00    7272    0.00    0.00  BstdRead
 
   0.00      7.29    0.00    7272    0.00    0.00  BstdRead
 
   0.00      7.29    0.00    7271    0.00    0.00  BstdFileEofP
 
   0.00      7.29    0.00    7271    0.00    0.00  BstdFileEofP
  0.00      7.29    0.00      176    0.00    0.00  __gnu_cxx::__normal_iterator<std::string const*, std::vector<std::string, std::allocator<std::string> > >::base() const
+
  .....
  0.00      7.29    0.00      144    0.00    0.00  std::string* std::__addressof<std::string>(std::string&)
 
  0.00      7.29    0.00      130    0.00    0.00  std::less<std::string>::operator()(std::string const&, std::string const&) const
 
  0.00      7.29    0.00      130    0.00    0.00  bool std::operator< <char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
 
  0.00      7.29    0.00      129    0.00    0.00  std::_Select1st<std::pair<std::string const, boost::program_options::variable_value> >::operator()(std::pair<std::string const, boost::program_options::variable_value> const&) const
 
  0.00      7.29    0.00      117    0.00    0.00  std::vector<short, std::allocator<short> >::size() const
 
  0.00      7.29    0.00      107    0.00    0.00  std::_Vector_base<std::string, std::allocator<std::string> >::_M_get_Tp_allocator()
 
  0.00      7.29    0.00      99    0.00    0.00  std::_Rb_tree<std::string, std::pair<std::string const, boost::program_options::variable_value>, std::_Select1st<std::pair<std::string const, boost::program_options::variable_value> >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::program_options::variable_value> > >::_S_key(std::_Rb_tree_node<std::pair<std::string const, boost::program_options::variable_value> > const*)
 
  0.00      7.29    0.00      99    0.00    0.00  std::_Rb_tree<std::string, std::pair<std::string const, boost::program_options::variable_value>, std::_Select1st<std::pair<std::string const, boost::program_options::variable_value> >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::program_options::variable_value> > >::_S_value(std::_Rb_tree_node<std::pair<std::string const, boost::program_options::variable_value> > const*)
 
  0.00      7.29    0.00      97    0.00    0.00  std::vector<std::string, std::allocator<std::string> >::size() const
 
  0.00      7.29    0.00      92    0.00    0.00  __gnu_cxx::__normal_iterator<std::string const*, std::vector<std::string, std::allocator<std::string> > >::__normal_iterator(std::string const* const&)
 
  0.00      7.29    0.00      91    0.00    0.00  __gnu_cxx::new_allocator<std::string>::~new_allocator()
 
  0.00      7.29    0.00      91    0.00    0.00  std::allocator<std::string>::~allocator()
 
  0.00      7.29    0.00      86    0.00    0.00  std::string&& std::forward<std::string>(std::remove_reference<std::string>::type&)
 
  0.00      7.29    0.00      86    0.00    0.00  void std::_Destroy<std::string>(std::string*)
 
  0.00      7.29    0.00      85    0.00    0.00  std::_Rb_tree_const_iterator<std::pair<std::string const, boost::program_options::variable_value> >::_Rb_tree_const_iterator(std::_Rb_tree_node<std::pair<std::string const, boost::program_options::variable_value> > const*)
 
  0.00      7.29    0.00      84    0.00    0.00  bool __gnu_cxx::operator!=<std::string const*, std::vector<std::string, std::allocator<std::string> > >(__gnu_cxx::__normal_iterator<std::string const*, std::vector<std::string, std::allocator<std::string> > > const&, __gnu_cxx::__normal_iterator<std::string const*, std::vector<std::string, std::allocator<std::string> > > const&)
 
  0.00      7.29    0.00      80    0.00    0.00  __gnu_cxx::new_allocator<std::string>::new_allocator(__gnu_cxx::new_allocator<std::string> const&)
 
  0.00      7.29    0.00      80    0.00    0.00  std::allocator<std::string>::allocator(std::allocator<std::string> const&)
 
  0.00      7.29    0.00      69    0.00    0.00  __gnu_cxx::new_allocator<short>::max_size() const
 
  0.00      7.29    0.00      69    0.00    0.00  std::_Iter_base<short*, false>::_S_base(short*)
 
  0.00      7.29    0.00      69    0.00    0.00  std::_Niter_base<short*>::iterator_type std::__niter_base<short*>(short*)
 
  0.00      7.29    0.00      65    0.00    0.00  boost::detail::atomic_exchange_and_add(int*, int)
 
  0.00      7.29    0.00      61    0.00    0.00  std::_Rb_tree<std::string, std::pair<std::string const, boost::program_options::variable_value>, std::_Select1st<std::pair<std::string const, boost::program_options::variable_value> >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::program_options::variable_value> > >::_S_left(std::_Rb_tree_node_base const*)
 
  0.00      7.29    0.00      60    0.00    0.00  boost::any::~any()
 
  0.00      7.29    0.00      59    0.00    0.00  void std::_Destroy_aux<false>::__destroy<std::string*>(std::string*, std::string*)
 
  0.00      7.29    0.00      59    0.00    0.00  std::_Vector_base<std::string, std::allocator<std::string> >::_M_deallocate(std::string*, unsigned long)
 
  0.00      7.29    0.00      59    0.00    0.00  void std::_Destroy<std::string*>(std::string*, std::string*)
 
  0.00      7.29    0.00      59    0.00    0.00  void std::_Destroy<std::string*, std::string>(std::string*, std::string*, std::allocator<std::string>&)
 
  0.00      7.29    0.00      56    0.00    0.00  __gnu_cxx::new_allocator<std::string>::max_size() const
 
  0.00      7.29    0.00      56    0.00    0.00  std::_Vector_base<std::string, std::allocator<std::string> >::_M_get_Tp_allocator() const
 
  0.00      7.29    0.00      55    0.00    0.00  std::_Rb_tree<std::string, std::pair<std::string const, boost::program_options::variable_value>, std::_Select1st<std::pair<std::string const, boost::program_options::variable_value> >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::program_options::variable_value> > >::end() const
 
  0.00      7.29    0.00      54    0.00    0.00  std::remove_reference<boost::any::placeholder*&>::type&& std::move<boost::any::placeholder*&>(boost::any::placeholder*&)
 
  0.00      7.29    0.00      51    0.00    0.00  std::_Vector_base<std::string, std::allocator<std::string> >::_Vector_impl::~_Vector_impl()
 
  0.00      7.29    0.00      51    0.00    0.00  std::_Vector_base<std::string, std::allocator<std::string> >::~_Vector_base()
 
  0.00      7.29    0.00      51    0.00    0.00  std::vector<std::string, std::allocator<std::string> >::~vector()
 
  0.00      7.29    0.00      49    0.00    0.00  __gnu_cxx::new_allocator<std::string>::deallocate(std::string*, unsigned long)
 
  0.00      7.29    0.00      48    0.00    0.00  __gnu_cxx::__normal_iterator<std::string const*, std::vector<std::string, std::allocator<std::string> > >::operator*() const
 
  0.00      7.29    0.00      48    0.00    0.00  std::vector<std::string, std::allocator<std::string> >::begin() const
 
  0.00      7.29    0.00      48    0.00    0.00  std::_Vector_base<std::string, std::allocator<std::string> >::_M_allocate(unsigned long)
 
  0.00      7.29    0.00      47    0.00    0.00  std::_Vector_base<short, std::allocator<short> >::_M_get_Tp_allocator()
 
  0.00      7.29    0.00      46    0.00    0.00  std::_Vector_base<short, std::allocator<short> >::_M_get_Tp_allocator() const
 
  0.00      7.29    0.00      46    0.00    0.00  std::move_iterator<short*>::base() const
 
  0.00      7.29    0.00      46    0.00    0.00  std::vector<short, std::allocator<short> >::max_size() const
 
  0.00      7.29    0.00      46    0.00    0.00  std::_Iter_base<std::move_iterator<short*>, true>::_S_base(std::move_iterator<short*>)
 
  0.00      7.29    0.00      46    0.00    0.00  std::move_iterator<short*>::move_iterator(short*)
 
  0.00      7.29    0.00      46    0.00    0.00  std::enable_if<std::allocator_traits<std::allocator<short> >::__maxsize_helper<std::allocator<short> const>::value, unsigned long>::type std::allocator_traits<std::allocator<short> >::_S_max_size<std::allocator<short> const>(std::allocator<short> const&)
 
  0.00      7.29    0.00      46    0.00    0.00  std::allocator_traits<std::allocator<short> >::max_size(std::allocator<short> const&)
 
  0.00      7.29    0.00      46    0.00    0.00  std::_Miter_base<std::move_iterator<short*> >::iterator_type std::__miter_base<std::move_iterator<short*> >(std::move_iterator<short*>)
 
  0.00      7.29    0.00      46    0.00    0.00  std::move_iterator<short*> std::__make_move_if_noexcept_iterator<short*, std::move_iterator<short*> >(short*)
 
  0.00      7.29    0.00      44    0.00    0.00  __gnu_cxx::__normal_iterator<std::string const*, std::vector<std::string, std::allocator<std::string> > >::operator++()
 
  0.00      7.29    0.00      44    0.00    0.00  std::move_iterator<std::string*>::base() const
 
  0.00      7.29    0.00      44    0.00    0.00  std::vector<std::string, std::allocator<std::string> >::end() const
 
  0.00      7.29    0.00      44    0.00    0.00  void std::_Construct<std::string, std::string const&>(std::string*, std::string const&)
 
  0.00      7.29    0.00      44    0.00    0.00  std::string const& std::forward<std::string const&>(std::remove_reference<std::string const&>::type&)
 
  0.00      7.29    0.00      40    0.00    0.00  __gnu_cxx::new_allocator<std::string>::allocate(unsigned long, void const*)
 
  0.00      7.29    0.00      40    0.00    0.00  __gnu_cxx::__alloc_traits<std::allocator<std::string> >::_S_select_on_copy(std::allocator<std::string> const&)
 
  0.00      7.29    0.00      40    0.00    0.00  std::_Vector_base<std::string, std::allocator<std::string> >::_Vector_impl::_Vector_impl(std::allocator<std::string> const&)
 
  0.00      7.29    0.00      40    0.00    0.00  std::_Vector_base<std::string, std::allocator<std::string> >::_M_create_storage(unsigned long)
 
  0.00      7.29    0.00      40    0.00    0.00  std::_Vector_base<std::string, std::allocator<std::string> >::_Vector_base(unsigned long, std::allocator<std::string> const&)
 
  0.00      7.29    0.00      40    0.00    0.00  std::allocator_traits<std::allocator<std::string> >::select_on_container_copy_construction(std::allocator<std::string> const&)
 
  0.00      7.29    0.00      40    0.00    0.00  std::enable_if<!std::allocator_traits<std::allocator<std::string> >::__select_helper<std::allocator<std::string> const>::value, std::allocator<std::string> const>::type std::allocator_traits<std::allocator<std::string> >::_S_select<std::allocator<std::string> const>(std::allocator<std::string> const&)
 
  0.00      7.29    0.00      40    0.00    0.00  std::string* std::__uninitialized_copy<false>::__uninit_copy<__gnu_cxx::__normal_iterator<std::string const*, std::vector<std::string, std::allocator<std::string> > >, std::string*>(__gnu_cxx::__normal_iterator<std::string const*, std::vector<std::string, std::allocator<std::string> > >, __gnu_cxx::__normal_iterator<std::string const*, std::vector<std::string, std::allocator<std::string> > >, std::string*)
 
  0.00      7.29    0.00      40    0.00    0.00  std::vector<std::string, std::allocator<std::string> >::vector(std::vector<std::string, std::allocator<std::string> > const&)
 
  0.00      7.29    0.00      40    0.00    0.00  std::string* std::uninitialized_copy<__gnu_cxx::__normal_iterator<std::string const*, std::vector<std::string, std::allocator<std::string> > >, std::string*>(__gnu_cxx::__normal_iterator<std::string const*, std::vector<std::string, std::allocator<std::string> > >, __gnu_cxx::__normal_iterator<std::string const*, std::vector<std::string, std::allocator<std::string> > >, std::string*)
 
  0.00      7.29    0.00      40    0.00    0.00  std::string* std::__uninitialized_copy_a<__gnu_cxx::__normal_iterator<std::string const*, std::vector<std::string, std::allocator<std::string> > >, std::string*, std::string>(__gnu_cxx::__normal_iterator<std::string const*, std::vector<std::string, std::allocator<std::string> > >, __gnu_cxx::__normal_iterator<std::string const*, std::vector<std::string, std::allocator<std::string> > >, std::string*, std::allocator<std::string>&)
 
  0.00      7.29    0.00      38    0.00    0.00  std::_Rb_tree<std::string, std::pair<std::string const, boost::program_options::variable_value>, std::_Select1st<std::pair<std::string const, boost::program_options::variable_value> >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::program_options::variable_value> > >::_S_right(std::_Rb_tree_node_base const*)
 
  0.00      7.29    0.00      36    0.00    0.00  std::_Vector_base<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::_M_get_Tp_allocator()
 
  0.00      7.29    0.00      35    0.00    0.00  __gnu_cxx::new_allocator<boost::program_options::basic_option<char> >::~new_allocator()
 
  0.00      7.29    0.00      35    0.00    0.00  std::allocator<boost::program_options::basic_option<char> >::~allocator()
 
  0.00      7.29    0.00      34    0.00    0.00  boost::any::placeholder::~placeholder()
 
  0.00      7.29    0.00      33    0.00    0.00  std::_Rb_tree_const_iterator<std::pair<std::string const, boost::program_options::variable_value> >::operator==(std::_Rb_tree_const_iterator<std::pair<std::string const, boost::program_options::variable_value> > const&) const
 
  0.00      7.29    0.00      33    0.00    0.00  void std::_Destroy_aux<false>::__destroy<boost::program_options::basic_option<char>*>(boost::program_options::basic_option<char>*, boost::program_options::basic_option<char>*)
 
  0.00      7.29    0.00      33    0.00    0.00  std::_Vector_base<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::_Vector_impl::~_Vector_impl()
 
  0.00      7.29    0.00      33    0.00    0.00  std::_Vector_base<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::_M_deallocate(boost::program_options::basic_option<char>*, unsigned long)
 
  0.00      7.29    0.00      33    0.00    0.00  std::_Vector_base<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::~_Vector_base()
 
  0.00      7.29    0.00      33    0.00    0.00  void std::_Destroy<boost::program_options::basic_option<char>*>(boost::program_options::basic_option<char>*, boost::program_options::basic_option<char>*)
 
  0.00      7.29    0.00      33    0.00    0.00  void std::_Destroy<boost::program_options::basic_option<char>*, boost::program_options::basic_option<char> >(boost::program_options::basic_option<char>*, boost::program_options::basic_option<char>*, std::allocator<boost::program_options::basic_option<char> >&)
 
  0.00      7.29    0.00      32    0.00    0.00  boost::any::placeholder::placeholder()
 
  0.00      7.29    0.00      31    0.00    0.00  boost::detail::shared_count::~shared_count()
 
  0.00      7.29    0.00      31    0.00    0.00  unsigned long const& std::max<unsigned long>(unsigned long const&, unsigned long const&)
 
  0.00      7.29    0.00      30    0.00    0.00  boost::any::any()
 
  0.00      7.29    0.00      30    0.00    0.00  boost::detail::sp_counted_base::release()
 
  0.00      7.29    0.00      30    0.00    0.00  std::_Rb_tree<std::string, std::pair<std::string const, boost::program_options::variable_value>, std::_Select1st<std::pair<std::string const, boost::program_options::variable_value> >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::program_options::variable_value> > >::_M_lower_bound(std::_Rb_tree_node<std::pair<std::string const, boost::program_options::variable_value> > const*, std::_Rb_tree_node<std::pair<std::string const, boost::program_options::variable_value> > const*, std::string const&) const
 
  0.00      7.29    0.00      30    0.00    0.00  std::_Rb_tree<std::string, std::pair<std::string const, boost::program_options::variable_value>, std::_Select1st<std::pair<std::string const, boost::program_options::variable_value> >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::program_options::variable_value> > >::_M_end() const
 
  0.00      7.29    0.00      30    0.00    0.00  std::_Rb_tree<std::string, std::pair<std::string const, boost::program_options::variable_value>, std::_Select1st<std::pair<std::string const, boost::program_options::variable_value> >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::program_options::variable_value> > >::_M_begin() const
 
  0.00      7.29    0.00      30    0.00    0.00  std::_Rb_tree<std::string, std::pair<std::string const, boost::program_options::variable_value>, std::_Select1st<std::pair<std::string const, boost::program_options::variable_value> >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::program_options::variable_value> > >::_S_key(std::_Rb_tree_node_base const*)
 
  0.00      7.29    0.00      30    0.00    0.00  std::_Rb_tree<std::string, std::pair<std::string const, boost::program_options::variable_value>, std::_Select1st<std::pair<std::string const, boost::program_options::variable_value> >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::program_options::variable_value> > >::_S_value(std::_Rb_tree_node_base const*)
 
  0.00      7.29    0.00      30    0.00    0.00  std::remove_reference<std::string&>::type&& std::move<std::string&>(std::string&)
 
  0.00      7.29    0.00      24    0.00    0.00  void std::_Destroy_aux<true>::__destroy<short*>(short*, short*)
 
  0.00      7.29    0.00      24    0.00    0.00  std::_Vector_base<short, std::allocator<short> >::_M_deallocate(short*, unsigned long)
 
  0.00      7.29    0.00      24    0.00    0.00  boost::program_options::basic_option<char>* std::__addressof<boost::program_options::basic_option<char> >(boost::program_options::basic_option<char>&)
 
  0.00      7.29    0.00      24    0.00    0.00  void std::_Destroy<short*>(short*, short*)
 
  0.00      7.29    0.00      24    0.00    0.00  void std::_Destroy<short*, short>(short*, short*, std::allocator<short>&)
 
  0.00      7.29    0.00      23    0.00    0.00  __gnu_cxx::new_allocator<short>::deallocate(short*, unsigned long)
 
  0.00      7.29    0.00      23    0.00    0.00  __gnu_cxx::new_allocator<short>::allocate(unsigned long, void const*)
 
  0.00      7.29    0.00      23    0.00    0.00  boost::any::empty() const
 
  0.00      7.29    0.00      23    0.00    0.00  std::vector<short, std::allocator<short> >::_M_check_len(unsigned long, char const*) const
 
  0.00      7.29    0.00      23    0.00    0.00  short* std::__copy_move<true, true, std::random_access_iterator_tag>::__copy_m<short>(short const*, short const*, short*)
 
  0.00      7.29    0.00      23    0.00    0.00  std::_Vector_base<short, std::allocator<short> >::_M_allocate(unsigned long)
 
  0.00      7.29    0.00      23    0.00    0.00  short* std::__uninitialized_copy<true>::__uninit_copy<std::move_iterator<short*>, short*>(std::move_iterator<short*>, std::move_iterator<short*>, short*)
 
  0.00      7.29    0.00      23    0.00    0.00  void std::vector<short, std::allocator<short> >::_M_emplace_back_aux<short const&>(short const&)
 
  0.00      7.29    0.00      23    0.00    0.00  short* std::__copy_move_a<true, short*, short*>(short*, short*, short*)
 
  0.00      7.29    0.00      23    0.00    0.00  short* std::__copy_move_a2<true, short*, short*>(short*, short*, short*)
 
  0.00      7.29    0.00      23    0.00    0.00  short* std::uninitialized_copy<std::move_iterator<short*>, short*>(std::move_iterator<short*>, std::move_iterator<short*>, short*)
 
  0.00      7.29    0.00      23    0.00    0.00  short* std::__uninitialized_copy_a<std::move_iterator<short*>, short*, short>(std::move_iterator<short*>, std::move_iterator<short*>, short*, std::allocator<short>&)
 
  0.00      7.29    0.00      23    0.00    0.00  short* std::__uninitialized_move_if_noexcept_a<short*, short*, std::allocator<short> >(short*, short*, short*, std::allocator<short>&)
 
  0.00      7.29    0.00      23    0.00    0.00  short* std::copy<std::move_iterator<short*>, short*>(std::move_iterator<short*>, std::move_iterator<short*>, short*)
 
  0.00      7.29    0.00      22    0.00    0.00  std::type_info::name() const
 
  0.00      7.29    0.00      22    0.00    0.00  bool std::operator==<std::string*>(std::move_iterator<std::string*> const&, std::move_iterator<std::string*> const&)
 
  0.00      7.29    0.00      22    0.00    0.00  bool std::operator!=<std::string*>(std::move_iterator<std::string*> const&, std::move_iterator<std::string*> const&)
 
  0.00      7.29    0.00      20    0.00    0.00  boost::program_options::basic_option<char>::~basic_option()
 
  0.00      7.29    0.00      20    0.00    0.00  boost::any::holder<int>::holder(int const&)
 
  0.00      7.29    0.00      20    0.00    0.00  boost::any::holder<int>::~holder()
 
  0.00      7.29    0.00      20    0.00    0.00  void std::_Destroy<boost::program_options::basic_option<char> >(boost::program_options::basic_option<char>*)
 
  0.00      7.29    0.00      19    0.00    0.00  boost::shared_ptr<boost::program_options::option_description>::~shared_ptr()
 
  0.00      7.29    0.00      19    0.00    0.00  boost::detail::sp_counted_base::weak_release()
 
  0.00      7.29    0.00      19    0.00    0.00  boost::detail::sp_counted_base::destroy()
 
  0.00      7.29    0.00      19    0.00    0.00  boost::shared_ptr<boost::program_options::option_description>* std::__addressof<boost::shared_ptr<boost::program_options::option_description> >(boost::shared_ptr<boost::program_options::option_description>&)
 
  0.00      7.29    0.00      19    0.00    0.00  void std::_Destroy<boost::shared_ptr<boost::program_options::option_description> >(boost::shared_ptr<boost::program_options::option_description>*)
 
  0.00      7.29    0.00      18    0.00    0.00  boost::any::swap(boost::any&)
 
  0.00      7.29    0.00      18    0.00    0.00  boost::any::operator=(boost::any)
 
  0.00      7.29    0.00      18    0.00    0.00  std::remove_reference<boost::program_options::basic_option<char>*&>::type&& std::move<boost::program_options::basic_option<char>*&>(boost::program_options::basic_option<char>*&)
 
  0.00      7.29    0.00      18    0.00    0.00  void std::swap<boost::any::placeholder*>(boost::any::placeholder*&, boost::any::placeholder*&)
 
  0.00      7.29    0.00      16    0.00    0.00  _ZN9__gnu_cxx13new_allocatorISsE9constructISsISsEEEvPT_DpOT0_
 
  0.00      7.29    0.00      16    0.00    0.00  std::vector<std::string, std::allocator<std::string> >::max_size() const
 
  0.00      7.29    0.00      16    0.00    0.00  std::char_traits<char>::assign(char&, char const&)
 
  0.00      7.29    0.00      16    0.00    0.00  std::move_iterator<std::string*>::move_iterator(std::string*)
 
  0.00      7.29    0.00      16    0.00    0.00  std::enable_if<std::allocator_traits<std::allocator<std::string> >::__maxsize_helper<std::allocator<std::string> const>::value, unsigned long>::type std::allocator_traits<std::allocator<std::string> >::_S_max_size<std::allocator<std::string> const>(std::allocator<std::string> const&)
 
  0.00      7.29    0.00      16    0.00    0.00  std::enable_if<std::allocator_traits<std::allocator<std::string> >::__construct_helper<std::string, std::string>::value, void>::type std::allocator_traits<std::allocator<std::string> >::_S_construct<std::string, std::string>(std::allocator<std::string>&, std::string*, std::string&&)
 
  0.00      7.29    0.00      16    0.00    0.00  std::allocator_traits<std::allocator<std::string> >::max_size(std::allocator<std::string> const&)
 
  0.00      7.29    0.00      16    0.00    0.00  _ZNSt16allocator_traitsISaISsEE9constructISsISsEEEDTcl12_S_constructfp_fp0_spcl7forwardIT0_Efp1_EEERS0_PT_DpOS3_
 
  0.00      7.29    0.00      16    0.00    0.00  void std::vector<std::string, std::allocator<std::string> >::emplace_back<std::string>(std::string&&)
 
  0.00      7.29    0.00      16    0.00    0.00  std::vector<std::string, std::allocator<std::string> >::push_back(std::string&&)
 
  0.00      7.29    0.00      16    0.00    0.00  std::move_iterator<std::string*> std::__make_move_if_noexcept_iterator<std::string*, std::move_iterator<std::string*> >(std::string*)
 
  0.00      7.29    0.00      15    0.00    0.00  boost::filesystem::path::~path()
 
  0.00      7.29    0.00      15    0.00    0.00  boost::function_base::function_base()
 
  0.00      7.29    0.00      15    0.00    0.00  boost::program_options::value_semantic::value_semantic()
 
  0.00      7.29    0.00      15    0.00    0.00  boost::program_options::value_semantic::~value_semantic()
 
  0.00      7.29    0.00      15    0.00    0.00  boost::program_options::typed_value_base::typed_value_base()
 
  0.00      7.29    0.00      15    0.00    0.00  boost::program_options::typed_value_base::~typed_value_base()
 
  0.00      7.29    0.00      15    0.00    0.00  boost::program_options::value_semantic_codecvt_helper<char>::value_semantic_codecvt_helper()
 
  0.00      7.29    0.00      15    0.00    0.00  boost::program_options::value_semantic_codecvt_helper<char>::~value_semantic_codecvt_helper()
 
  0.00      7.29    0.00      15    0.00    0.00  std::char_traits<char>::to_char_type(int const&)
 
  0.00      7.29    0.00      14    0.00    0.00  std::move_iterator<std::string*>::operator*() const
 
  0.00      7.29    0.00      14    0.00    0.00  std::move_iterator<std::string*>::operator++()
 
  0.00      7.29    0.00      14    0.00    0.00  void std::_Construct<std::string, std::string>(std::string*, std::string&&)
 
  0.00      7.29    0.00      12    0.00    0.00  boost::shared_ptr<boost::program_options::value_semantic const>::~shared_ptr()
 
  0.00      7.29    0.00      12    0.00    0.00  boost::any::holder<int>::~holder()
 
  0.00      7.29    0.00      11    0.00    0.00  boost::program_options::variable_value::~variable_value()
 
  0.00      7.29    0.00      11    0.00    0.00  __gnu_cxx::new_allocator<boost::program_options::basic_option<char> >::deallocate(boost::program_options::basic_option<char>*, unsigned long)
 
  0.00      7.29    0.00      11    0.00    0.00  __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::string const, boost::program_options::variable_value> > >::deallocate(std::_Rb_tree_node<std::pair<std::string const, boost::program_options::variable_value> >*, unsigned long)
 
  0.00      7.29    0.00      11    0.00    0.00  void __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::string const, boost::program_options::variable_value> > >::destroy<std::_Rb_tree_node<std::pair<std::string const, boost::program_options::variable_value> > >(std::_Rb_tree_node<std::pair<std::string const, boost::program_options::variable_value> >*)
 
  0.00      7.29    0.00      11    0.00    0.00  boost::function_base::empty() const
 
  0.00      7.29    0.00      11    0.00    0.00  boost::any::type() const
 
  0.00      7.29    0.00      11    0.00    0.00  std::_Rb_tree_node<std::pair<std::string const, boost::program_options::variable_value> >::~_Rb_tree_node()
 
  0.00      7.29    0.00      11    0.00    0.00  std::pair<std::string const, boost::program_options::variable_value>::~pair()
 
  0.00      7.29    0.00      11    0.00    0.00  std::_Rb_tree<std::string, std::pair<std::string const, boost::program_options::variable_value>, std::_Select1st<std::pair<std::string const, boost::program_options::variable_value> >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::program_options::variable_value> > >::_M_put_node(std::_Rb_tree_node<std::pair<std::string const, boost::program_options::variable_value> >*)
 
  0.00      7.29    0.00      11    0.00    0.00  std::_Rb_tree<std::string, std::pair<std::string const, boost::program_options::variable_value>, std::_Select1st<std::pair<std::string const, boost::program_options::variable_value> >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::program_options::variable_value> > >::_M_destroy_node(std::_Rb_tree_node<std::pair<std::string const, boost::program_options::variable_value> >*)
 
  0.00      7.29    0.00      11    0.00    0.00  std::_Rb_tree<std::string, std::pair<std::string const, boost::program_options::variable_value>, std::_Select1st<std::pair<std::string const, boost::program_options::variable_value> >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::program_options::variable_value> > >::_M_get_Node_allocator()
 
  0.00      7.29    0.00      11    0.00    0.00  std::_Rb_tree<std::string, std::pair<std::string const, boost::program_options::variable_value>, std::_Select1st<std::pair<std::string const, boost::program_options::variable_value> >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::program_options::variable_value> > >::_S_left(std::_Rb_tree_node_base*)
 
  0.00      7.29    0.00      11    0.00    0.00  std::_Rb_tree<std::string, std::pair<std::string const, boost::program_options::variable_value>, std::_Select1st<std::pair<std::string const, boost::program_options::variable_value> >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::program_options::variable_value> > >::_S_right(std::_Rb_tree_node_base*)
 
  0.00      7.29    0.00      10    0.00    0.00  boost::detail::lexical_stream_limited_src<char, std::char_traits<char>, false>::lexical_stream_limited_src(char*, char*)
 
  0.00      7.29    0.00      10    0.00    0.00  __gnu_cxx::__normal_iterator<boost::program_options::basic_option<char> const*, std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > > >::base() const
 
  0.00      7.29    0.00        9    0.00    0.00  boost::filesystem::path::path(char const*)
 
  0.00      7.29    0.00        9    0.00    0.00  boost::filesystem::operator==(boost::filesystem::path const&, char const*)
 
  0.00      7.29    0.00        9    0.00    0.00  boost::filesystem::path::compare(char const*) const
 
  0.00      7.29    0.00        8    0.00    0.00  RGBA::RGBA(int, int, int, int)
 
  0.00      7.29    0.00        8    0.00    0.00  boost::any::holder<double>::holder(double const&)
 
  0.00      7.29    0.00        8    0.00    0.00  boost::any::holder<double>::~holder()
 
  0.00      7.29    0.00        8    0.00    0.00  boost::any::any<int>(int const&)
 
  0.00      7.29    0.00        8    0.00    0.00  bool boost::detail::lexical_stream_limited_src<char, std::char_traits<char>, false>::operator>><std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&)
 
  0.00      7.29    0.00        8    0.00    0.00  __gnu_cxx::new_allocator<std::_Rb_tree_node<std::string> >::deallocate(std::_Rb_tree_node<std::string>*, unsigned long)
 
  0.00      7.29    0.00        8    0.00    0.00  void __gnu_cxx::new_allocator<std::_Rb_tree_node<std::string> >::destroy<std::_Rb_tree_node<std::string> >(std::_Rb_tree_node<std::string>*)
 
  0.00      7.29    0.00        8    0.00    0.00  boost::program_options::variables_map::operator[](std::string const&) const
 
  0.00      7.29    0.00        8    0.00    0.00  std::locale::operator!=(std::locale const&) const
 
  0.00      7.29    0.00        8    0.00    0.00  std::vector<std::string, std::allocator<std::string> >::_M_check_len(unsigned long, char const*) const
 
  0.00      7.29    0.00        8    0.00    0.00  std::vector<std::string, std::allocator<std::string> >::operator[](unsigned long) const
 
  0.00      7.29    0.00        8    0.00    0.00  std::string& std::string::assign<char*>(char*, char*)
 
  0.00      7.29    0.00        8    0.00    0.00  std::_Rb_tree_node<std::string>::~_Rb_tree_node()
 
  0.00      7.29    0.00        8    0.00    0.00  std::string* std::__uninitialized_copy<false>::__uninit_copy<std::move_iterator<std::string*>, std::string*>(std::move_iterator<std::string*>, std::move_iterator<std::string*>, std::string*)
 
  0.00      7.29    0.00        8    0.00    0.00  void std::vector<std::string, std::allocator<std::string> >::_M_emplace_back_aux<std::string>(std::string&&)
 
  0.00      7.29    0.00        8    0.00    0.00  std::_Rb_tree<std::string, std::string, std::_Identity<std::string>, std::less<std::string>, std::allocator<std::string> >::_M_put_node(std::_Rb_tree_node<std::string>*)
 
  0.00      7.29    0.00        8    0.00    0.00  std::_Rb_tree<std::string, std::string, std::_Identity<std::string>, std::less<std::string>, std::allocator<std::string> >::_M_destroy_node(std::_Rb_tree_node<std::string>*)
 
  0.00      7.29    0.00        8    0.00    0.00  std::_Rb_tree<std::string, std::string, std::_Identity<std::string>, std::less<std::string>, std::allocator<std::string> >::_M_get_Node_allocator()
 
  0.00      7.29    0.00        8    0.00    0.00  std::_Rb_tree<std::string, std::string, std::_Identity<std::string>, std::less<std::string>, std::allocator<std::string> >::_S_left(std::_Rb_tree_node_base*)
 
  0.00      7.29    0.00        8    0.00    0.00  std::_Rb_tree<std::string, std::string, std::_Identity<std::string>, std::less<std::string>, std::allocator<std::string> >::_S_right(std::_Rb_tree_node_base*)
 
  0.00      7.29    0.00        8    0.00    0.00  std::string* std::uninitialized_copy<std::move_iterator<std::string*>, std::string*>(std::move_iterator<std::string*>, std::move_iterator<std::string*>, std::string*)
 
  0.00      7.29    0.00        8    0.00    0.00  std::string* std::__uninitialized_copy_a<std::move_iterator<std::string*>, std::string*, std::string>(std::move_iterator<std::string*>, std::move_iterator<std::string*>, std::string*, std::allocator<std::string>&)
 
  0.00      7.29    0.00        8    0.00    0.00  std::string* std::__uninitialized_move_if_noexcept_a<std::string*, std::string*, std::allocator<std::string> >(std::string*, std::string*, std::string*, std::allocator<std::string>&)
 
  0.00      7.29    0.00        7    0.00    0.00  boost::any::any(boost::any const&)
 
  0.00      7.29    0.00        6    0.00    0.00  std::string boost::lexical_cast<std::string, int>(int const&)
 
  0.00      7.29    0.00        6    0.00    0.00  boost::program_options::typed_value<int, char>::default_value(int const&)
 
  0.00      7.29    0.00        6    0.00    0.00  boost::program_options::typed_value<int, char>::typed_value(int*)
 
  0.00      7.29    0.00        6    0.00    0.00  boost::program_options::typed_value<int, char>::~typed_value()
 
  0.00      7.29    0.00        6    0.00    0.00  boost::program_options::typed_value<int, char>* boost::program_options::value<int>(int*)
 
  0.00      7.29    0.00        6    0.00    0.00  boost::any::holder<std::string>::~holder()
 
  0.00      7.29    0.00        6    0.00    0.00  boost::detail::lcast_src_length<int>::check_coverage()
 
  0.00      7.29    0.00        6    0.00    0.00  boost::make_unsigned<int>::type boost::detail::lcast_to_unsigned<int>(int)
 
  0.00      7.29    0.00        6    0.00    0.00  char* boost::detail::lcast_put_unsigned<std::char_traits<char>, unsigned int, char>(unsigned int, char*)
 
  0.00      7.29    0.00        6    0.00    0.00  boost::detail::lexical_cast_do_cast<std::string, int>::lexical_cast_impl(int const&)
 
  0.00      7.29    0.00        6    0.00    0.00  bool boost::detail::lexical_stream_limited_src<char, std::char_traits<char>, false>::shl_signed<int>(int)
 
  0.00      7.29    0.00        6    0.00    0.00  boost::detail::lexical_stream_limited_src<char, std::char_traits<char>, false>::operator<<(int)
 
  0.00      7.29    0.00        6    0.00    0.00  int const* boost::any_cast<int>(boost::any const*)
 
  0.00      7.29    0.00        6    0.00    0.00  int* boost::any_cast<int>(boost::any*)
 
  0.00      7.29    0.00        6    0.00    0.00  boost::function1<void, int const&>::clear()
 
  0.00      7.29    0.00        6    0.00    0.00  boost::function1<void, int const&>::function1()
 
  0.00      7.29    0.00        6    0.00    0.00  boost::function1<void, int const&>::~function1()
 
  0.00      7.29    0.00        6    0.00    0.00  boost::any::holder<int>::type() const
 
  0.00      7.29    0.00        6    0.00    0.00  boost::function1<void, int const&>::operator void (boost::function1<void, int const&>::dummy::*)()() const
 
  0.00      7.29    0.00        6    0.00    0.00  std::unary_function<int const&, void>::unary_function()
 
  0.00      7.29    0.00        6    0.00    0.00  void std::swap<boost::program_options::basic_option<char>*>(boost::program_options::basic_option<char>*&, boost::program_options::basic_option<char>*&)
 
  0.00      7.29    0.00        5    0.00    0.00  bool __gnu_cxx::operator!=<boost::program_options::basic_option<char> const*, std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > > >(__gnu_cxx::__normal_iterator<boost::program_options::basic_option<char> const*, std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > > > const&, __gnu_cxx::__normal_iterator<boost::program_options::basic_option<char> const*, std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > > > const&)
 
  0.00      7.29    0.00        4    0.00    0.00  hasOptionValue(boost::program_options::variables_map const&, char const*)
 
  0.00      7.29    0.00        4    0.00    0.00  RGBA::RGBA()
 
  0.00      7.29    0.00        4    0.00    0.00  boost::program_options::typed_value<RGBA, char>::typed_value(RGBA*)
 
  0.00      7.29    0.00        4    0.00    0.00  boost::program_options::typed_value<RGBA, char>::~typed_value()
 
  0.00      7.29    0.00        4    0.00    0.00  boost::program_options::basic_option<char>::basic_option(boost::program_options::basic_option<char> const&)
 
  0.00      7.29    0.00        4    0.00    0.00  boost::program_options::typed_value<RGBA, char>* boost::program_options::value<RGBA>(RGBA*)
 
  0.00      7.29    0.00        4    0.00    0.00  boost::any::holder<std::string>::holder(std::string const&)
 
  0.00      7.29    0.00        4    0.00    0.00  boost::any::holder<std::string>::~holder()
 
  0.00      7.29    0.00        4    0.00    0.00  boost::any::holder<double>::~holder()
 
  0.00      7.29    0.00        4    0.00    0.00  boost::function1<void, RGBA const&>::clear()
 
  0.00      7.29    0.00        4    0.00    0.00  boost::function1<void, RGBA const&>::function1()
 
  0.00      7.29    0.00        4    0.00    0.00  boost::function1<void, RGBA const&>::~function1()
 
  0.00      7.29    0.00        4    0.00    0.00  __gnu_cxx::new_allocator<boost::program_options::basic_option<char> >::new_allocator(__gnu_cxx::new_allocator<boost::program_options::basic_option<char> > const&)
 
  0.00      7.29    0.00        4    0.00    0.00  __gnu_cxx::__normal_iterator<boost::program_options::basic_option<char> const*, std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > > >::operator++()
 
  0.00      7.29    0.00        4    0.00    0.00  bool __gnu_cxx::operator==<std::string const*, std::vector<std::string, std::allocator<std::string> > >(__gnu_cxx::__normal_iterator<std::string const*, std::vector<std::string, std::allocator<std::string> > > const&, __gnu_cxx::__normal_iterator<std::string const*, std::vector<std::string, std::allocator<std::string> > > const&)
 
  0.00      7.29    0.00        4    0.00    0.00  boost::program_options::variable_value::empty() const
 
  0.00      7.29    0.00        4    0.00    0.00  boost::program_options::variable_value::defaulted() const
 
  0.00      7.29    0.00        4    0.00    0.00  boost::any::holder<int>::clone() const
 
  0.00      7.29    0.00        4    0.00    0.00  __gnu_cxx::__normal_iterator<boost::program_options::basic_option<char> const*, std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > > >::operator*() const
 
  0.00      7.29    0.00        4    0.00    0.00  std::vector<std::string, std::allocator<std::string> >::empty() const
 
  0.00      7.29    0.00        4    0.00    0.00  std::vector<std::string, std::allocator<std::string> >::front() const
 
  0.00      7.29    0.00        4    0.00    0.00  std::allocator<boost::program_options::basic_option<char> >::allocator(std::allocator<boost::program_options::basic_option<char> > const&)
 
  0.00      7.29    0.00        4    0.00    0.00  std::char_traits<char>::eq(char const&, char const&)
 
  0.00      7.29    0.00        4    0.00    0.00  std::unary_function<RGBA const&, void>::unary_function()
 
  0.00      7.29    0.00        4    0.00    0.00  std::_Rb_tree_iterator<std::pair<std::string const, std::string> >::_Rb_tree_iterator(std::_Rb_tree_node<std::pair<std::string const, std::string> >*)
 
  0.00      7.29    0.00        4    0.00    0.00  std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::~vector()
 
  0.00      7.29    0.00        4    0.00    0.00  void std::_Construct<boost::program_options::basic_option<char>, boost::program_options::basic_option<char> const&>(boost::program_options::basic_option<char>*, boost::program_options::basic_option<char> const&)
 
  0.00      7.29    0.00        4    0.00    0.00  boost::program_options::basic_option<char> const& std::forward<boost::program_options::basic_option<char> const&>(std::remove_reference<boost::program_options::basic_option<char> const&>::type&)
 
  0.00      7.29    0.00        3    0.00    0.00  writeInt32(std::ostream&, int)
 
  0.00      7.29    0.00        3    0.00    0.00  boost::program_options::typed_value<std::string, char>::typed_value(std::string*)
 
  0.00      7.29    0.00        3    0.00    0.00  boost::program_options::typed_value<std::string, char>::~typed_value()
 
  0.00      7.29    0.00        3    0.00    0.00  boost::program_options::typed_value<std::string, char>* boost::program_options::value<std::string>(std::string*)
 
  0.00      7.29    0.00        3    0.00    0.00  std::string const* boost::any_cast<std::string>(boost::any const*)
 
  0.00      7.29    0.00        3    0.00    0.00  std::string* boost::any_cast<std::string>(boost::any*)
 
  0.00      7.29    0.00        3    0.00    0.00  boost::function1<void, std::string const&>::clear()
 
  0.00      7.29    0.00        3    0.00    0.00  boost::function1<void, std::string const&>::function1()
 
  0.00      7.29    0.00        3    0.00    0.00  boost::function1<void, std::string const&>::~function1()
 
  0.00      7.29    0.00        3    0.00    0.00  boost::function_base::has_trivial_copy_and_destroy() const
 
  0.00      7.29    0.00        3    0.00    0.00  boost::any::holder<std::string>::type() const
 
  0.00      7.29    0.00        3    0.00    0.00  boost::function1<void, std::string const&>::operator void (boost::function1<void, std::string const&>::dummy::*)()() const
 
  0.00      7.29    0.00        3    0.00    0.00  std::unique_ptr<AudioFileReader, std::default_delete<AudioFileReader> >::get() const
 
  0.00      7.29    0.00        3    0.00    0.00  std::map<std::string, boost::program_options::variable_value, std::less<std::string>, std::allocator<std::pair<std::string const, boost::program_options::variable_value> > >::count(std::string const&) const
 
  0.00      7.29    0.00        3    0.00    0.00  std::_Rb_tree<std::string, std::pair<std::string const, boost::program_options::variable_value>, std::_Select1st<std::pair<std::string const, boost::program_options::variable_value> >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::program_options::variable_value> > >::find(std::string const&) const
 
  0.00      7.29    0.00        3    0.00    0.00  std::_Head_base<0ul, AudioFileReader*, false>::_M_head(std::_Head_base<0ul, AudioFileReader*, false> const&)
 
  0.00      7.29    0.00        3    0.00    0.00  std::_Tuple_impl<0ul, AudioFileReader*, std::default_delete<AudioFileReader> >::_M_head(std::_Tuple_impl<0ul, AudioFileReader*, std::default_delete<AudioFileReader> > const&)
 
  0.00      7.29    0.00        3    0.00    0.00  std::unary_function<std::string const&, void>::unary_function()
 
  0.00      7.29    0.00        3    0.00    0.00  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> > >::_M_end()
 
  0.00      7.29    0.00        3    0.00    0.00  std::__add_c_ref<AudioFileReader*>::type std::__get_helper<0ul, AudioFileReader*, std::default_delete<AudioFileReader> >(std::_Tuple_impl<0ul, AudioFileReader*, std::default_delete<AudioFileReader> > const&)
 
  0.00      7.29    0.00        3    0.00    0.00  std::__add_c_ref<std::tuple_element<0ul, std::tuple<AudioFileReader*, std::default_delete<AudioFileReader> > >::type>::type std::get<0ul, AudioFileReader*, std::default_delete<AudioFileReader> >(std::tuple<AudioFileReader*, std::default_delete<AudioFileReader> > const&)
 
  0.00      7.29    0.00        3    0.00    0.00  std::remove_reference<ScaleFactor*&>::type&& std::move<ScaleFactor*&>(ScaleFactor*&)
 
  0.00      7.29    0.00        3    0.00    0.00  std::remove_reference<AudioFileReader*&>::type&& std::move<AudioFileReader*&>(AudioFileReader*&)
 
  0.00      7.29    0.00        2    0.00    0.00  writeUInt32(std::ostream&, unsigned int)
 
  0.00      7.29    0.00        2    0.00    0.00  WaveformColors::WaveformColors(RGBA const&, RGBA const&, RGBA const&, RGBA const&)
 
  0.00      7.29    0.00        2    0.00    0.00  Mp3AudioFileReader::close()
 
  0.00      7.29    0.00        2    0.00    0.00  boost::filesystem::path::path(std::string const&)
 
  0.00      7.29    0.00        2    0.00    0.00  std::string boost::lexical_cast<std::string, double>(double const&)
 
  0.00      7.29    0.00        2    0.00    0.00  int boost::lexical_cast<int, std::string>(std::string const&)
 
  0.00      7.29    0.00        2    0.00    0.00  std::basic_string<char, std::char_traits<char>, std::allocator<char> > const& boost::program_options::validators::get_single_string<char>(std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, bool)
 
  0.00      7.29    0.00        2    0.00    0.00  boost::program_options::typed_value<std::string, char>::required()
 
  0.00      7.29    0.00        2    0.00    0.00  boost::program_options::typed_value<double, char>::default_value(double const&)
 
  0.00      7.29    0.00        2    0.00    0.00  boost::program_options::typed_value<double, char>::typed_value(double*)
 
  0.00      7.29    0.00        2    0.00    0.00  boost::program_options::typed_value<double, char>::~typed_value()
 
  0.00      7.29    0.00        2    0.00    0.00  boost::program_options::basic_parsed_options<char>::~basic_parsed_options()
 
  0.00      7.29    0.00        2    0.00    0.00  boost::program_options::typed_value<double, char>* boost::program_options::value<double>(double*)
 
  0.00      7.29    0.00        2    0.00    0.00  void boost::program_options::validate<int, char>(boost::any&, std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, int*, long)
 
  0.00      7.29    0.00        2    0.00    0.00  boost::any::any<double>(double const&)
 
  0.00      7.29    0.00        2    0.00    0.00  bool boost::math::isinf<double>(double)
 
  0.00      7.29    0.00        2    0.00    0.00  bool boost::math::isnan<double>(double)
 
  0.00      7.29    0.00        2    0.00    0.00  bool boost::math::detail::isinf_impl<double>(double, boost::math::detail::native_tag const&)
 
  0.00      7.29    0.00        2    0.00    0.00  bool boost::math::detail::isnan_impl<double>(double, boost::math::detail::native_tag const&)
 
  0.00      7.29    0.00        2    0.00    0.00  bool boost::detail::put_inf_nan<char, double>(char*, char*&, double const&)
 
  0.00      7.29    0.00        2    0.00    0.00  boost::detail::lcast_src_length<std::string>::check_coverage()
 
  0.00      7.29    0.00        2    0.00    0.00  boost::detail::lcast_src_length<double>::check_coverage()
 
  0.00      7.29    0.00        2    0.00    0.00  bool boost::detail::put_inf_nan_impl<char, double>(char*, char*&, double const&, char const*, char const*)
 
  0.00      7.29    0.00        2    0.00    0.00  bool boost::detail::lcast_ret_unsigned<std::char_traits<char>, unsigned int, char>(unsigned int&, char const*, char const*)
 
  0.00      7.29    0.00        2    0.00    0.00  long boost::detail::lcast_get_precision<double>(double*)
 
  0.00      7.29    0.00        2    0.00    0.00  boost::detail::lexical_cast_do_cast<std::string, double>::lexical_cast_impl(double const&)
 
  0.00      7.29    0.00        2    0.00    0.00  boost::detail::lexical_cast_do_cast<int, std::string>::lexical_cast_impl(std::string const&)
 
  0.00      7.29    0.00        2    0.00    0.00  bool boost::detail::lexical_stream_limited_src<char, std::char_traits<char>, false>::shr_signed<int>(int&)
 
  0.00      7.29    0.00        2    0.00    0.00  boost::detail::lexical_stream_limited_src<char, std::char_traits<char>, false>::shl_real_type(double, char*, char*&)
 
  0.00      7.29    0.00        2    0.00    0.00  boost::detail::lexical_stream_limited_src<char, std::char_traits<char>, false>::operator<<(double)
 
  0.00      7.29    0.00        2    0.00    0.00  bool boost::detail::lexical_stream_limited_src<char, std::char_traits<char>, false>::operator<< <std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
 
  0.00      7.29    0.00        2    0.00    0.00  boost::detail::lexical_stream_limited_src<char, std::char_traits<char>, false>::operator>>(int&)
 
  0.00      7.29    0.00        2    0.00    0.00  double const* boost::any_cast<double>(boost::any const*)
 
  0.00      7.29    0.00        2    0.00    0.00  double* boost::any_cast<double>(boost::any*)
 
  0.00      7.29    0.00        2    0.00    0.00  boost::function1<void, double const&>::clear()
 
  0.00      7.29    0.00        2    0.00    0.00  boost::function1<void, double const&>::function1()
 
  0.00      7.29    0.00        2    0.00    0.00  boost::function1<void, double const&>::~function1()
 
  0.00      7.29    0.00        2    0.00    0.00  __gnu_cxx::new_allocator<std::string>::new_allocator()
 
  0.00      7.29    0.00        2    0.00    0.00  __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::string const, std::string> > >::deallocate(std::_Rb_tree_node<std::pair<std::string const, std::string> >*, unsigned long)
 
  0.00      7.29    0.00        2    0.00    0.00  void __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::string const, std::string> > >::destroy<std::_Rb_tree_node<std::pair<std::string const, std::string> > >(std::_Rb_tree_node<std::pair<std::string const, std::string> >*)
 
  0.00      7.29    0.00        2    0.00    0.00  __gnu_cxx::__normal_iterator<boost::program_options::basic_option<char> const*, std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > > >::__normal_iterator(boost::program_options::basic_option<char> const* const&)
 
  0.00      7.29    0.00        2    0.00    0.00  WaveformBuffer::getSize() const
 
  0.00      7.29    0.00        2    0.00    0.00  boost::filesystem::path::c_str() const
 
  0.00      7.29    0.00        2    0.00    0.00  boost::any::holder<double>::type() const
 
  0.00      7.29    0.00        2    0.00    0.00  boost::any::holder<double>::clone() const
 
  0.00      7.29    0.00        2    0.00    0.00  boost::function1<void, double const&>::operator void (boost::function1<void, double const&>::dummy::*)()() const
 
  0.00      7.29    0.00        2    0.00    0.00  Options::hasEndTime() const
 
  0.00      7.29    0.00        2    0.00    0.00  Options::hasPixelsPerSecond() const
 
  0.00      7.29    0.00        2    0.00    0.00  Options::hasSamplesPerPixel() const
 
  0.00      7.29    0.00        2    0.00    0.00  std::unique_ptr<AudioFileReader, std::default_delete<AudioFileReader> >::operator->() const
 
  0.00      7.29    0.00        2    0.00    0.00  std::_Vector_base<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::_M_get_Tp_allocator() const
 
  0.00      7.29    0.00        2    0.00    0.00  std::_Rb_tree_const_iterator<std::pair<std::string const, std::string> >::_M_const_cast() const
 
  0.00      7.29    0.00        2    0.00    0.00  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> > >::size() const
 
  0.00      7.29    0.00        2    0.00    0.00  std::allocator<std::string>::allocator()
 
  0.00      7.29    0.00        2    0.00    0.00  std::_Head_base<0ul, ScaleFactor*, false>::_M_head(std::_Head_base<0ul, ScaleFactor*, false>&)
 
  0.00      7.29    0.00        2    0.00    0.00  std::_Head_base<0ul, AudioFileReader*, false>::_M_head(std::_Head_base<0ul, AudioFileReader*, false>&)
 
  0.00      7.29    0.00        2    0.00    0.00  std::_Tuple_impl<0ul, ScaleFactor*, std::default_delete<ScaleFactor> >::_M_head(std::_Tuple_impl<0ul, ScaleFactor*, std::default_delete<ScaleFactor> >&)
 
  0.00      7.29    0.00        2    0.00    0.00  std::_Tuple_impl<0ul, AudioFileReader*, std::default_delete<AudioFileReader> >::_M_head(std::_Tuple_impl<0ul, AudioFileReader*, std::default_delete<AudioFileReader> >&)
 
  0.00      7.29    0.00        2    0.00    0.00  std::char_traits<char>::length(char const*)
 
  0.00      7.29    0.00        2    0.00    0.00  std::_Vector_base<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::_Vector_impl::_M_swap_data(std::_Vector_base<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::_Vector_impl&)
 
  0.00      7.29    0.00        2    0.00    0.00  std::_Vector_base<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::_Vector_impl::_Vector_impl(std::allocator<boost::program_options::basic_option<char> > const&)
 
  0.00      7.29    0.00        2    0.00    0.00  std::_Vector_base<std::string, std::allocator<std::string> >::_Vector_impl::_Vector_impl()
 
  0.00      7.29    0.00        2    0.00    0.00  std::_Vector_base<std::string, std::allocator<std::string> >::_Vector_base()
 
  0.00      7.29    0.00        2    0.00    0.00  std::_Rb_tree_node<std::pair<std::string const, std::string> >::~_Rb_tree_node()
 
  0.00      7.29    0.00        2    0.00    0.00  std::numeric_limits<unsigned int>::max()
 
  0.00      7.29    0.00        2    0.00    0.00  std::unary_function<double const&, void>::unary_function()
 
  0.00      7.29    0.00        2    0.00    0.00  std::pair<std::string const, std::string>::~pair()
 
  0.00      7.29    0.00        2    0.00    0.00  std::vector<std::string, std::allocator<std::string> >::vector()
 
  0.00      7.29    0.00        2    0.00    0.00  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> > >::_M_put_node(std::_Rb_tree_node<std::pair<std::string const, std::string> >*)
 
  0.00      7.29    0.00        2    0.00    0.00  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> > >::_M_rightmost()
 
  0.00      7.29    0.00        2    0.00    0.00  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> > >::_M_destroy_node(std::_Rb_tree_node<std::pair<std::string const, std::string> >*)
 
  0.00      7.29    0.00        2    0.00    0.00  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> > >::_M_get_Node_allocator()
 
  0.00      7.29    0.00        2    0.00    0.00  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> > >::_S_left(std::_Rb_tree_node_base*)
 
  0.00      7.29    0.00        2    0.00    0.00  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> > >::_M_begin()
 
  0.00      7.29    0.00        2    0.00    0.00  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> > >::_S_right(std::_Rb_tree_node_base*)
 
  0.00      7.29    0.00        2    0.00    0.00  _ZSt12__get_helperILm0EP11ScaleFactorISt14default_deleteIS0_EEENSt9__add_refIT0_E4typeERSt11_Tuple_implIXT_EIS5_DpT1_EE
 
  0.00      7.29    0.00        2    0.00    0.00  _ZSt12__get_helperILm0EP15AudioFileReaderISt14default_deleteIS0_EEENSt9__add_refIT0_E4typeERSt11_Tuple_implIXT_EIS5_DpT1_EE
 
  0.00      7.29    0.00        2    0.00    0.00  std::__add_ref<std::tuple_element<0ul, std::tuple<ScaleFactor*, std::default_delete<ScaleFactor> > >::type>::type std::get<0ul, ScaleFactor*, std::default_delete<ScaleFactor> >(std::tuple<ScaleFactor*, std::default_delete<ScaleFactor> >&)
 
  0.00      7.29    0.00        2    0.00    0.00  std::__add_ref<std::tuple_element<0ul, std::tuple<AudioFileReader*, std::default_delete<AudioFileReader> > >::type>::type std::get<0ul, AudioFileReader*, std::default_delete<AudioFileReader> >(std::tuple<AudioFileReader*, std::default_delete<AudioFileReader> >&)
 
  0.00      7.29    0.00        2    0.00    0.00  std::isinf(double)
 
  0.00      7.29    0.00        2    0.00    0.00  std::isnan(double)
 
  0.00      7.29    0.00        2    0.00    0.00  std::_Rb_tree_node<std::pair<std::string const, std::string> >*& std::forward<std::_Rb_tree_node<std::pair<std::string const, std::string> >*&>(std::remove_reference<std::_Rb_tree_node<std::pair<std::string const, std::string> >*&>::type&)
 
  0.00      7.29    0.00        1    0.00    0.00  BstdFileDestroy
 
  0.00      7.29    0.00        1    0.00    0.00  NewBstdFile
 
  0.00      7.29    0.00        1    0.00    0.00  _GLOBAL__sub_I__ZN11ScaleFactorD2Ev
 
  0.00      7.29    0.00        1    0.00    0.00  _GLOBAL__sub_I__ZN13OptionHandlerC2Ev
 
  0.00      7.29    0.00        1    0.00    0.00  _GLOBAL__sub_I__ZN13WavFileWriterC2EPKc
 
  0.00      7.29    0.00        1    0.00    0.00  _GLOBAL__sub_I__ZN14WaveformBufferC2Ev
 
  0.00      7.29    0.00        1    0.00    0.00  _GLOBAL__sub_I__ZN14WaveformColorsC2Ev
 
  0.00      7.29    0.00        1    0.00    0.00  _GLOBAL__sub_I__ZN15AudioFileReaderC2Ev
 
  0.00      7.29    0.00        1    0.00    0.00  _GLOBAL__sub_I__ZN15GdImageRendererC2Ev
 
  0.00      7.29    0.00        1    0.00    0.00  _GLOBAL__sub_I__ZN16WaveformRescalerC2Ev
 
  0.00      7.29    0.00        1    0.00    0.00  _GLOBAL__sub_I__ZN18Mp3AudioFileReaderC2Ev
 
  0.00      7.29    0.00        1    0.00    0.00  _GLOBAL__sub_I__ZN22SndFileAudioFileReaderC2Ev
 
  0.00      7.29    0.00        1    0.00    0.00  _GLOBAL__sub_I__ZN4RGBAC2Ev
 
  0.00      7.29    0.00        1    0.00    0.00  _GLOBAL__sub_I__ZN7OptionsC2Ev
 
  0.00      7.29    0.00        1    0.00    0.00  _GLOBAL__sub_I_output_stream
 
  0.00      7.29    0.00        1    0.00    0.00  __static_initialization_and_destruction_0(int, int)
 
  0.00      7.29    0.00        1    0.00    0.00  __static_initialization_and_destruction_0(int, int)
 
  0.00      7.29    0.00        1    0.00    0.00  __static_initialization_and_destruction_0(int, int)
 
  0.00      7.29    0.00        1    0.00    0.00  __static_initialization_and_destruction_0(int, int)
 
  0.00      7.29    0.00        1    0.00    0.00  __static_initialization_and_destruction_0(int, int)
 
  0.00      7.29    0.00        1    0.00    0.00  __static_initialization_and_destruction_0(int, int)
 
  0.00      7.29    0.00        1    0.00    0.00  __static_initialization_and_destruction_0(int, int)
 
  0.00      7.29    0.00        1    0.00    0.00  __static_initialization_and_destruction_0(int, int)
 
  0.00      7.29    0.00        1    0.00    0.00  __static_initialization_and_destruction_0(int, int)
 
  0.00      7.29    0.00        1    0.00    0.00  __static_initialization_and_destruction_0(int, int)
 
  0.00      7.29    0.00        1    0.00    0.00  __static_initialization_and_destruction_0(int, int)
 
  0.00      7.29    0.00        1    0.00    0.00  __static_initialization_and_destruction_0(int, int)
 
  0.00      7.29    0.00        1    0.00    0.00  __static_initialization_and_destruction_0(int, int)
 
  0.00      7.29    0.00        1    0.00    0.00  createScaleFactor(Options const&)
 
  0.00      7.29    0.00        1    0.00    0.00  createAudioFileReader(boost::filesystem::path const&)
 
  0.00      7.29    0.00        1    0.00    0.00  ScaleFactor::ScaleFactor()
 
  0.00      7.29    0.00        1    0.00    0.00  ScaleFactor::~ScaleFactor()
 
  0.00      7.29    0.00        1    0.00    7.29  OptionHandler::generateWaveformData(boost::filesystem::path const&, boost::filesystem::path const&, Options const&)
 
  0.00      7.29    0.00        1    0.00    7.29  OptionHandler::run(Options const&)
 
  0.00      7.29    0.00        1    0.00    0.00  OptionHandler::OptionHandler()
 
  0.00      7.29    0.00        1    0.00    0.00  AudioProcessor::AudioProcessor()
 
  0.00      7.29    0.00        1    0.00    0.00  AudioProcessor::~AudioProcessor()
 
  0.00      7.29    0.00        1    0.00    0.00  WaveformBuffer::setSampleRate(int)
 
  0.00      7.29    0.00        1    0.00    0.00  WaveformBuffer::setSamplesPerPixel(int)
 
  0.00      7.29    0.00        1    0.00    0.00  WaveformBuffer::WaveformBuffer()
 
  0.00      7.29    0.00        1    0.00    0.00  WaveformBuffer::~WaveformBuffer()
 
  0.00      7.29    0.00        1    0.00    0.00  AudioFileReader::AudioFileReader()
 
  0.00      7.29    0.00        1    0.00    0.00  AudioFileReader::~AudioFileReader()
 
  0.00      7.29    0.00        1    0.00    0.00  WaveformGenerator::done()
 
  0.00      7.29    0.00        1    0.00    0.00  WaveformGenerator::init(int, int, int)
 
  0.00      7.29    0.00        1    0.00    0.00  WaveformGenerator::WaveformGenerator(WaveformBuffer&, ScaleFactor const&)
 
  0.00      7.29    0.00        1    0.00    0.00  WaveformGenerator::~WaveformGenerator()
 
  0.00      7.29    0.00        1    0.00    0.00  Mp3AudioFileReader::open(char const*)
 
  0.00      7.29    0.00        1    0.00    0.00  Mp3AudioFileReader::Mp3AudioFileReader()
 
  0.00      7.29    0.00        1    0.00    0.00  Mp3AudioFileReader::~Mp3AudioFileReader()
 
  0.00      7.29    0.00        1    0.00    0.00  Mp3AudioFileReader::~Mp3AudioFileReader()
 
  0.00      7.29    0.00        1    0.00    0.00  SamplesPerPixelScaleFactor::SamplesPerPixelScaleFactor(int)
 
  0.00      7.29    0.00        1    0.00    0.00  SamplesPerPixelScaleFactor::~SamplesPerPixelScaleFactor()
 
  0.00      7.29    0.00        1    0.00    0.00  SamplesPerPixelScaleFactor::~SamplesPerPixelScaleFactor()
 
  0.00      7.29    0.00        1    0.00    0.00  std::string boost::lexical_cast<std::string, std::string>(std::string const&)
 
  0.00      7.29    0.00        1    0.00    0.00  std::vector<std::string, std::allocator<std::string> > boost::program_options::to_internal<std::string>(std::vector<std::string, std::allocator<std::string> > const&)
 
  0.00      7.29    0.00        1    0.00    0.00  boost::program_options::typed_value<std::string, char>::default_value(std::string const&)
 
  0.00      7.29    0.00        1    0.00    0.00  boost::program_options::variables_map::~variables_map()
 
  0.00      7.29    0.00        1    0.00    0.00  boost::program_options::options_description::~options_description()
 
  0.00      7.29    0.00        1    0.00    0.00  boost::program_options::basic_parsed_options<char>::basic_parsed_options(boost::program_options::options_description const*, int)
 
  0.00      7.29    0.00        1    0.00    0.00  boost::program_options::basic_parsed_options<char>::basic_parsed_options(boost::program_options::basic_parsed_options<char> const&)
 
  0.00      7.29    0.00        1    0.00    0.00  boost::program_options::abstract_variables_map::~abstract_variables_map()
 
  0.00      7.29    0.00        1    0.00    0.00  boost::program_options::basic_command_line_parser<char>::run()
 
  0.00      7.29    0.00        1    0.00    0.00  boost::program_options::basic_command_line_parser<char>::options(boost::program_options::options_description const&)
 
  0.00      7.29    0.00        1    0.00    0.00  boost::program_options::basic_command_line_parser<char>::basic_command_line_parser(int, char const* const*)
 
  0.00      7.29    0.00        1    0.00    0.00  boost::program_options::basic_command_line_parser<char>::~basic_command_line_parser()
 
  0.00      7.29    0.00        1    0.00    0.00  std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > boost::program_options::detail::make_vector<char, char const* const*>(char const* const*, char const* const*)
 
  0.00      7.29    0.00        1    0.00    0.00  boost::program_options::detail::cmdline::~cmdline()
 
  0.00      7.29    0.00        1    0.00    0.00  boost::any::any<std::string>(std::string const&)
 
  0.00      7.29    0.00        1    0.00    0.00  boost::detail::lexical_cast_copy<std::string>::lexical_cast_impl(std::string const&)
 
  0.00      7.29    0.00        1    0.00    0.00  boost::function1<std::pair<std::string, std::string>, std::string const&>::clear()
 
  0.00      7.29    0.00        1    0.00    0.00  boost::function1<std::pair<std::string, std::string>, std::string const&>::~function1()
 
  0.00      7.29    0.00        1    0.00    0.00  boost::function1<std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >, std::vector<std::string, std::allocator<std::string> >&>::clear()
 
  0.00      7.29    0.00        1    0.00    0.00  boost::function1<std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >, std::vector<std::string, std::allocator<std::string> >&>::~function1()
 
  0.00      7.29    0.00        1    0.00    0.00  Options::parseCommandLine(int, char const* const*)
 
  0.00      7.29    0.00        1    0.00    0.00  Options::Options()
 
  0.00      7.29    0.00        1    0.00    0.00  Options::~Options()
 
  0.00      7.29    0.00        1    0.00    0.00  __gnu_cxx::new_allocator<boost::shared_ptr<boost::program_options::option_description> >::deallocate(boost::shared_ptr<boost::program_options::option_description>*, unsigned long)
 
  0.00      7.29    0.00        1    0.00    0.00  __gnu_cxx::new_allocator<boost::shared_ptr<boost::program_options::option_description> >::~new_allocator()
 
  0.00      7.29    0.00        1    0.00    0.00  __gnu_cxx::new_allocator<boost::shared_ptr<boost::program_options::options_description> >::~new_allocator()
 
  0.00      7.29    0.00        1    0.00    0.00  __gnu_cxx::new_allocator<boost::program_options::basic_option<char> >::allocate(unsigned long, void const*)
 
  0.00      7.29    0.00        1    0.00    0.00  __gnu_cxx::new_allocator<boost::program_options::basic_option<char> >::new_allocator()
 
  0.00      7.29    0.00        1    0.00    0.00  __gnu_cxx::new_allocator<std::_Rb_tree_node<std::string> >::~new_allocator()
 
  0.00      7.29    0.00        1    0.00    0.00  __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::string const, boost::program_options::variable_value> > >::~new_allocator()
 
  0.00      7.29    0.00        1    0.00    0.00  __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::string const, std::string> > >::~new_allocator()
 
  0.00      7.29    0.00        1    0.00    0.00  __gnu_cxx::new_allocator<unsigned long>::deallocate(unsigned long*, unsigned long)
 
  0.00      7.29    0.00        1    0.00    0.00  __gnu_cxx::new_allocator<unsigned long>::~new_allocator()
 
  0.00      7.29    0.00        1    0.00    0.00  __gnu_cxx::new_allocator<short>::new_allocator()
 
  0.00      7.29    0.00        1    0.00    0.00  __gnu_cxx::new_allocator<short>::~new_allocator()
 
  0.00      7.29    0.00        1    0.00    0.00  __gnu_cxx::__alloc_traits<std::allocator<boost::program_options::basic_option<char> > >::_S_select_on_copy(std::allocator<boost::program_options::basic_option<char> > const&)
 
  0.00      7.29    0.00        1    0.00    0.00  __gnu_cxx::__alloc_traits<std::allocator<boost::program_options::basic_option<char> > >::_S_propagate_on_move_assign()
 
  0.00      7.29    0.00        1    0.00    0.02  WaveformBuffer::save(char const*, int) const
 
  0.00      7.29    0.00        1    0.00    0.00  SamplesPerPixelScaleFactor::getSamplesPerPixel(int) const
 
  0.00      7.29    0.00        1    0.00    0.00  boost::any::holder<std::string>::clone() const
 
  0.00      7.29    0.00        1    0.00    0.00  Options::getVersion() const
 
  0.00      7.29    0.00        1    0.00    0.00  Options::getInputFilename() const
 
  0.00      7.29    0.00        1    0.00    0.00  Options::getOutputFilename() const
 
  0.00      7.29    0.00        1    0.00    0.00  Options::getSamplesPerPixel() const
 
  0.00      7.29    0.00        1    0.00    0.00  Options::getBits() const
 
  0.00      7.29    0.00        1    0.00    0.00  Options::getHelp() const
 
  0.00      7.29    0.00        1    0.00    0.00  __gnu_cxx::new_allocator<boost::program_options::basic_option<char> >::max_size() const
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Select1st<std::pair<std::string const, std::string> >::operator()(std::pair<std::string const, std::string> const&) const
 
  0.00      7.29    0.00        1    0.00    0.00  std::unique_ptr<ScaleFactor, std::default_delete<ScaleFactor> >::get() const
 
  0.00      7.29    0.00        1    0.00    0.00  std::unique_ptr<ScaleFactor, std::default_delete<ScaleFactor> >::operator*() const
 
  0.00      7.29    0.00        1    0.00    0.00  std::unique_ptr<AudioFileReader, std::default_delete<AudioFileReader> >::operator bool() const
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Vector_base<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::get_allocator() const
 
  0.00      7.29    0.00        1    0.00    0.00  std::default_delete<ScaleFactor>::operator()(ScaleFactor*) const
 
  0.00      7.29    0.00        1    0.00    0.00  std::default_delete<AudioFileReader>::operator()(AudioFileReader*) const
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Rb_tree_iterator<std::pair<std::string const, std::string> >::operator==(std::_Rb_tree_iterator<std::pair<std::string const, std::string> > const&) const
 
  0.00      7.29    0.00        1    0.00    0.00  std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::end() const
 
  0.00      7.29    0.00        1    0.00    0.00  std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::size() const
 
  0.00      7.29    0.00        1    0.00    0.00  std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::begin() const
 
  0.00      7.29    0.00        1    0.00    0.00  std::allocator<boost::shared_ptr<boost::program_options::option_description> >::~allocator()
 
  0.00      7.29    0.00        1    0.00    0.00  std::allocator<boost::shared_ptr<boost::program_options::options_description> >::~allocator()
 
  0.00      7.29    0.00        1    0.00    0.00  std::allocator<boost::program_options::basic_option<char> >::allocator()
 
  0.00      7.29    0.00        1    0.00    0.00  std::allocator<std::_Rb_tree_node<std::string> >::~allocator()
 
  0.00      7.29    0.00        1    0.00    0.00  std::allocator<std::_Rb_tree_node<std::pair<std::string const, boost::program_options::variable_value> > >::~allocator()
 
  0.00      7.29    0.00        1    0.00    0.00  std::allocator<std::_Rb_tree_node<std::pair<std::string const, std::string> > >::~allocator()
 
  0.00      7.29    0.00        1    0.00    0.00  std::allocator<unsigned long>::~allocator()
 
  0.00      7.29    0.00        1    0.00    0.00  std::allocator<short>::allocator()
 
  0.00      7.29    0.00        1    0.00    0.00  std::allocator<short>::~allocator()
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Head_base<0ul, ScaleFactor*, false>::_M_head(std::_Head_base<0ul, ScaleFactor*, false> const&)
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Head_base<1ul, std::default_delete<ScaleFactor>, true>::_M_head(std::_Head_base<1ul, std::default_delete<ScaleFactor>, true>&)
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Head_base<1ul, std::default_delete<AudioFileReader>, true>::_M_head(std::_Head_base<1ul, std::default_delete<AudioFileReader>, true>&)
 
  0.00      7.29    0.00        1    0.00    0.00  std::unique_ptr<ScaleFactor, std::default_delete<ScaleFactor> >::get_deleter()
 
  0.00      7.29    0.00        1    0.00    0.00  std::unique_ptr<ScaleFactor, std::default_delete<ScaleFactor> >::reset(ScaleFactor*)
 
  0.00      7.29    0.00        1    0.00    0.00  std::unique_ptr<ScaleFactor, std::default_delete<ScaleFactor> >::~unique_ptr()
 
  0.00      7.29    0.00        1    0.00    0.00  std::unique_ptr<AudioFileReader, std::default_delete<AudioFileReader> >::get_deleter()
 
  0.00      7.29    0.00        1    0.00    0.00  std::unique_ptr<AudioFileReader, std::default_delete<AudioFileReader> >::reset(AudioFileReader*)
 
  0.00      7.29    0.00        1    0.00    0.00  std::unique_ptr<AudioFileReader, std::default_delete<AudioFileReader> >::~unique_ptr()
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Tuple_impl<0ul, ScaleFactor*, std::default_delete<ScaleFactor> >::_M_head(std::_Tuple_impl<0ul, ScaleFactor*, std::default_delete<ScaleFactor> > const&)
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Tuple_impl<1ul, std::default_delete<AudioFileReader> >::_M_head(std::_Tuple_impl<1ul, std::default_delete<AudioFileReader> >&)
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Tuple_impl<1ul, std::default_delete<ScaleFactor> >::_M_head(std::_Tuple_impl<1ul, std::default_delete<ScaleFactor> >&)
 
  0.00      7.29    0.00        1    0.00    0.00  void std::_Destroy_aux<false>::__destroy<boost::shared_ptr<boost::program_options::option_description>*>(boost::shared_ptr<boost::program_options::option_description>*, boost::shared_ptr<boost::program_options::option_description>*)
 
  0.00      7.29    0.00        1    0.00    0.00  void std::_Destroy_aux<false>::__destroy<boost::shared_ptr<boost::program_options::options_description>*>(boost::shared_ptr<boost::program_options::options_description>*, boost::shared_ptr<boost::program_options::options_description>*)
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Vector_base<boost::shared_ptr<boost::program_options::option_description>, std::allocator<boost::shared_ptr<boost::program_options::option_description> > >::_Vector_impl::~_Vector_impl()
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Vector_base<boost::shared_ptr<boost::program_options::option_description>, std::allocator<boost::shared_ptr<boost::program_options::option_description> > >::_M_deallocate(boost::shared_ptr<boost::program_options::option_description>*, unsigned long)
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Vector_base<boost::shared_ptr<boost::program_options::option_description>, std::allocator<boost::shared_ptr<boost::program_options::option_description> > >::_M_get_Tp_allocator()
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Vector_base<boost::shared_ptr<boost::program_options::option_description>, std::allocator<boost::shared_ptr<boost::program_options::option_description> > >::~_Vector_base()
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Vector_base<boost::shared_ptr<boost::program_options::options_description>, std::allocator<boost::shared_ptr<boost::program_options::options_description> > >::_Vector_impl::~_Vector_impl()
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Vector_base<boost::shared_ptr<boost::program_options::options_description>, std::allocator<boost::shared_ptr<boost::program_options::options_description> > >::_M_deallocate(boost::shared_ptr<boost::program_options::options_description>*, unsigned long)
 
  0.00      7.29    0.00        1    0.00    0.00 std::_Vector_base<boost::shared_ptr<boost::program_options::options_description>, std::allocator<boost::shared_ptr<boost::program_options::options_description> > >::_M_get_Tp_allocator()
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Vector_base<boost::shared_ptr<boost::program_options::options_description>, std::allocator<boost::shared_ptr<boost::program_options::options_description> > >::~_Vector_base()
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Vector_base<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::_M_allocate(unsigned long)
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Vector_base<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::_Vector_impl::_Vector_impl()
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Vector_base<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::_M_create_storage(unsigned long)
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Vector_base<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::_Vector_base(std::allocator<boost::program_options::basic_option<char> > const&)
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Vector_base<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::_Vector_base(unsigned long, std::allocator<boost::program_options::basic_option<char> > const&)
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Vector_base<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::_Vector_base()
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Vector_base<short, std::allocator<short> >::_Vector_impl::_Vector_impl()
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Vector_base<short, std::allocator<short> >::_Vector_impl::~_Vector_impl()
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Vector_base<short, std::allocator<short> >::_Vector_base()
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Vector_base<short, std::allocator<short> >::~_Vector_base()
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Bvector_base<std::allocator<bool> >::_Bvector_impl::~_Bvector_impl()
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Bvector_base<std::allocator<bool> >::_M_deallocate()
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Bvector_base<std::allocator<bool> >::~_Bvector_base()
 
  0.00      7.29    0.00        1    0.00    0.00  std::allocator_traits<std::allocator<boost::program_options::basic_option<char> > >::select_on_container_copy_construction(std::allocator<boost::program_options::basic_option<char> > const&)
 
  0.00      7.29    0.00        1    0.00    0.00  std::enable_if<!std::allocator_traits<std::allocator<boost::program_options::basic_option<char> > >::__select_helper<std::allocator<boost::program_options::basic_option<char> > const>::value, std::allocator<boost::program_options::basic_option<char> > const>::type std::allocator_traits<std::allocator<boost::program_options::basic_option<char> > >::_S_select<std::allocator<boost::program_options::basic_option<char> > const>(std::allocator<boost::program_options::basic_option<char> > const&)
 
  0.00      7.29    0.00        1    0.00    0.00  boost::program_options::basic_option<char>* std::__uninitialized_copy<false>::__uninit_copy<__gnu_cxx::__normal_iterator<boost::program_options::basic_option<char> const*, std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > > >, boost::program_options::basic_option<char>*>(__gnu_cxx::__normal_iterator<boost::program_options::basic_option<char> const*, std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > > >, __gnu_cxx::__normal_iterator<boost::program_options::basic_option<char> const*, std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > > >, boost::program_options::basic_option<char>*)
 
  0.00      7.29    0.00        1    0.00    0.00  std::map<std::string, boost::program_options::variable_value, std::less<std::string>, std::allocator<std::pair<std::string const, boost::program_options::variable_value> > >::~map()
 
  0.00      7.29    0.00        1    0.00    0.00  std::map<std::string, std::string, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > >::~map()
 
  0.00      7.29    0.00        1    0.00    0.00  std::set<std::string, std::less<std::string>, std::allocator<std::string> >::~set()
 
  0.00      7.29    0.00        1    0.00    0.00  std::pair<std::_Rb_tree_node_base*, std::_Rb_tree_node_base*>::pair<std::_Rb_tree_node<std::pair<std::string const, std::string> >*&, std::_Rb_tree_node<std::pair<std::string const, std::string> >*&, void>(std::_Rb_tree_node<std::pair<std::string const, std::string> >*&, std::_Rb_tree_node<std::pair<std::string const, std::string> >*&)
 
  0.00      7.29    0.00        1    0.00    0.00  std::pair<std::_Rb_tree_node_base*, std::_Rb_tree_node_base*>::pair<std::_Rb_tree_node_base*&, void>(std::_Rb_tree_node_base* const&, std::_Rb_tree_node_base*&)
 
  0.00      7.29    0.00        1    0.00    0.00  std::vector<boost::shared_ptr<boost::program_options::option_description>, std::allocator<boost::shared_ptr<boost::program_options::option_description> > >::~vector()
 
  0.00      7.29    0.00        1    0.00    0.00  std::vector<boost::shared_ptr<boost::program_options::options_description>, std::allocator<boost::shared_ptr<boost::program_options::options_description> > >::~vector()
 
  0.00      7.29    0.00        1    0.00    0.00  std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::_M_move_assign(std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >&&, std::integral_constant<bool, true>)
 
  0.00      7.29    0.00        1    0.00    0.00  std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::vector(std::allocator<boost::program_options::basic_option<char> > const&)
 
  0.00      7.29    0.00        1    0.00    0.00  std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::vector(std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > > const&)
 
  0.00      7.29    0.00        1    0.00    0.00  std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::vector()
 
  0.00      7.29    0.00        1    0.00    0.00  std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >::operator=(std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >&&)
 
  0.00      7.29    0.00        1    0.00    0.00  std::vector<bool, std::allocator<bool> >::~vector()
 
  0.00      7.29    0.00        1    0.00    0.00  std::vector<short, std::allocator<short> >::vector()
 
  0.00      7.29    0.00        1    0.00    0.00  std::vector<short, std::allocator<short> >::~vector()
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Rb_tree<std::string, std::string, std::_Identity<std::string>, std::less<std::string>, std::allocator<std::string> >::_Rb_tree_impl<std::less<std::string>, true>::~_Rb_tree_impl()
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Rb_tree<std::string, std::string, std::_Identity<std::string>, std::less<std::string>, std::allocator<std::string> >::_M_begin()
 
  0.00      7.29    0.00        1    0.00    0.00  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.00      7.29    0.00        1    0.00    0.00  std::_Rb_tree<std::string, std::string, std::_Identity<std::string>, std::less<std::string>, std::allocator<std::string> >::~_Rb_tree()
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Rb_tree<std::string, std::pair<std::string const, boost::program_options::variable_value>, std::_Select1st<std::pair<std::string const, boost::program_options::variable_value> >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::program_options::variable_value> > >::_Rb_tree_impl<std::less<std::string>, true>::~_Rb_tree_impl()
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Rb_tree<std::string, std::pair<std::string const, boost::program_options::variable_value>, std::_Select1st<std::pair<std::string const, boost::program_options::variable_value> >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::program_options::variable_value> > >::_M_begin()
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Rb_tree<std::string, std::pair<std::string const, boost::program_options::variable_value>, std::_Select1st<std::pair<std::string const, boost::program_options::variable_value> >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::program_options::variable_value> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, boost::program_options::variable_value> >*)
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Rb_tree<std::string, std::pair<std::string const, boost::program_options::variable_value>, std::_Select1st<std::pair<std::string const, boost::program_options::variable_value> >, std::less<std::string>, std::allocator<std::pair<std::string const, boost::program_options::variable_value> > >::~_Rb_tree()
 
  0.00      7.29    0.00        1    0.00    0.00  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> > >::_Rb_tree_impl<std::less<std::string>, true>::~_Rb_tree_impl()
 
  0.00      7.29    0.00        1    0.00    0.00  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> > >::_M_get_insert_unique_pos(std::string const&)
 
  0.00      7.29    0.00        1    0.00    0.00  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> > >::begin()
 
  0.00      7.29    0.00        1    0.00    0.00  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> > >::_S_key(std::_Rb_tree_node_base const*)
 
  0.00      7.29    0.00        1    0.00    0.00  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> > >::_M_erase(std::_Rb_tree_node<std::pair<std::string const, std::string> >*)
 
  0.00      7.29    0.00        1    0.00    0.00  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> > >::_S_value(std::_Rb_tree_node_base const*)
 
  0.00      7.29    0.00        1    0.00    0.00  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> > >::~_Rb_tree()
 
  0.00      7.29    0.00        1    0.00    0.00  _ZSt12__get_helperILm0EP11ScaleFactorISt14default_deleteIS0_EEENSt11__add_c_refIT0_E4typeERKSt11_Tuple_implIXT_EIS5_DpT1_EE
 
  0.00      7.29    0.00        1    0.00    0.00  std::__add_ref<std::default_delete<ScaleFactor> >::type std::__get_helper<1ul, std::default_delete<ScaleFactor>>(std::_Tuple_impl<1ul, std::default_delete<ScaleFactor>>&)
 
  0.00      7.29    0.00        1    0.00    0.00  std::__add_ref<std::default_delete<AudioFileReader> >::type std::__get_helper<1ul, std::default_delete<AudioFileReader>>(std::_Tuple_impl<1ul, std::default_delete<AudioFileReader>>&)
 
  0.00      7.29    0.00        1    0.00    0.00  void std::__alloc_on_move<std::allocator<boost::program_options::basic_option<char> > >(std::allocator<boost::program_options::basic_option<char> >&, std::allocator<boost::program_options::basic_option<char> >&)
 
  0.00      7.29    0.00        1    0.00    0.00  void std::__do_alloc_on_move<std::allocator<boost::program_options::basic_option<char> > >(std::allocator<boost::program_options::basic_option<char> >&, std::allocator<boost::program_options::basic_option<char> >&, std::integral_constant<bool, true>)
 
  0.00      7.29    0.00        1    0.00    0.00  boost::program_options::basic_option<char>* std::uninitialized_copy<__gnu_cxx::__normal_iterator<boost::program_options::basic_option<char> const*, std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > > >, boost::program_options::basic_option<char>*>(__gnu_cxx::__normal_iterator<boost::program_options::basic_option<char> const*, std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > > >, __gnu_cxx::__normal_iterator<boost::program_options::basic_option<char> const*, std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > > >, boost::program_options::basic_option<char>*)
 
  0.00      7.29    0.00        1    0.00    0.00  boost::program_options::basic_option<char>* std::__uninitialized_copy_a<__gnu_cxx::__normal_iterator<boost::program_options::basic_option<char> const*, std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > > >, boost::program_options::basic_option<char>*, boost::program_options::basic_option<char> >(__gnu_cxx::__normal_iterator<boost::program_options::basic_option<char> const*, std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > > >, __gnu_cxx::__normal_iterator<boost::program_options::basic_option<char> const*, std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > > >, boost::program_options::basic_option<char>*, std::allocator<boost::program_options::basic_option<char> >&)
 
  0.00      7.29    0.00        1    0.00    0.00  std::__add_c_ref<std::tuple_element<0ul, std::tuple<ScaleFactor*, std::default_delete<ScaleFactor> > >::type>::type std::get<0ul, ScaleFactor*, std::default_delete<ScaleFactor> >(std::tuple<ScaleFactor*, std::default_delete<ScaleFactor> > const&)
 
  0.00      7.29    0.00        1    0.00    0.00  std::__add_ref<std::tuple_element<1ul, std::tuple<AudioFileReader*, std::default_delete<AudioFileReader> > >::type>::type std::get<1ul, AudioFileReader*, std::default_delete<AudioFileReader> >(std::tuple<AudioFileReader*, std::default_delete<AudioFileReader> >&)
 
  0.00      7.29    0.00        1    0.00    0.00  std::__add_ref<std::tuple_element<1ul, std::tuple<ScaleFactor*, std::default_delete<ScaleFactor> > >::type>::type std::get<1ul, ScaleFactor*, std::default_delete<ScaleFactor> >(std::tuple<ScaleFactor*, std::default_delete<ScaleFactor> >&)
 
  0.00      7.29    0.00        1    0.00    0.00  std::remove_reference<std::allocator<boost::program_options::basic_option<char> >&>::type&& std::move<std::allocator<boost::program_options::basic_option<char> >&>(std::allocator<boost::program_options::basic_option<char> >&)
 
  0.00      7.29    0.00        1    0.00    0.00  std::remove_reference<std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >&>::type&& std::move<std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >&>(std::vector<boost::program_options::basic_option<char>, std::allocator<boost::program_options::basic_option<char> > >&)
 
  0.00      7.29    0.00        1    0.00    0.00  void std::swap<ScaleFactor*>(ScaleFactor*&, ScaleFactor*&)
 
  0.00      7.29    0.00        1    0.00    0.00  void std::swap<AudioFileReader*>(AudioFileReader*&, AudioFileReader*&)
 
  0.00      7.29    0.00        1    0.00    0.00  std::_Rb_tree_node_base*& std::forward<std::_Rb_tree_node_base*&>(std::remove_reference<std::_Rb_tree_node_base*&>::type&)
 
  0.00      7.29    0.00        1    0.00    0.00  void std::_Destroy<boost::shared_ptr<boost::program_options::option_description>*>(boost::shared_ptr<boost::program_options::option_description>*, boost::shared_ptr<boost::program_options::option_description>*)
 
  0.00      7.29    0.00        1    0.00    0.00  void std::_Destroy<boost::shared_ptr<boost::program_options::option_description>*, boost::shared_ptr<boost::program_options::option_description> >(boost::shared_ptr<boost::program_options::option_description>*, boost::shared_ptr<boost::program_options::option_description>*, std::allocator<boost::shared_ptr<boost::program_options::option_description> >&)
 
  0.00      7.29    0.00        1    0.00    0.00  void std::_Destroy<boost::shared_ptr<boost::program_options::options_description>*>(boost::shared_ptr<boost::program_options::options_description>*, boost::shared_ptr<boost::program_options::options_description>*)
 
  0.00      7.29    0.00        1    0.00    0.00  void std::_Destroy<boost::shared_ptr<boost::program_options::options_description>*, boost::shared_ptr<boost::program_options::options_description> >(boost::shared_ptr<boost::program_options::options_description>*, boost::shared_ptr<boost::program_options::options_description>*, std::allocator<boost::shared_ptr<boost::program_options::options_description> >&)
 
  0.00      7.29    0.00        1    0.00    0.00  bool std::operator==<AudioFileReader, std::default_delete<AudioFileReader> >(std::unique_ptr<AudioFileReader, std::default_delete<AudioFileReader> > const&, decltype(nullptr))
 
  0.00      7.29    0.00        1    0.00    0.00  std::operator|(std::_Ios_Iostate, std::_Ios_Iostate)
 
  0.00      7.29    0.00        1    0.00    0.00  std::operator|(std::_Ios_Openmode, std::_Ios_Openmode)
 
  
 
=== <span style="color: red">&#x2717;Profile 3: String Processor</span> ===
 
=== <span style="color: red">&#x2717;Profile 3: String Processor</span> ===

Revision as of 10:51, 3 November 2015

C U D A B O Y S

Team Members

  1. Manjot Sandhu, Some responsibility
  2. Johnathan Ragimov, Some other responsibility
  3. Oleg Eustace, Some other responsibility

Email All

Progress

Assignment 1

✓ Profile 0: File Encryption

✗ Profile 1: PI Approximation

  • Sample run:
[root@jr-net-cent a1]# time ./pi
3.024
operation - took - 0.0001040000 secs
3.1676000000
operation - took - 0.0002280000 secs
3.1422800000
operation - took - 0.0022700000 secs
3.1418720000
operation - took - 0.0222910000 secs
3.1412748000
operation - took - 0.2185140000 secs
3.1417290800
operation - took - 2.2039310000 secs
3.1415420600
operation - took - 21.9592080000 secs
3.1415625844
operation - took - 47.1807910000 secs
3.1415537704
real    3m33.129s 
user    3m32.925s 
sys     0m0.016s
  • gprof:
Each sample counts as 0.01 seconds.
%   cumulative   self              self     total           
time   seconds   seconds    calls   s/call   s/call  name    
100.52    106.93   106.93       11     9.72     9.72  calcpi(int, int*)
0.00    106.93     0.00       11     0.00     0.00  reportTime(char const*, std::chrono::duration<long, std::ratio<1l, 1000000l> >)
0.00    106.93     0.00        1     0.00     0.00  _GLOBAL__sub_I__Z10reportTimePKcNSt6chrono8durationIlSt5ratioILl1ELl1000000EEEE

✗ Profile 2: Wave Form Generator

This is the program we selected to optimize. It's a great candidate because it has 2 primary functions that have a few for loops in them. One of the functions reads an Mp3 file and writes wave data to a file -- this function takes quite a bit of time to execute. The other function actually takes this data and converts it to a view-able sound wave image. Both functions would benefit greatly from the extra processing power that a GPU provides: mp3 read/decode time would be greatly reduced. This piece of code is too complex and requires a linux environment to run. Please see Profile 0 for the one we are currently using.

  • Sample Run
[root@jr-net-cent7 ~]# time audiowaveform -i Steph\ DJ\ -\ Noise\ Control\ Episode\ 025\ Feat\ Jack\ Diamond\ 13th\ January\ 2014.mp3 -o test.dat -z 256 -b 8
Input file: Steph DJ - Noise Control Episode 025 Feat Jack Diamond 13th January 2014.mp3
Format: Audio MPEG layer III stream
Bit rate: 320000 kbit/s
CRC: no
Mode: normal LR stereo
Emphasis: no
Sample rate: 44100 Hz
Generating waveform data...
Samples per pixel: 256
Input channels: 2
Done: 100%
Recoverable frame level error: lost synchronization
Frames decoded: 283540 (123:26.759)
Generated 1275930 points
Writing output file: test.dat
Resolution: 8 bits
real    0m32.486s
user    0m32.409s
sys     0m0.056s
[root@jr-net-cent7 ~]# which audiowaveform
/usr/local/bin/audiowaveform
[root@jr-net-cent7 ~]# gprof -p -b /usr/local/bin/audiowaveform > final.dat


  • gprof
Each sample counts as 0.01 seconds.
 %   cumulative   self              self     total           
time   seconds   seconds    calls   s/call   s/call  name    
58.71      4.28     4.28    79746     0.00     0.00  WaveformGenerator::process(short const*, int)
31.00      6.54     2.26        1     2.26     7.27  Mp3AudioFileReader::run(AudioProcessor&)
 9.33      7.22     0.68 653276160     0.00     0.00  MadFixedToSshort(int)
 0.41      7.25     0.03        1     0.03     0.03  dumpInfo(std::ostream&, mad_header const&)
 0.14      7.26     0.01  7655603     0.00     0.00  short const& std::forward<short const&>(std::remove_reference<short const&>::type&)
 0.14      7.27     0.01  2551860     0.00     0.00  writeInt8(std::ostream&, signed char)
 0.14      7.28     0.01  2551860     0.00     0.00  std::vector<short, std::allocator<short> >::push_back(short const&)
 0.14      7.29     0.01  1275930     0.00     0.00  WaveformBuffer::getMinSample(int) const
 0.00      7.29     0.00  2551938     0.00     0.00  operator new(unsigned long, void*)
 0.00      7.29     0.00  2551860     0.00     0.00  void __gnu_cxx::new_allocator<short>::construct<short, short const&>(short*, short const&)
 0.00      7.29     0.00  2551860     0.00     0.00  std::vector<short, std::allocator<short> >::operator[](unsigned long) const
 0.00      7.29     0.00  2551860     0.00     0.00  std::enable_if<std::allocator_traits<std::allocator<short> >::__construct_helper<short, short const&>::value, void>::type std::allocator_traits<std::allocator<short> >::_S_construct<short, short const&>(std::allocator<short>&, short*, short const&)
 0.00      7.29     0.00  2551860     0.00     0.00  decltype (_S_construct({parm#1}, {parm#2}, (forward<short const&>)({parm#3}))) std::allocator_traits<std::allocator<short> >::construct<short, short const&>(std::allocator<short>&, short*, short const&)
 0.00      7.29     0.00  1275931     0.00     0.00  WaveformGenerator::reset()
 0.00      7.29     0.00  1275930     0.00     0.00  WaveformBuffer::appendSamples(short, short)
 0.00      7.29     0.00  1275930     0.00     0.00  WaveformBuffer::getMaxSample(int) const
 0.00      7.29     0.00    79747     0.00     0.00  AudioFileReader::showProgress(long long, long long)
 0.00      7.29     0.00     7272     0.00     0.00  BstdRead
 0.00      7.29     0.00     7271     0.00     0.00  BstdFileEofP
.....

✗Profile 3: String Processor

compiled by Oleg

  • Sample run:
ext_string_example
es + 123 = ext_string123
456 + es = 456ext_string
es * 3   = ext_stringext_stringext_string
3  * es  = ext_stringext_stringext_string
original:  abc1234?abc1234?abc1234
es - abc = 1234?1234?1234
es - 123 = abc?abc?abc
es -   ? = abc1234abc1234abc1234
ext_string == eXt_StRiNg
original:  eXt_StRiNg
lowercase: ext_string
uppercase: EXT_STRING
original:              [   ext_string   ]
remove leading space:  [ext_string   ]
remove trailing space: [ext_string]
es: abc, ijk, pqr, xyz ---> split: (abc) (ijk) (pqr) (xyz)
es: abc, ijk, pqr, xyz ---> split_n(3): (abc) (ijk) (pqr)
es: 1, -23, 456, -7890 ---> parse: (1) (-23) (456) (-7890)
es: 1.1, -23.32, 456.654, -7890.0987 ---> parsed: (1.1000000000000001) (-23.32) (456.654) (-7890.0986999999996)
non_repeated_char_example
No non-repeated chars in string.
First non repeated char: a
First non repeated char: b
No non-repeated chars in string.
First non repeated char: c
First non repeated char: 1
translation_table_example
Before: Such is this simple string sample....Wowzers!
After: S5ch 3s th3s s3mpl2 str3ng s1mpl2....W4wz2rs!
Before: Such is this simple string sample....Wowzers!
After: S5ch 3s th3s s3mpl2 str3ng s1mpl2....W4wz2rs!
Before: Such is this simple string sample....Wowzers!
After: S5ch 3s th3s s3mpl2 str3ng s1mpl2....W4wz2rs!
Before: Such is this simple string sample....Wowzers!
After: S5ch 3s th3s s3mpl2 str3ng s1mpl2....W4wz2rs!
Before: Such is this simple string sample....Wowzers!
After: S5ch 3s th3s s3mpl2 str3ng s1mpl2....W4wz2rs!
find_n_consecutive_example
Result-01: [1] Location: [0]] Length: [1]
Result-02: [22] Location: [2]] Length: [2]
Result-03: [333] Location: [5]] Length: [3]
Result-04: [4444] Location: [9]] Length: [4]
Result-05: [55555] Location: [14]] Length: [5]
Result-06: [666666] Location: [20]] Length: [6]
Result-07: [7777777] Location: [27]] Length: [7]
Result-08: [88888888] Location: [35]] Length: [8]
Result-09: [999999999] Location: [44]] Length: [9]
Result-01: [a] Location: [0]] Length: [1]
Result-02: [bB] Location: [2]] Length: [2]
Result-03: [cCc] Location: [5]] Length: [3]
Result-04: [dDdD] Location: [9]] Length: [4]
Result-05: [EeEeE] Location: [14]] Length: [5]
Result-06: [fFfFfF] Location: [20]] Length: [6]
Result-07: [gGgGgGg] Location: [27]] Length: [7]
Result-08: [HhHhHhHh] Location: [35]] Length: [8]
Result-09: [IiIiIiIiI] Location: [44]] Length: [9]
split_on_consecutive_example
1 Consecutive digits: 1 2 2 3 3 3 4 4 4 4 5 5 5 5 5 6 6 6 6 6 6 7 7 7 7 7 7 7 8 9 9 0 0 0 1 1 1 1 2 2 2 2 2 3 3 3 3 3 3 4 4 4 4 4 4 4
2 Consecutive digits: 22 33 44 44 55 55 66 66 66 77 77 77 99 00 11 11 22 22 33 33 33 44 44 44
3 Consecutive digits: 333 444 555 666 666 777 777 000 111 222 333 333 444 444
4 Consecutive digits: 4444 5555 6666 7777 1111 2222 3333 4444
5 Consecutive digits: 55555 66666 77777 22222 33333 44444
6 Consecutive digits: 666666 777777 333333 444444
1 Consecutive letters: A B B C C C D D D D E E E E E F F F F F F G G G G G G G H I I J J J K K K K L L L L L M M M M M M N N N N N N N
2 Consecutive letters: BB CC DD DD EE EE FF FF FF GG GG GG II JJ KK KK LL LL MM MM MM NN NN NN
3 Consecutive letters: CCC DDD EEE FFF FFF GGG GGG JJJ KKK LLL MMM MMM NNN NNN
4 Consecutive letters: DDDD EEEE FFFF GGGG KKKK LLLL MMMM NNNN
5 Consecutive letters: EEEEE FFFFF GGGGG LLLLL MMMMM NNNNN
6 Consecutive letters: FFFFFF GGGGGG MMMMMM NNNNNN
index_of_example
Index of pattern[0123456789ABC]: 0
Index of pattern[123456789ABC]: 1
Index of pattern[23456789ABC]: 2
Index of pattern[3456789ABC]: 3
Index of pattern[456789ABC]: 4
Index of pattern[56789ABC]: 5
Index of pattern[6789ABC]: 6
Index of pattern[789ABC]: 7
Index of pattern[89ABC]: 8
Index of pattern[9ABC]: 9
Index of pattern[xyz]: 4294967295
truncatedint_example
i = -1234
i = -1234
u = 1234
i = -1234
u = 1234
real    0m0.248s
user    0m0.080s
sys     0m0.024s
  • Profile:


Flat profile:
Each sample counts as 0.01 seconds.
 %   cumulative   self              self     total          
time   seconds   seconds    calls  ms/call  ms/call  name   
83.33      0.05     0.05  1000008     0.00     0.00  unsigned int boost::uniform_int<unsigned int>::generate<boost::random::detail::pass_through_engine<boost::random::detail::pass_through_engine<boost::random::mersenne_twister<unsigned int, 32, 624, 397, 31, 2567483615u, 11, 7, 2636928640u, 15, 4022730752u, 18, 3346425566u>&> > >(boost::random::detail::pass_through_engine<boost::random::detail::pass_through_engine<boost::random::mersenne_twister<unsigned int, 32, 624, 397, 31, 2567483615u, 11, 7, 2636928640u, 15, 4022730752u, 18, 3346425566u>&> >&, unsigned int, unsigned int, unsigned int)
16.67      0.06     0.01        1    10.00    60.00  strtk::generate_random_data(unsigned char*, unsigned int, unsigned int, unsigned int)
 0.00      0.06     0.00     1642     0.00     0.00  boost::random::mersenne_twister<unsigned int, 32, 624, 397, 31, 2567483615u, 11, 7, 2636928640u, 15, 4022730752u, 18, 3346425566u>::twist(int)
 0.00      0.06     0.00      979     0.00     0.00  strtk::text::is_digit(char)
 0.00      0.06     0.00      978     0.00     0.00  strtk::text::is_letter(char)

Assignment 2

Assignment 3