Home | History | Annotate | Download | only in vendor
      1 HEAP PROFILER
      2 
      3 1) Fix heap profiling under all STLs
      4    * Find out how to force non-glibc STL libraries to call new() and
      5      delete() for every allocation / deallocation.
      6    * Make heap profiler ignore STL-internal allocations for those
      7      libraries under which we cannot profile accurately, so we only
      8      see object-level leaks.
      9 2) Remove dependency on tcmalloc?
     10 3) Port to non-linux O/Ses (right now code uses /proc for library info)
     11 4) Port to non-x86 architectures (locking code in spinlock is x86-specific)
     12 5) Port to C?
     13 6) Figure out how to get setenv() to work properly before main() in
     14    shared libaries, and get rid of the profile-naming hack once we
     15    do.  (See HeapProfiler::Init().)
     16 
     17 
     18 HEAP CHECKER
     19 
     20 1) Remove requirement that the heap-checker must be linked last into
     21    an application (hard! -- it needs its global constructor to run
     22    first)
     23 
     24 TCMALLOC
     25 
     26 1) Implement mallinfo/mallopt
     27 2) Have tcmalloc work correctly when libpthread is not linked in
     28    (currently working for glibc, could use other libc's too)
     29 3) Return memory to the system when requirements drop
     30 4) Explore coloring allocated objects to avoid cache conflicts
     31 5) Explore biasing reclamation to larger addresses
     32 6) Add contention stats to a synchronization.cc (can do spinlocks,
     33    but threads? -- may have to provide our own thread implementation)
     34 
     35 CPU PROFILER
     36 
     37 1) Figure out how to get setenv() to work properly before main() in
     38    shared libaries(), and get rid of the profile-naming hack once we
     39    do.  (See Profiler::GetUniquePathFromEnv().)
     40 2) Resolve crashing problems on x86_64 (see README)
     41 
     42 STACKTRACE
     43 
     44 1) Remove dependency on linux/x86
     45 
     46 ---
     47 11 March 2008
     48