Hi, The main reason of patch is reducing memory allocation overhead and speedup memory management.
The patch requires full PHP rebuild including "buildconf". Now "configure" has no "--disable-zend-memory-manager" option, but it has "--enable-malloc-mm" instead. It is enabled by default in DEBUG build and disabled by default in RELEASE built. It allows select malloc/emalloc at runtime. So you can use internal and external memory debuggers without recompilation. $ sapi/cli/php -r 'leak();' $ USE_ZEND_ALLOC=0 valgrind --leak-check=full -r 'leak();' The patch allows tweaking memory manager with ZEND_MM_MEM_TYPE and ZEND_MM_SEG_SIZE environment variables. Default values are "malloc" and "256K". Dependent on target system you can also use "mmap_anon", "mmap_zero" and "win32" storage managers. $ ZEND_MM_MEM_TYPE=mmap_anon ZEND_MM_SEG_SIZE=1M sapi/cli/php Thanks. Dmitry. > -----Original Message----- > From: Dmitry Stogov [mailto:[EMAIL PROTECTED] > Sent: Tuesday, July 18, 2006 1:07 PM > To: php-cvs@lists.php.net > Subject: [PHP-CVS] cvs: php-src(PHP_5_2) / NEWS /ext/standard > var.c /main main.c /sapi/apache mod_php5.c > /sapi/apache2filter sapi_apache2.c /sapi/apache2handler > sapi_apache2.c /sapi/apache_hooks mod_php5.c /win32/build > config.w32 ZendEngine2 > > > dmitry Tue Jul 18 09:06:33 2006 UTC > > Modified files: (Branch: PHP_5_2) > /php-src NEWS > /ZendEngine2 Zend.m4 zend.c zend_API.h zend_alloc.c > zend_alloc.h > zend_compile.c zend_config.w32.h zend_execute.c > zend_fast_cache.h zend_globals.h > zend_globals_macros.h > zend_mm.c zend_mm.h zend_operators.c > /php-src/ext/standard var.c > /php-src/main main.c > /php-src/sapi/apache mod_php5.c > /php-src/sapi/apache2filter sapi_apache2.c > /php-src/sapi/apache2handler sapi_apache2.c > /php-src/sapi/apache_hooks mod_php5.c > /php-src/win32/build config.w32 > Log: > New memory manager > > > -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php