Reply to topic  [ 11 posts ] 
A question about speed 
Author Message

Joined: Wed May 09, 2007 8:36 am
Posts: 14
Location: Israel
Reply with quote
Post A question about speed
Hi!

I use
Code:
ExcelTable.easy_getCell(y,x)
about 10,000 times to fill data in an Excel spreadsheet.

This takes a negligible amount of time.

However when I use
Code:
xls.easy_WriteExcelFile(fileFullPath);
to write the file, this takes around 15 seconds.

Is there anyway to speed this up? Because I want to use
Code:
ExcelTable.easy_getCell(y,x)
about 60,000 times in a spreadsheet, and it can take about 2 minutes to generate the spreadsheet?

Thank you


Tue Nov 20, 2007 11:54 am
Profile

Joined: Fri Feb 03, 2006 12:23 pm
Posts: 189
Location: Brasov, Romania
Reply with quote
Post 
Here are 2 tips for decreasing the speed.
Using ExcelStyle for formatting instead of direct formatting each cell, drastically decrease the memory usage and this also affect the speed of execution. So if you have more cells with the same format, set the same ExcelStyle for all of them.
Also setting the data type of the cell might increase the speed of execution, since the default data type is automatic and it is determined by runtime.


Wed Nov 21, 2007 1:31 pm
Profile WWW

Joined: Sun Nov 25, 2007 5:53 am
Posts: 1
Reply with quote
Post Speed
I am have the same troubles with speed like teniel.

I am using your program to generate large Excel-Files in a Client-Server- Application. The generation of the ExcelDocument object runs fast but as soon as i start to write to the OutputStream it takes a while to complete. Actually this is to long to provide the generation of a Excel-File in a Request-based nature in our Application.

I already assign each Cell-Value its Cell-Stlye with the appropriate DataType set. All in all i use 6 Cell-Styles so far.

Are there any other chances to speed the writing to the Outputstream up ?


Sun Nov 25, 2007 6:05 am
Profile

Joined: Wed May 09, 2007 8:36 am
Posts: 14
Location: Israel
Reply with quote
Post speed issues
Would using
Code:
easy_WriteXLSFile_FromDataSet
be significantly faster than doing each cell individually? And perhaps making a few formatting changes afterwards?


Sun Nov 25, 2007 7:08 am
Profile

Joined: Wed May 09, 2007 8:36 am
Posts: 14
Location: Israel
Reply with quote
Post Speed
Hi Daniela,

Thank you for your suggestions. The report I am producing does not currently have any formatting, but I tried setting the data-type manually as you suggested. There was on average a small speed increase. (a bit less than a second on an Excel that took 12 seconds to produce)


Sun Nov 25, 2007 11:16 am
Profile

Joined: Fri Feb 03, 2006 12:23 pm
Posts: 189
Location: Brasov, Romania
Reply with quote
Post 
You should get similar results with our tests:
http://www.easyxls.com/docs/Volume%20 ... ks_6.1.doc

However, the speed depends also by your computer performances.

The speed of generation is also affected by how many formulas are in the document and the functions used inside formula. Each function is computed in its own amount of time.


Mon Nov 26, 2007 7:47 am
Profile WWW

Joined: Fri Feb 03, 2006 12:23 pm
Posts: 189
Location: Brasov, Romania
Reply with quote
Post 
Also for the java version, you need to add an extra parameter when running your application.
JRE use 64M of memory by default and your computer performances don't count. You need to increase the memory heap size by using -mx option (run your application using "java -mx512m").
See this link:
http://forum.java.sun.com/thread.jspa?f ... dID=179198


Mon Nov 26, 2007 7:49 am
Profile WWW

Joined: Wed May 09, 2007 8:36 am
Posts: 14
Location: Israel
Reply with quote
Post 
Thanks Daniela
This looks very helpful


Tue Nov 27, 2007 7:44 am
Profile

Joined: Wed May 09, 2007 8:36 am
Posts: 14
Location: Israel
Reply with quote
Post Speed
Hi Daniela!

Just for information. We increased the jvm heap size as you suggested (although only to 256 MB) and ran our heavy excel report . The easyxls component took 15 to 20 seconds instead of over a minute (ie about a quarter of the time...)

Thank you very much


Sun Dec 02, 2007 11:17 am
Profile

Joined: Wed Jan 16, 2008 9:13 am
Posts: 8
Reply with quote
Post Re: Speed
I am running into a similar speed/memory/performance issue as well. I am evaluating this library as well as several others and have been performing some tests such as opening/re-saving existing spreadsheets for our business to benchmark the times it takes to do this. This particular spreadsheet has about 15 sheets. 1 sheet has 604x6 cells with formulas in a lot of them. One has 3012x9 (2 hidden) cells with formulas. Then there are 10 sheets that have 345x8 cells with formulas. The other libraries that I have been testing generally would load/save this to another file in approximately 1-2 seconds. EasyXLS took 12 minutes 44 seconds as well as sucked up about 50% cpu in the process as well as around 200 MB of virtual memory. Is there a way to load / save a spreadsheet that is formula intensive? I realize that this is probably worst case scenario, but is a possible scenario in our environment. Any help / insight would be greatly appreciated.[/list]


Wed Jan 16, 2008 9:27 am
Profile

Joined: Fri Feb 03, 2006 12:23 pm
Posts: 189
Location: Brasov, Romania
Reply with quote
Post 
Please send us the xls document that you are trying to load to email address support@easyxls.com.


Thu Jan 17, 2008 6:17 am
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 11 posts ] 

Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by STSoftware for PTF.