I completed an alternate method for creating our XML documents in VXQuery.
The data is stored on a buffer with the structure stored on a set of
integer arrays. Once all document has been completely parsed, the
information is copied over to the output format. The process only copies
the information once. The new process cuts out copies for each layer of
children nodes. The new single copy process is slightly slower than the
current method for our test tree. First off the tree is fairly shallow. In
addition the write copies are about the same for these files.

The parser has two types of writes. Write int and write bytes. The write
int is adding data while write bytes is coping the existing data. The
attached profiler views show how each query spends its time in the process.
Most of the time is writing new data, or searching for existing data node
names or namespace entries in the dictionary.

The profile seems to show different time measurements between the two test
while actually taking a similar amount of time to run the query. Any ideas
why? The files should be looked at for the percentages of time spent.

https://www.dropbox.com/s/ta4emog7z9fxzmc/new_single_copy.png
https://www.dropbox.com/s/m0pc8q7lt3rih55/child_copy.png

Reply via email to