joe kim wrote: > James, > > Thanks for taking the time to explain your stance on these things. I > like your experimentation approach. I will play around with some > things and get back to you on that in a week or so. > >> Rob Yates (who is on paternity leave right now so likely can't respond >> right now) has performed some performance analysis of Abdera with Axiom >> relative to Rome (which separates the model impl from the parsing). >> Parsing just titles and links from Tim Bray's feed, Rome used 6+MB of >> RAM and over 600 million CPU instructions; Abdera with Axiom used around >> 700k of RAM and around 90 million CPU instructions. The secret of the >> performance improvement was in the use of Axiom and StAX -- that is, to >> say, pull parsing and lazy creation of the object model. > > These performance metrics are most likely a result of JDOM vs. > Axiom/StAX and not due to the model being separated from the parsing. > Do you happen to know what tool Rob used to determine CPU > instructions? I would imagine it would vary due to the nature of JIT. > >> I had originally started down the path you are suggesting, this is >> better. Please, run some performance analysis of your own. Look at the >> stack traces. Compare them with those of Rome. I think you'll be >> surprised at how much kruft is *not* there *because* of the direct >> dependencies on Axiom and StAX. > > I think API cleanliness is orthogonal to performance. Here are my > questions: > 1) Is the API uglier or simpler because of dependencies on Axiom and StAX? > 2) Is the API higher performance due to dependencies on Axiom and StAX? > > I am arguing that 1) is uglier. Not going to argue 2. unless I run my > own performance tests like you suggested. > > One last question, JSON support. Have you and smackman made any > progress on JSON serialization? > > http://smackman.com/2006/05/08/applicationatomjson/ > > How would suggest atom+json serialization be implemented? > > Joe >
Hi Joe, I have a JSON serialization that will be checked in soon against the new writer/reader changes James made especially for this and an RDF parser/reader that we have as well. -Elias
