I've just ran the Freeze/bench tests, and wondered why the reads are taking so long?
I am getting inserts ~0.5 ms each, while reads are ~4.8ms each.
And it doesn't matter if it is reading 1 record or 1,000 records.
what's the deal?
Thanks,
Alfred
|
|
I've just ran the Freeze/bench tests, and wondered why the reads are taking so long?
I am getting inserts ~0.5 ms each, while reads are ~4.8ms each.
And it doesn't matter if it is reading 1 record or 1,000 records.
what's the deal?
Thanks,
Alfred
Hi Alfred,
Good question! I ran the Freeze/bench C++ demo using an optimized Linux build, and got similar results: for the IntIntMap, inserts take 0.06 to 0.14ms, while reads take 0.35ms (yes, I have a fast box).
Most of the read time is consumed by the XML demarshalling; I switched to binary encoding (by adding --binary to slice2freeze) and got a more reasonable 0.03ms per read.
Unfortunately switching to binary encoding on Linux triggered a strange compilation problem in Struct1Class1MapValueCodec::write(). I am investigating it now.
Thanks for raising this issue! We will address this XML demarshalling performance issue in the next Ice release.
Bernard
thanks,
I also switched slice2freeze to --binary under VC7.1 and got the same error.
Managed to compile it and also got desent read times of about a third the write times in the IntIntMap test.
It only ran the first two tests then raised a nullhandle exception at the Struct1Class1Map read test.
Alfred
There are currently 1 users browsing this thread. (0 members and 1 guests)