[pypy-svn] r58071 - pypy/build/doc

hpk at codespeak.net hpk at codespeak.net
Thu Sep 11 18:51:19 CEST 2008


Author: hpk
Date: Thu Sep 11 18:51:16 2008
New Revision: 58071

Added:
   pypy/build/doc/benchmark_memory_gcnotes.txt   (contents, props changed)
Modified:
   pypy/build/doc/benchmark_memory.txt   (contents, props changed)
Log:
* shifting gc notes to a separate doc for now as discussed with fijal
  (it's too unmotivated in the benchmark_memory.txt section for now)

* shifting "measuring memory" on linux to the implementation section  
  where we also discuss /proc/pid/smaps afterwards, kind of serves
  as motiviation for this.  

* some more boilerplate / warnings here and there    



Modified: pypy/build/doc/benchmark_memory.txt
==============================================================================
--- pypy/build/doc/benchmark_memory.txt	(original)
+++ pypy/build/doc/benchmark_memory.txt	Thu Sep 11 18:51:16 2008
@@ -1,5 +1,14 @@
+===============================================
+Benchmarking Memory usage of Python/PyPy 
+===============================================
+
+$Id$
 
-XXX draft doc, needs discussion, review
+XXX this is a draft incomplete document
+XXX next step is to lay out and write
+XXX the benchmarking infrastructure and
+XXX to incrementally complete and update
+XXX the document
 
 what we want to measure
 ===============================================
@@ -59,8 +68,8 @@
   * an app involving c-extensions? 
   * ask around on pypy-dev for example apps 
 
-Interpreters 
----------------
+Interpreter instances to consider for measurement
+----------------------------------------------------
 
 * CPython 2.5  
 * pypy-c --opt=mem
@@ -69,6 +78,11 @@
 We want to select and optimize good underlying settings for 
 PyPy's choices regarding "--opt=mem". 
 
+XXX consider more specific target environments 
+
+Implementation 
+===========================
+
 Measuring memory usage
 ------------------------
 
@@ -90,37 +104,14 @@
 swapping.  When Y and Z agree, we found a good way to measure
 memory usage.
 
-notes about memory-saving GCs
-===============================
-
-XXX go into more detail, discuss which pypy GCs we want to try
-XXX [fijal] I think both approaches are worth trying. We need to see
-    how they behave or try to think how much memory it'll be needed for
-    a GC header. note that deferred refcounting without nursery is needed
-    for deferred refcounting with nursery (just because it's easier to have
-    this in steps). We also want to consider impacts of fragmentation and
-    how underlaying C library handles stuff (ie do we use obmalloc or no.
-    does it return memory to the OS or no for small objects etc.)
-
-* squeak-like mark-compact collector
-
-* deferred refcounting strategy
-
-* deferred refcounting with a nursery
-
-
-Implementation 
-===========================
-
 Understanding linux /proc/pid/smaps info
 -------------------------------------------
 
 XXX please review, correct, complete so we get to a shared good understanding
 
-The most detailed info apparently is provided 
-by /proc/PID/smaps, starting from linux 2.6.14. 
-Here is an example output of running
-"python2.5" on a linux 2.6.24 ubuntu machine::
+The most detailed info is provided by /proc/PID/smaps, 
+starting from linux 2.6.14.  Here is an example output 
+of running "python2.5" on a linux 2.6.24 ubuntu machine::
 
 
     08048000-08140000 r-xp 00000000 08:01 89921      /usr/bin/python2.5
@@ -200,25 +191,10 @@
 and measure memory foot print - producing data that can
 be parsed back and used for producing graphs, tables etc. 
 
-See also tools for maemo: 
+Cross-Check also for tools against maemo: 
 
 http://maemo.org/development/tools/doc/diablo/sp-smaps-measure/
 http://maemo.org/development/tools/doc/diablo/sp-memusage/
 
-
-XXX NOTES XXXX
------------------
-notes on scenarios from fijal which need to be checked if they
-are sufficiently reflected in the above sections. 
-
-1. Measure private memory when no other interpreter's
-   process exist.
-
-2. Measure private memory with another interprerter running at the same time. 
-
-3. Measure amount of private memory owned by process that was forked from
-   other interpreter process.
-
-4. Measure total RAM usage/RSS size in case process is running vs
-   total RAM usage when process is not running.
+XXX discuss and write toolchain
 

Added: pypy/build/doc/benchmark_memory_gcnotes.txt
==============================================================================
--- (empty file)
+++ pypy/build/doc/benchmark_memory_gcnotes.txt	Thu Sep 11 18:51:16 2008
@@ -0,0 +1,20 @@
+
+notes about memory-saving GCs
+===============================
+
+XXX go into more detail, discuss which pypy GCs we want to try
+XXX [fijal] I think both approaches are worth trying. We need to see
+    how they behave or try to think how much memory it'll be needed for
+    a GC header. note that deferred refcounting without nursery is needed
+    for deferred refcounting with nursery (just because it's easier to have
+    this in steps). We also want to consider impacts of fragmentation and
+    how underlaying C library handles stuff (ie do we use obmalloc or no.
+    does it return memory to the OS or no for small objects etc.)
+
+* squeak-like mark-compact collector
+
+* deferred refcounting strategy
+
+* deferred refcounting with a nursery
+
+



More information about the Pypy-commit mailing list