Exploiting multi-core CPUs during XML parsing

From
Sean McGrath <>
To
Date
2006-04-01T07:22:18Z
ID
<>
Thread
Exploiting multi-core CPUs during XML parsing
I have sketched out an algorithm for fast XML WF parsing utilising two 
threads that each start at opposite ends of the octet-stream and meet in 
the middle. The algorithm hinges on the fact that start- and end-tags 
are balanced. i.e. as one thread reads forward looking for foo 
start-tag, the other thread is reading backwards looking for foo end-tag.

This also has the nice side effect of giving you accurate error messages 
quickly. i.e. as soon as a mismatched tag is found, it can be reported. 
This is particularly useful with recursive element types.

Modern machines (even desktop boxes) will increasingly have multi-core 
CPUs as standard and I think it behooves us to find ways of exploiting 
that in the XML world.

But to get the most out of the algorithm, you really need a filesystem 
that supports reading byte-streams backwards.

Does anyone know of such a filesystem?

thanks,
Sean