On 17 Jun 2014, at 09:18, Christian Schwaderer <c_schwaderer@hotmail.com> wrote:

Hi there again!

I've now (almost) set up my XSLT 2 project and aside from the annoying crashes with the "JNI_CreateJavaVM() failed with result-5" errors* I'm quite content with Saxon/C, thinking this is the best Saxon integration for PHP programmers.

Yes still working on this.


But I'm wondering whether I could do something to improve the performance. For large selections or complicated searches the whole process takes 6 seconds at maximum, which is not very fast for a web application.

My source xml data changes rather rarely. So, I think it could be at least possible to keep the pre-parsed XML data in the server's main memory, maybe using memcache, couldn't it?

I don’t know anything about memcache. But will look into it. Suggestions are welcome.

Since Saxon/C v0.2 I have been working on improving performance. 

Some benchmark results of Saxon/C vs libxslt in C++ are presented in the paper "Benchmarking XSLT Performance” from xmllondon 2014. 

In conclusion we observed Saxon/C performed on average 0.5 to 2 times faster than libxslt on a set of xslt 1.0 stylesheets where we were doing file to file transformations. The two are comparable. 
See: http://xmllondon.com/2014/xmllondon-2014-proceedings.pdf#page=10

Is it possible for you to send me your stylesheet(s) and source documents so that I can analyse the performance at my end.


If so: How do I do that in the Saxon PHP extension?

Should not be too difficult if we can get a proof of concept working in C/C++ with Saxon/C.


Are there additional options for performance of Saxon/C PHP extension planned in the future? Maybe using pre-compiled stylesheets?

No real plans are in place, but to provide Saxon core features on the C/C++/PHP environments. But of course performance is important to us, ff there are clear opportunities to gain on performance I am sure we will pursue it.




* But as far as I understand, O'Neil is already doing his best to solve that issue. So, I think that's only a matter of time.

Thanks for your understanding

-------------------------------
O'Neil Delpratt
Software Developer, Saxonica Limited Email: oneil@saxonica.com
Tel: +44 118 946 5894
Web: http://www.saxonica.com
Saxonica Community site: http://dev.saxonica.com
Bug tracking site: https://saxonica.plan.io/