Are you sure this isn't because the IIS thread is still running? One thread
handles multiple requests. 

> -----Original Message-----
> From: Michael Vergoz [mailto:[EMAIL PROTECTED] 
> Sent: Tuesday, July 11, 2006 10:33 AM
> To: Dmitry Stogov; 'Andi Gutmans'; PHPdev
> Subject: Re: [PHP-DEV] FW: Help needed in benchmarking memory patch
> 
> In fact I had found some leaks it would seem that 
> ts_free_thread() after
> php_request_shutdown() solves all the problem.
> I am checking if it's bad but if not the case the SAPI ISAPI 
> should have a small modification.
> 
> mv-
> ----- Original Message -----
> From: "Dmitry Stogov" <[EMAIL PROTECTED]>
> To: "'Michael Vergoz'" <[EMAIL PROTECTED]>; "'Andi Gutmans'"
> <[EMAIL PROTECTED]>; <internals@lists.php.net>
> Sent: Tuesday, July 11, 2006 1:54 PM
> Subject: RE: [PHP-DEV] FW: Help needed in benchmarking memory patch
> 
> 
> > Hi Michael,
> >
> > The patch was tested in ZTS mode too.
> >
> > What SAPI you are talking about? (I would like to reproduce 
> the problem).
> >
> > Thanks. Dmitry.
> >
> >> -----Original Message-----
> >> From: Michael Vergoz [mailto:[EMAIL PROTECTED]
> >> Sent: Tuesday, July 11, 2006 1:22 PM
> >> To: Andi Gutmans; internals@lists.php.net
> >> Subject: Re: [PHP-DEV] FW: Help needed in benchmarking memory patch
> >>
> >>
> >> Hi aAndy
> >>
> >> > We didn't find a material difference between malloc() and mmap()
> >> > though, most probably because malloc() at these sizes
> >> actually calls
> >> > mmap().
> >> You can have good difference with the mremap() of Linux
> >> because it directly
> >> changes the vector into memory without recopying these data.
> >>
> >> --
> >> Before beginning a benchmark I would like to speak about a
> >> serious problem
> >> that I have with TSRM/MM.
> >>
> >> A S1 script carried out by thread T1 will use the same memory
> >> capacity as S2
> >> script by T2 whereas theoretically separation is obligatory.
> >> In addition to
> >> the problem of safety, that cause also a problem of
> >> management of the load
> >> memory of the process father.
> >>
> >> We define a father process P=while(1);
> >>
> >> When a process father starts it must initialize tsrm_startup(),
> >> sapi_startup() and php_module_startup(). At this time all the
> >> additional
> >> functions and objects are loaded  and usable by all script
> >> (what is normal).
> >>
> >> With the creation of a thread one associates a TSRMLS to 
> it. Then one
> >> carries out php_request_startup(), php_execute_script() and
> >> php_request_shutdown() to entirely enclose PHP/Zend.
> >>
> >> With the execution of Sx script in Tx: the variables
> >> dynamics, static and
> >> constant of this one will be stored in AG(head).
> >>
> >> The problem comes from there. It is impossible to destroy a
> >> memory which a
> >> script has just used because the process father continues to
> >> turn and nor
> >> php_request_shutdown(), php_module_shutdown(), sapi_shutdown() and
> >> tsrm_shutdown() will not be carried out AND THUS there will
> >> be a mem leak
> >>
> >> I am very annoyed by this problem, it is necessary that I
> >> find a possibility
> >> to destroy these buffer.
> >>
> >> Michael Vergoz
> >>
> >> ----- Original Message ----- 
> >> From: "Andi Gutmans" <[EMAIL PROTECTED]>
> >> To: "'Michael Vergoz'" <[EMAIL PROTECTED]>;
> >> <internals@lists.php.net>
> >> Sent: Tuesday, July 11, 2006 8:26 AM
> >> Subject: RE: [PHP-DEV] FW: Help needed in benchmarking memory patch
> >>
> >>
> >> > Sorry I didn't make clear that only the malloc()/free() 
> part works.
> >> > The
> >> > mmap() and Win32 Allocation code is commented.
> >> > We didn't find a material difference between malloc() and
> >> mmap() though,
> >> > most probably because malloc() at these sizes actually 
> calls mmap().
> >> > So really most important is for some ppl to run some
> >> benchmarks on this.
> >> >
> >> > Thx.
> >> >
> >> > Andi
> >> >
> >> >> -----Original Message-----
> >> >> From: Michael Vergoz [mailto:[EMAIL PROTECTED]
> >> >> Sent: Monday, July 10, 2006 5:25 PM
> >> >> To: Andi Gutmans; internals@lists.php.net
> >> >> Subject: Re: [PHP-DEV] FW: Help needed in benchmarking 
> memory patch
> >> >>
> >> >> Hi Andi,
> >> >>
> >> >> I appreciated to see this code which I must still 
> study. Already a
> >> >> small remark it is that the system call mremap() is not
> >> portable it
> >> >> is available only on Linux. Then the size of the segments
> >> must always
> >> >> "be paginated" - normally your code is good on this level.
> >> >> I think that a concept of kernel-memory and user-memory can
> >> >> be very interesting to study, especially in threads
> >> >> environments - that I use.
> >> >>
> >> >> I would continue to look at your code but now I will 
> sleep (04:26
> >> >> pm)!
> >> >>
> >> >> mv-
> >> >>
> >> >> ----- Original Message -----
> >> >> From: "Andi Gutmans" <[EMAIL PROTECTED]>
> >> >> To: "'Andi Gutmans'" <[EMAIL PROTECTED]>; <internals@lists.php.net>
> >> >> Sent: Monday, July 10, 2006 5:57 PM
> >> >> Subject: RE: [PHP-DEV] FW: Help needed in benchmarking 
> memory patch
> >> >>
> >> >>
> >> >> > No help??? Come on guys. I'm sure some of you can spare a
> >> >> few idle cycles
> >> >> > :)
> >> >> >
> >> >> >
> >> >> >> -----Original Message-----
> >> >> >> From: Andi Gutmans [mailto:[EMAIL PROTECTED]
> >> >> >> Sent: Friday, July 07, 2006 8:38 PM
> >> >> >> To: internals@lists.php.net
> >> >> >> Subject: [PHP-DEV] FW: Help needed in benchmarking 
> memory patch
> >> >> >>
> >> >> >> Sending 3rd time this time without the attachment.
> >> >> >> You can get the diff at http://gutmans.org/alloc.zip
> >> >> >>
> >> >> >>
> >> >> >> -----Original Message-----
> >> >> >> From: Andi Gutmans [mailto:[EMAIL PROTECTED]
> >> >> >> Sent: Thursday, July 06, 2006 11:06 PM
> >> >> >> To: 'internals@lists.php.net'
> >> >> >> Subject: Help needed in benchmarking memory patch
> >> >> >>
> >> >> >> Hi all,
> >> >> >>
> >> >> >> Attached is a patch we've been working on to improve 
> the memory
> >> >> >> management of PHP. This patch's main advantage is 
> reducing the
> >> >> >> memory footprint of PHP, and therefore allowing it to scale
> >> >> >> better. Although at low concurrencies the change seems to be
> >> >> >> negligble, while testing at higher concurrencies we saw
> >> >> >> significant improvement with this patch, mainly due to lower
> >> >> >> memory usage.
> >> >> >>
> >> >> >> We would very much appreciate if people here tested
> >> this patch and
> >> >> >> send in their results. It would help us understand if
> >> others are
> >> >> >> getting consistent results with ours, and also see
> >> whether there
> >> >> >> are any additional improvements we should make.
> >> >> >>
> >> >> >> This patch should apply cleanly to the PHP 5.2 CVS
> >> tree. There's
> >> >> >> not much tuning that needs to be done. It uses
> >> >> >> malloc() to allocate large memory blocks. You can
> >> control the size
> >> >> >> of these blocks by setting the ZEND_MM_SEG_SIZE environment
> >> >> >> variable before starting Apache/PHP. You may use K 
> or M to play
> >> >> >> around with the block size. The default we are using is 256KB
> >> >> >> which seems to be a good balance.
> >> >> >>
> >> >> >> Any feedback would be appreciated!
> >> >> >>
> >> >> >> Andi
> >> >> >>
> >> >> >> --
> >> >> >> PHP Internals - PHP Runtime Development Mailing List To
> >> >> >> unsubscribe, visit: http://www.php.net/unsub.php
> >> >> >>
> >> >> >
> >> >> > --
> >> >> > PHP Internals - PHP Runtime Development Mailing List
> >> >> > To unsubscribe, visit: http://www.php.net/unsub.php
> >> >> >
> >> >> >
> >> >>
> >> >
> >> >
> >>
> >> -- 
> >> PHP Internals - PHP Runtime Development Mailing List
> >> To unsubscribe, visit: http://www.php.net/unsub.php
> >>
> >>
> >
> > -- 
> > PHP Internals - PHP Runtime Development Mailing List
> > To unsubscribe, visit: http://www.php.net/unsub.php
> >
> >
> 

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to