I have been working on a POC that centers on Javascript and I chose
chromium as the driver and development base.

in this POC many small scripts may be executed in different contexts
and/or the same context multiple times depending on input data
(scripts may invoke other scripts indirectly through object methods).
The same script set may be reexecuted multiple times indirectly
depending on user input cues.

In my initial implementation I reuse the object from
ScriptData::PreCompile to facilitate faster compilation when
required.  This design functions and performs quite well.

I have updated my code base from chromium version 21525 of mid-July to
version 35622 to take advantage of the "new context-independent script
objects that can be run in any number of contexts" as described in
Christian Plesner's announcement from August 17 New v8 API functions
http://groups.google.com/group/v8-users/index/browse_frm/thread/d31782722fe19f2c?_done=%2Fgroup%2Fv8-users%2Fbrowse_frm%2Fthread%2Fd31782722fe19f2c%3Fpli%3D1%26&pli=1.

With this new functionality in place I refactored the codebase
discontinuing use of ScriptData and instead reusing Scripts as
described in the announcement.

I notice that version 35622 executes significantly slower than the
prior version.  I'm profiling a slow degradation in performance with
each passing reexecution of the same code.  i.e. reexecuting the same
Script instance set in memory.  correspondingly, the executable memory
usage exhibits a slow continuous increase.  upon reloading the JS
source the memory usage resets and the issue repeats.

using my prior code base that creates new Scripts with ScriptData with
each invocation, I am experiencing the same slow degradation in
performance with the newer release.

my version 21525 implementation does not exhibit this behavior.

has anyone else noticed this?  can you speculate on the source of this
behavior?  please tell me what more info you may need to make an
assessment.

-- 
v8-users mailing list
[email protected]
http://groups.google.com/group/v8-users

Reply via email to