Hi Nich, I am curious about your direct DOM manipulations. Are those able to replace existing convenient functions? If so could you perhaps attach your improved solution as a patch to the issue?
Working myself on spreadsheets these days and might help me as well. Thanks in advance, Svante Am 10.02.2014 12:03, schrieb Nicholas Evans: > Thanks for the attention you have brought to this issue Svante. In the > meantime, I have written some small utils for myself which drastically > improve the performance (writing 10000 rows in 3 seconds instead of 70). > > I achieved this by manipulating the DOM directly with the ODFDOM API. > Perhaps we can think of a way to integrate such utils better into the > Simple API. When I have a moment I will share the functions I have written > (there is actually nothing special about them, they just do simple DOM > manipulations using the ODFDOM API.) > > Best, > Nick > > > > 2014-02-10 10:42 GMT+01:00 Svante Schubert <[email protected]>: > >> Thank you very much for bringing up a performance comparison, Nick and >> as well to you Rafael for your suggestions. >> I have created an issue about the problem and attached Nick's test class. >> >> In general we might want to have performance regression tests, which >> always depend on the machine the test is being executed, therefore some >> normalization is required beforehand. Some kind of benchmark a test that >> we do not alter, anything others might use for this kind of purpose. >> >> I can give only small assistance here, I am changing my house the next >> weeks and have little time to spend (aside of my daily work for bread & >> water). >> >> Hope you all are at a start of a great week! >> Svante >> >> Am 31.01.2014 14:31, schrieb Rafael Medeiros: >>> Suggestions to improve peformance: >>> >>> 1 - Create cells without informing the style increases the file size, >>> always tell the name of the style - decreases the file size; >>> 2 - When was merge, remove the contents of the cell and then do the >> merge; >>> Atenciosamente, >>> >>> Rafael Nunes >>> I'm free - Linux >>> Linux User #439174 >>> http://www.linkedin.com/in/mederafael >>> >>> >>> On Fri, Jan 31, 2014 at 9:25 AM, Nicholas Evans <[email protected] >>> wrote: >>> >>>> Dear ODF users, >>>> >>>> For a project I am working on, I am using the ODF toolkit to create >>>> spreadsheets that can become rather large (>10 000 rows). I have >> noticed >>>> that as the spreadsheet gets larger, writing the rows becomes very >> slow. I >>>> have put together a class containing 4 different ways of writing 10 000 >>>> rows of 10 columns to a spreadsheet. The fastest method (using >>>> getRowByIndex and then getCellByIndex) takes 70 seconds. The methods >> that >>>> use getRowList and getNextRow are much slower, taking about 170 seconds >>>> each. The method using the Iterator<Row> seems to freeze for large >> inputs, >>>> and doesn't behave as expected for small inputs. >>>> >>>> I would really like to improve this performance. I think this could be >>>> done by manipulating the DOM directly. However, it would great if there >>>> was a way of using the Simple API that I have overlooked that could >> help me. >>>> Does anyone have experience with improving the performance of the ODF >>>> toolkit in the context of writing rows to an ods spreadsheet? >>>> >>>> Regards, >>>> Nick >>>> >>
