[prev in list] [next in list] [prev in thread] [next in thread] 

List:       bro
Subject:    Re: [Bro] CMake/Google Perftools CPUProfiler
From:       Gilbert Clark <gc355804 () ohio ! edu>
Date:       2011-11-19 21:13:44
Message-ID: 4EC81C08.1050207 () ohio ! edu
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


Examining at FindGooglePerftools, looks like it only uses tcmalloc.  The 
attached patch should change this to use tcmalloc_and_profiler instead.

James, mind opening an issue for this on the tracker?

Thanks,
Gilbert

On 11/19/2011 2:08 PM, James Swaro wrote:
> The Google Perftools CPUProfiler (lprofiler) does not seem to be 
> linked into bro when perftools is enabled. Is this an error or is it 
> intentional?
>
> Is there an alternate flag available to include the CPU Profiler?
>
> configured with --enable-perftools option, rebuilt and installed, no 
> lprofiler exists.
>
> $ ldd /usr/local/bro/bin/bro
> linux-gate.so.1 =>  (0xb77bf000)
> libpcap.so.0.8 => /usr/lib/i386-linux-gnu/libpcap.so.0.8 (0xb7770000)
> libssl.so.1.0.0 => /usr/lib/i686/cmov/libssl.so.1.0.0 (0xb7723000)
> libcrypto.so.1.0.0 => /usr/lib/i686/cmov/libcrypto.so.1.0.0 (0xb7574000)
> libz.so.1 => /usr/lib/libz.so.1 (0xb7560000)
> libtcmalloc.so.0 => /usr/local/lib/libtcmalloc.so.0 (0xb74dc000)
> libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xb73ee000)
> libm.so.6 => /lib/i386-linux-gnu/i686/cmov/libm.so.6 (0xb73c8000)
> libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xb73aa000)
> libc.so.6 => /lib/i386-linux-gnu/i686/cmov/libc.so.6 (0xb7250000)
> libpthread.so.0 => /lib/i386-linux-gnu/i686/cmov/libpthread.so.0 
> (0xb7237000)
> libdl.so.2 => /lib/i386-linux-gnu/i686/cmov/libdl.so.2 (0xb7233000)
> /lib/ld-linux.so.2 (0xb77c0000)
>
> Thoughts?
>
> Thanks!
>
> -- 
> *- *James Swaro *
> *
>


[Attachment #5 (text/html)]

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#ffffff">
    Examining at FindGooglePerftools, looks like it only uses tcmalloc.&nbsp;
    The attached patch should change this to use tcmalloc_and_profiler
    instead.<br>
    <br>
    James, mind opening an issue for this on the tracker?<br>
    <br>
    Thanks,<br>
    Gilbert<br>
    <br>
    On 11/19/2011 2:08 PM, James Swaro wrote:
    <blockquote
cite="mid:CAAG4iqkq1D=9LapFnVBT8LBaqG2yZHR2yOTHy+KDD-XLEAbKHQ@mail.gmail.com"
      type="cite">
      <div>
        <div>The Google Perftools CPUProfiler (lprofiler) does not seem
          to be linked into bro when perftools is enabled. Is this an
          error or is it intentional?&nbsp;</div>
      </div>
      <div><br>
      </div>
      <div>Is there an alternate flag available to include the CPU
        Profiler?</div>
      <div><br>
      </div>
      <div>configured with --enable-perftools option, rebuilt and
        installed, no lprofiler exists.&nbsp;</div>
      <div><br>
      </div>
      <div>
        <div>$ ldd /usr/local/bro/bin/bro</div>
        <div><span class="Apple-tab-span" style="white-space: pre;"> </span>linux-gate.so.1
          =&gt; &nbsp;(0xb77bf000)</div>
        <div><span class="Apple-tab-span" style="white-space: pre;"> </span>libpcap.so.0.8
          =&gt; /usr/lib/i386-linux-gnu/libpcap.so.0.8 (0xb7770000)</div>
        <div><span class="Apple-tab-span" style="white-space: pre;"> </span>libssl.so.1.0.0
          =&gt; /usr/lib/i686/cmov/libssl.so.1.0.0 (0xb7723000)</div>
        <div><span class="Apple-tab-span" style="white-space: pre;"> </span>libcrypto.so.1.0.0
          =&gt; /usr/lib/i686/cmov/libcrypto.so.1.0.0 (0xb7574000)</div>
        <div><span class="Apple-tab-span" style="white-space: pre;"> </span>libz.so.1
          =&gt; /usr/lib/libz.so.1 (0xb7560000)</div>
        <div><span class="Apple-tab-span" style="white-space: pre;"> </span>libtcmalloc.so.0
          =&gt; /usr/local/lib/libtcmalloc.so.0 (0xb74dc000)</div>
        <div><span class="Apple-tab-span" style="white-space: pre;"> </span>libstdc++.so.6
          =&gt; /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xb73ee000)</div>
        <div><span class="Apple-tab-span" style="white-space: pre;"> </span>libm.so.6
          =&gt; /lib/i386-linux-gnu/i686/cmov/libm.so.6 (0xb73c8000)</div>
        <div><span class="Apple-tab-span" style="white-space: pre;"> </span>libgcc_s.so.1
          =&gt; /lib/i386-linux-gnu/libgcc_s.so.1 (0xb73aa000)</div>
        <div><span class="Apple-tab-span" style="white-space: pre;"> </span>libc.so.6
          =&gt; /lib/i386-linux-gnu/i686/cmov/libc.so.6 (0xb7250000)</div>
        <div><span class="Apple-tab-span" style="white-space: pre;"> </span>libpthread.so.0
          =&gt; /lib/i386-linux-gnu/i686/cmov/libpthread.so.0
          (0xb7237000)</div>
        <div><span class="Apple-tab-span" style="white-space: pre;"> </span>libdl.so.2
          =&gt; /lib/i386-linux-gnu/i686/cmov/libdl.so.2 (0xb7233000)</div>
        <div><span class="Apple-tab-span" style="white-space: pre;"> </span>/lib/ld-linux.so.2
          (0xb77c0000)</div>
      </div>
      <div><br>
      </div>
      <div>Thoughts?</div>
      <div><br>
      </div>
      <div>Thanks!</div>
      <div><br>
      </div>
      -- <br>
      <div><b>- </b>James Swaro&nbsp;<b><br>
        </b></div>
      <br>
    </blockquote>
    <br>
  </body>
</html>

["tcmalloc_prof.patch" (text/plain)]

diff --git a/FindGooglePerftools.cmake b/FindGooglePerftools.cmake
index 7ddd5a5..f611e77 100644
--- a/FindGooglePerftools.cmake
+++ b/FindGooglePerftools.cmake
@@ -22,7 +22,7 @@ find_path(GooglePerftools_ROOT_DIR
 )

 find_library(GooglePerftools_LIBRARIES
-    NAMES tcmalloc
+    NAMES tcmalloc_and_profiler
     HINTS ${GooglePerftools_ROOT_DIR}/lib
 )


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic