I did some extended benchmarking and builded a magicwand myself (hell!!!). Tested with 4000 iterations on ab.exe as described in my first post (Apache/2.0.53 - Windows XP SP2).
Here is a summary of memory consumption:
- PHP-4.4.0. : 98.4 Kb --> 1 Gb
- PHP-4.4.2.2 : 98.4 Kb --> 1 Gb
- PHP-4.4.2.2 * : 99.1 Kb --> 112,7 Kb
- PHP-4.4.2.2 ** : 101.2 Kb --> 114.8 Kb
The first two are tested with php-4.4.0_magickwand_q16_st.dll, the *official* binaries.
The third one is compiled without
UseEmbeddableMagick
The fourth one is compiled with
UseEmbeddableMagick
Conclusion
So, compile magicwand yourself and get rid of the (absurd) memory leaking.
Here is the ReleaseTS preprocessor definitons I used:
Code: Select all
ZEND_DEBUG=0,COMPILE_DL_MAGICKWAND,ZTS=0,ZEND_WIN32,PHP_WIN32,_WANDLIB_,_MAGICKLIB_
And these are the libraries included:
Code: Select all
CORE_RL_bzlib_.lib CORE_RL_coders_.lib CORE_RL_filters_.lib CORE_RL_jbig_.lib CORE_RL_jp2_.lib CORE_RL_jpeg_.lib CORE_RL_lcms_.lib CORE_RL_libxml_.lib CORE_RL_magick_.lib CORE_RL_png_.lib CORE_RL_tiff_.lib CORE_RL_ttf_.lib CORE_RL_wand_.lib CORE_RL_wmf_.lib CORE_RL_zlib_.lib php4ts.lib wsock32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib
Nb
(Pardon in my first post PHP version was 4.4.0 and NOT 4.3.10)