Hello Vitaly,
I tried with Xerces 3.1.4, and I get and big improvement in document loading, 
as described in https://issues.apache.org/jira/browse/XERCESC-2211, something 
between 3x and 4x.
However I can not get XQilla to build with it.

But anyway: since this is a new important project, it does NOT seem to me a 
good idea to choose a 6 years old dead branch, and to stick to it for years.
I am very surprised that authors do not take in consideration to rewrite the 
code to optimize it, as there is a tremendous slow down between 3.1.x and 3.2.x.



> -----Messaggio originale-----
> Da: Vitaly Prapirny <vitaly.prapi...@gmail.com>
> Inviato: giovedì 21 luglio 2022 11:32
> A: c-users@xerces.apache.org
> Oggetto: Re: Xerces-C++ and XQilla bad performance
> 
> So you can try version 3.1.4 and see if it makes things better in your case.
> 
> Good luck!
>    Vitaly
> 
> 
> On Thu, Jul 21, 2022 at 12:14 PM Davide Capodaglio <
> davide.capodag...@axelsw.it> wrote:
> 
> > I am using latest versions, Xerces-C++ 3.2.3 and XQilla 2.3.4.
> > So probably I am seeing the dynamic_cast impact (but I can not do
> > anything obviously).
> >
> > I am using no schema, no validation, no namespaces.
> > Thanks
> > Davide
> >
> >
> > > -----Messaggio originale-----
> > > Da: Vitaly Prapirny <vitaly.prapi...@gmail.com>
> > > Inviato: giovedì 21 luglio 2022 10:46
> > > A: c-users@xerces.apache.org
> > > Oggetto: Re: Xerces-C++ and XQilla bad performance
> > >
> > > Hi Davide,
> > >
> > > Other factors affecting xerces performance are xerces version (
> > > https://issues.apache.org/jira/browse/XERCESC-2211) and usage of
> > > validation (https://xerces.apache.org/xerces-c/schema-3.html).
> > >
> > > Good luck!
> > >    Vitaly
> > >
> > >
> > > On Thu, Jul 21, 2022 at 11:34 AM Davide Capodaglio <
> > > davide.capodag...@axelsw.it> wrote:
> > >
> > > > Hi Roger,
> > > > I already tried to compile xerces with ICU but it makes no
> > > > difference at all.
> > > > However on Windows platform also MSXML internally converts all to
> > > > UTF-16 (because everything on Windows nowadays uses Unicode with
> > > > wchar_t=UTF-16), and Xerces uses internal Windows API, but I see
> > > > more than a 2x slowdown then MSXML for a just a load of a document.
> > > >
> > > > But, as I said my big performance problem is with XQilla queries.
> > > >
> > > > Also in my benchmarks of the selectNodes() I am already specifying
> > > > u16 literals.
> > > >
> > > > I will try to use valgrind, but I have very few hopes at the moment...
> > > >
> > > > Thanks
> > > > Davide
> > > >
> > > >
> > > > > -----Messaggio originale-----
> > > > > Da: Roger Leigh <rle...@codelibre.net>
> > > > > Inviato: giovedì 21 luglio 2022 01:49
> > > > > A: c-users@xerces.apache.org
> > > > > Oggetto: RE: Xerces-C++ and XQilla bad performance
> > > > >
> > > > > Hi Davide,
> > > > >
> > > > > I would suggest running your program under valgrind with
> > > > > kcallgrind and profiling the execution.  When you view the
> > > > > results, you should see where the hotspots are.
> > > > >
> > > > > Based upon my previous profiling experiments, I suspect you'll
> > > > > find that
> > > > over
> > > > > 50% of the runtime is spent in the transcoder doing UTF-8 to
> > > > > UTF-16 conversions (and vice-versa).
> > > > >
> > > > > If this is the case, I would suggest trying a different
> > > > > transcoder and reprofiling.  This may be where the Windows
> > > > > performance
> > difference
> > > lies.
> > > > > An additional optimisation would be to reduce the number of
> > > conversions.
> > > > > For example, if you are repeatedly transcoding a UTF-8 string
> > > > > for use
> > > > with a
> > > > > function requiring UTF-16, you can cache the conversion.  Or use
> > > > > char16_t with u16 string literals.  At the expense of
> > > > > portability with older
> > > > compilers.
> > > > >
> > > > > Kind regards,
> > > > > Roger
> > > > >
> > > > > > -----Original Message-----
> > > > > > From: Davide Capodaglio <davide.capodag...@axelsw.it>
> > > > > > Sent: 20 July 2022 14:44
> > > > > > To: c-users@xerces.apache.org
> > > > > > Subject: Xerces-C++ and XQilla bad performance
> > > > > >
> > > > > > Is there any known way to optimize the performance of
> > > > > > Xerces-C++ and XQilla in both loading and XPath execution?
> > > >
> > > >
> >

Reply via email to