[jboss-dev] xb in start up time
Alexey Loubyansky
alexey.loubyansky at redhat.com
Wed Oct 7 09:40:19 EDT 2009
I've added JAXB to the mix and modified the test.
Fast jaxb shows the best time (even on the first warm up run).
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4259154
Alexey Loubyansky wrote:
> I've run simple comparison tests for fastjaxb from resteasy and xb based
> on the "person" test from fastjaxb.
> The results don't look that promising for fastjaxb, especially taking
> into account its binding features at this point are still primitive.
>
> repetitions - number of unmarshallings of Person
> total - total time in ms for all the repetitions
> avg - average time ms for single repetition
>
> repetitions 1
> fast jaxb total=139, avg=139.0
> xb total=47, avg=47.0
>
> repetitions 10
> fast jaxb total=151, avg=15.1
> xb total=106, avg=10.6
>
> repetitions 100
> fast jaxb total=249, avg=2.49
> xb total=286, avg=2.86
>
> repetitions 1000
> fast jaxb total=1057, avg=1.057
> xb total=1402, avg=1.402
>
> I posted the test code on the forums if you want to review
> http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4257880
>
> Bill Burke wrote:
>> I already looked into serializing bindings with JBossXB. Binding time
>> was slower although I didn't try to optimize this and really just made
>> everything serializable.
>>
>> I really think we should look into XJC generated models as they use the
>> ObjectFactory pattern which is may be much faster than class introspection.
>>
>> I also *don't* think you are going to get Unmarshalling times down.
>> JBossXB was *very* comparable to Sun's JAXB implementation.
>>
>> The "fast-jaxb" stuff I did (code generation) has no overhead since is
>> purely code generation. It also does no reflection. I'd like to see
>> how XJC generated code improves anything if at all before persuing this
>> further.
>>
>> Alexey Loubyansky wrote:
>>> I'll continue on the forums
>>> http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4255559
>>>
>>> Alexey Loubyansky wrote:
>>>> To get an idea of what's taking time in XB during the AS start-up, I
>>>> added simple time checks for three things:
>>>> - creation of unmarshaller instances (parsers)
>>>> - schema binding (parsing of JBossXB/JAXB annotations)
>>>> - unmarshalling (parsing xml + assembling the Java graph)
>>>>
>>>> I started the default AS configuration 10 times and here are the average
>>>> results.
>>>>
>>>> AS start-up time: 31226 ms
>>>> Init unmarshallers (94 instances): 99 ms
>>>> Binding (13 schemas): 1194 ms
>>>> Unmarshalling (71 files): 1764 ms
>>>>
>>>> Total xb time: 3057 ms
>>>> Which is around 10%.
>>>>
>>>> I think first, I'm going to look into serializing/precompiling bindings,
>>>> e.g. metadata projects could already include in the releases serialized
>>>> schema bindings.
>>>> _______________________________________________
>>>> jboss-development mailing list
>>>> jboss-development at lists.jboss.org
>>>> https://lists.jboss.org/mailman/listinfo/jboss-development
>>> _______________________________________________
>>> jboss-development mailing list
>>> jboss-development at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/jboss-development
> _______________________________________________
> jboss-development mailing list
> jboss-development at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/jboss-development
More information about the jboss-development
mailing list