>What is the reason for so many class files getting created? XSLTC really does produce code for more than one kind of object -- there's the main translet, and then there are support classes which help to implement it. (For example, a filter object that implements a complicated predicate test.) There's nothing here that you need, or want, to "control"; it's inherent in doing code generation in an object-oriented environment. >My whole purpose of switching over to compilation based XSLTC is get better performance. >But with a single request, I see hardly a 10% improvement in performance A "single request", for a short input document may not be enough for the JVM's JIT compiler to fully optimize the code and hence may not perform as well as multiple requests and/or larger documents. Note too that if you're transforming to and from XML text, a lot of the processor's time is spent in the parser and serializer. Switching to XSLTC doesn't significantly affect those costs. (I don't remember the actual numbers, but just to illustrate the point: If reading and writing XML syntax is burning 33% of our runtime, then even if the compiled engine was infinitely faster than the interpreted engine you'd only see a 2-times total speedup!) If you want to benchmark the actual transformation speed, you'll have to factor those out. Similarly: XSLTC, like interpretive Xalan, suffers a performance hit when processing from a DOM. In interpretive mode, we incrementally build a DTM proxy layer around the DOM. In XSLTC, we're currently recopying the DOM's entire contents into a new DTM, which may be significantly more expensive. Even if we focus on the engine itself, how much you benefit from moving to XSLTC depends on the exact characteristics of your stylesheet, size of your source document, etc. >What could I be missing in terms of better tuning XSLTC? Sanity check: How much effort have you put into tuning your stylesheet? It's often possible to get a significant speed-up from rewriting your XSLT logic to avoid unnecessary/repeated work, and it's not uncommon for that to help more than switching to XSLTC did. (Of course, if you do both you get the benefit of both.) ______________________________________ Joe Kesselman, IBM Next-Generation Web Technologies: XML, XSL and more. "The world changed profoundly and unpredictably the day Tim Berners Lee got bitten by a radioactive spider." -- Rafe Culpin, in r.m.filk