no my test was not multi-refed. I have seen it passed one multi-ref test,
but died on the other, so my guess thats where the bug is.

> -----Original Message-----
> From: R J Scheuerle Jr [mailto:[EMAIL PROTECTED]]
> Sent: Friday, February 15, 2002 7:18 AM
> To: [EMAIL PROTECTED]
> Subject: Re: Experiments on type serialization. (feedback 
> very welcome)
> 
> 
> Thanks for the work.
> 
> I don't have much time today to look at your changes.
> 
> A couple of questions:
>   1) Do your changes work with multi-ref'd data (i.e. instead 
> of a map of
> strings, a map of multi-ref'd structs)
>   2) Do you know why the functional test died?  Could you temporarily
> comment out that test and see if other ones die.
> 
> Thanks
> Rich Scheuerle
> XML & Web Services Development
> 512-838-5115  (IBM TL 678-5115)
> 
> 
>                                                               
>                                                                     
>                       Taras Shkvarchuk                        
>                                                                     
>                       <tarass@grandcent        To:       
> "'[EMAIL PROTECTED]'" <[EMAIL PROTECTED]>         
>            
>                       ral.com>                 cc:            
>                                                                     
>                                                Subject:  
> Experiments on type serialization. (feedback very welcome)    
>            
>                       02/15/2002 07:32                        
>                                                                     
>                       AM                                      
>                                                                     
>                       Please respond to                       
>                                                                     
>                       axis-dev                                
>                                                                     
>                                                               
>                                                                     
>                                                               
>                                                                     
> 
> 
> 
> 
> Right now AXIS is always building a DOM like structure from 
> MessageElement
> object. On top of that all SAX events are recorded for type
> deserialization.
> This leads to one memory hungry application.
> 
> I was running some tests to serialize a Map of Strings (using my own
> deserializer for testing purposes).
> On a 6MB XML sample with 55618 map nodes, AXIS took 67.66MB 
> of ram, and ran
> for 8.7sec on a PIII-850.
> On a 1MB body with 10618 nodes, AXIS took 13.6MB, and ran for 2.3 sec.
> This is raw parser time not including transport, etc... whole 
> transaction
> is
> attached at the end of the message.
> 
> What I was playing with was direct serialization into types, and also
> ability to turn off SAX recording.
> With my patches I was able to serialize 6MB message using 
> only 10.0MB in
> 5.52sec
> And with SAX recoding 31.5MB was used in 6.65 sec.
> 
> There maybe not such a dramatic speed improvement, but memory 
> utilization
> is
> much better. Java's garbage collector will be happy :)
> 
> My changes passed functional tests partially (dies on the one with
> phasers).
> So there is some more debugging for me to do, but the idea seems to be
> functional.
> you can control it from MessageContext by calling:
> msgContext.setResolveTypes(true);
> msgContext.setRecordingEvents(false);
> 
> I will attach the complete source of the changes files, if 
> anyone feels
> like
> looking at what ever part of it is working.
> 
> Bellow is a breakdown of 2 tests.
> in this tests there was 1 text/plain attachment with contents of
> "ATTACHMENT
> DATA"
> Data was not read out of them, just counted number of 
> attachments present.
> 
> ****************************************************
> 6MB original:
> [PERFLOG] START - used 0.0 KB in 0.0 sec
> [PERFLOG] Req Ready - used 713.1328125 KB in 1.432 sec
> [PERFLOG] Invoked - used 21.133033752441406 MB in 2.414 sec
> Attchment count:1
> [PERFLOG] AttachExtracted - used 0.9609375 KB in 0.0 sec
> ResolveTypes:false
> Record Events:true
> [PERFLOG] Extracted ENV - used 38.475128173828125 MB in 5.157 sec
> [PERFLOG] Have Node - used 0.8359375 KB in 0.0 sec
> Total elements in list:55618
> [PERFLOG] Finished - used 29.194740295410156 MB in 3.565 sec
> [PERFLOG] TOTAL - used 89.50175476074219 MB in 12.568 sec
> 
> ****************************************************
> 1MB original:
> [PERFLOG] START - used 0.0 KB in 0.0 sec
> [PERFLOG] Req Ready - used 1.3937301635742188 MB in 1.432 sec
> [PERFLOG] Invoked - used 673.7265625 KB in 3.405 sec
> Attchment count:1
> [PERFLOG] AttachExtracted - used 0.8828125 KB in 0.0 sec
> ResolveTypes:false
> Record Events:true
> [PERFLOG] Extracted ENV - used 6.904670715332031 MB in 1.573 sec
> I am of type:null
> [PERFLOG] Have Node - used 0.828125 KB in 0.0 sec
> Total elements in list:10618
> [PERFLOG] Finished - used 6.6721954345703125 MB in 0.771 sec
> [PERFLOG] TOTAL - used 15.630882263183594 MB in 7.181 sec
> 
> 
> ****************************************************
> 6MB direct serialization w/o SAX recoding:
> [PERFLOG] START - used 0.0 KB in 0.0 sec
> [PERFLOG] Req Ready - used 713.1328125 KB in 1.402 sec
> [PERFLOG] Invoked - used 21.133033752441406 MB in 2.374 sec
> Attchment count:1
> [PERFLOG] AttachExtracted - used 0.9609375 KB in 0.0 sec
> ResolveTypes:true
> Record Events:false
> [PERFLOG] Extracted ENV - used 10.00848388671875 MB in 5.528 sec
> [PERFLOG] Have Node - used 0.828125 KB in 0.0 sec
> Total elements in list:55618
> [PERFLOG] Finished - used 0.796875 KB in 0.0 sec
> [PERFLOG] TOTAL - used 31.84105682373047 MB in 9.384 sec
> 
> 
> ****************************************************
> 6MB direct serialization with SAX recoding:
> 
> [PERFLOG] START - used 0.0 KB in 0.0 sec
> [PERFLOG] Req Ready - used 713.1328125 KB in 1.582 sec
> [PERFLOG] Invoked - used 21.133033752441406 MB in 2.403 sec
> Attchment count:1
> [PERFLOG] AttachExtracted - used 0.9609375 KB in 0.0 sec
> ResolveTypes:true
> Record Events:true
> [PERFLOG] Extracted ENV - used 31.537750244140625 MB in 6.65 sec
> [PERFLOG] Have Node - used 0.8359375 KB in 0.0 sec
> Total elements in list:55618
> [PERFLOG] Finished - used 0.796875 KB in 0.0 sec
> [PERFLOG] TOTAL - used 53.370330810546875 MB in 10.705 sec
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> #### BodyBuilder.java has been removed from this note on 
> February 15 2002
> by R J Scheuerle Jr
> #### MessageElement.java has been removed from this note on 
> February 15
> 2002 by R J Scheuerle Jr
> #### RPCHandler.java has been removed from this note on 
> February 15 2002 by
> R J Scheuerle Jr
> #### SOAPHandler.java has been removed from this note on 
> February 15 2002
> by R J Scheuerle Jr
> #### DeserializationContext.java has been removed from this note on
> February 15 2002 by R J Scheuerle Jr
> #### DeserializationContextImpl.java has been removed from 
> this note on
> February 15 2002 by R J Scheuerle Jr
> #### DeserializerImpl.java has been removed from this note on 
> February 15
> 2002 by R J Scheuerle Jr
> #### SerializationContextImpl.java has been removed from this note on
> February 15 2002 by R J Scheuerle Jr
> #### MessageContext.java has been removed from this note on 
> February 15
> 2002 by R J Scheuerle Jr
> 
> 

Reply via email to