help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Speed of odsread


From: PhilipNienhuis
Subject: Re: Speed of odsread
Date: Fri, 22 Sep 2017 04:29:15 -0700 (MST)

PhilipNienhuis wrote
> (Hey I did send a reply though Nabble bit it didn't arrive. Attempt #2)
> 
> 
> hjborsje wrote
>> I'm comparing the speed of loading a LibreOffice (*.ods) spreadsheet in
>> Octave and MATLAB.  The results are so vastly different that I wonder if
>> I'm
>> doing it correctly.  A spreadsheet with 1900 rows, 23 columns takes 135
>> seconds in Octave. In Matlab 5.5 seconds.   A larger spreadsheet of
>> 60,000
>> x
>> 23 takes 10.5 seconds in Matlab. Octave did not finish after 10 minutes.  
>> I
>> run Octave 4.2.1 with all the latest packages on Windows 10.  I enter:
>> [s,~,~,~] = odsload ('MySpreadsheet.ods',1);  Adding a third and fourth
>> parameters makes no significant difference.
> 
> What spreadsheet I/O "interface" did you use? and windows 32 or 64 bit?
> 
> The "native" spreadsheet I/O interface ("OCT") for .ods is know to be
> pathetic as regards speed. In addition .ods is an almost equally
> pathetically complex file format.
> 
> The fastest interface for .ods we've got on offer is jOpendocument, but it
> is Java-based.
> Until Octave has better functions for morphing heterogeneous Java data
> structures into Octave cell arrays (maybe, sometime) we cannot beat matlab
> with its Excel backend.

FYI, just some benchmarks with the file you uploaded:

tic; [tic; [~, ~, raw] = odsread ("RData_01b.ods", 1, "", <intf>); toc

gives when specifying the following interfaces for <intf>:

"otk": ~18 s.
"jod": ~10 s.
"oct": ~96 s.
"uno": ~35 s.     ## Invokes LibreOffice
... and ...
tic; [~, ~, raw] = xlsread ("RData_01b.ods", 1, "", "com"); toc   ## Invokes
Excel
==> about 6 s.

Philip




--
Sent from: http://octave.1599824.n4.nabble.com/Octave-General-f1599825.html



reply via email to

[Prev in Thread] Current Thread [Next in Thread]