SourceForge has been redesigned. Learn more.

destribute a transformation to mutilpe proces

  • sasha_57

    sasha_57 - 2008-11-17


    is saxon able to destribute a transformation of one document to multiple processors (threads)?
    When yes, how can I configure saxon to do it from a command line.


    • Michael Kay

      Michael Kay - 2008-11-18

      Off-forum response:

      Hello Mr. Kay,

      you wrote saxon is not capable to distribute a transformation to multiple threads.

      It's a great pity.

      Our production machine has 16 core (4x4) but transformation process uses only one core and about about of 7 percent of whole processor capacity and a transformation process takes about of 20 min to transform a ~1 Gb big file. It could be only 2 min.!

      Is it planned to extend saxon in this direction?

      To my mind it must not be all too complicated to implement this feature becouse XSLT is one functional language (does not have any states or side effects) and as such is very suitable for parallel execution.

      best regards,
      Alexander Rubinov


      I agree with you entirely, this would be a very nice feature to have as multi-core processing becomes more and more common. It's also true that XSLT is ideally suited for parallel execution. However, I think you might be a bit over-optimistic in thinking that it is easy to implement. There are two significant challenges: (a) the decision-making on how many threads to use, and what to use them for, and (b) merging the results of the different threads without creating excessive synchronisation overheads.

      I would very much like to implement this feature, and of course like any other feature, having a customer prepared to pay for it would help to raise its priority.

      Michael Kay

    • Michael Kay

      Michael Kay - 2008-11-17

      No, Saxon does not have this capability.


Log in to post a comment.