MathGroup Archive 2011

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Excel XLS Import slowdown in version 8

  • To: mathgroup at
  • Subject: [mg116262] Re: Excel XLS Import slowdown in version 8
  • From: Lou <lvveen32 at>
  • Date: Wed, 9 Feb 2011 02:08:57 -0500 (EST)
  • References: <iig75v$rkm$> <iigpkd$212$>

On 4 feb, 12:58, Albert Retey <a... at> wrote:
> Hi,
> > I have noticed in Mathematica version 8 that Excel (.xls, not the new
> > format) importing is about 3.5 times slower than in version 7. I
> > noticed this because I have a script that reads two sheets from many
> > Excel files that used to take 1.5 seconds per file that now takes
> > around 5.18 seconds per file (AbsoluteTiming). Nothing else is done in
> > that part of the script; it is just a map of an Import command over a
> > list of Excel files. Is anyone else experiencing this slowdown? What
> > is the cause? Are there any remedies?
> We have also noticed that the Import of xls-files can be much slower in
> Version 8 than it was in Version 7. Especially if there are plots within
> those files, the import in 8 can be horrible slow, in some cases Import
> becomes completely useless. It looks like it has to do something with
> the plots, but so far I have not found a way to avoid that, e.g. by just
> importing the "Data" element. What has helped in most cases is to delete
> all plots in the xls-files before importing, but of course that is just
> a workaround and might not be a solution if you have many files, as
> seems the case for you...
> I would be very interested to hear if anyone has found ways to improve
> the import speed of xls-files in version 8 or switch back to the version
> 7 behaviour...
> hth,
> albert

My last obeservations on this subject. It seems that updating the
variables and retrying different settings will not result in a
repeatable problem.
So the code already posted suddenly worked fine (but still slow).
But still it seems that java plays an important role and one test is
Using Mathematica 8 with a cold start with following settings results in an
error and reading the file before the error is generated really takes
almost 8 minutes:
writexls = Table[Range[Random[], 255], {x, 1, 10000}];

Export["xl.XLS", writexls]

Export::fmterr: Invalid XLS format. >>


readxl = Import["xl.XLS"];

Import::fmterr: Cannot import data as XLS format. >>

Again coldstart Mathematica 8 and with Java parameter settings (David Bailey
suggestion on the web)
This works.
In[1]:= Needs["JLink`"]

ReinstallJava[CommandLine -> "javaw.exe -XX:NewSize=800m"];

In[3]:= writexls = Table[Range[Random[], 255], {x, 1, 10000}];

In[4]:= Export["xl.XLS", writexls]

Out[4]= "xl.XLS"

In[5]:= readxl = Import["xl.XLS"];

I don't understand the error message in combination with the 'solution/
workaround' but it works.
Kind regards,

  • Prev by Date: Re: Generated parameters
  • Next by Date: print issues
  • Previous by thread: Re: Excel XLS Import slowdown in version 8
  • Next by thread: Filtering data from numerical minimization