octave-bug-tracker
[Top][All Lists]
Advanced

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

[Octave-bug-tracker] [bug #37509] `load -z` is very slow


From: Elias Pipping
Subject: [Octave-bug-tracker] [bug #37509] `load -z` is very slow
Date: Fri, 05 Oct 2012 16:28:50 +0000
User-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.10 (KHTML, like Gecko) Chrome/23.0.1262.0 Safari/537.10

URL:
  <http://savannah.gnu.org/bugs/?37509>

                 Summary: `load -z` is very slow
                 Project: GNU Octave
            Submitted by: pipping
            Submitted on: Fri 05 Oct 2012 04:28:49 PM GMT
                Category: None
                Severity: 3 - Normal
                Priority: 5 - Normal
              Item Group: Regression
                  Status: None
             Assigned to: None
         Originator Name: 
        Originator Email: 
             Open/Closed: Open
         Discussion Lock: Any
                 Release: 3.6.3
        Operating System: GNU/Linux

    _______________________________________________________

Details:

The following script

<<<<SNIP
function testcase(n)

system("rm -f random.dat random.dat.gz");

A=rand(1,n);
save -z random.dat.gz A;

# Use -z to uncompress
tic;
load random.dat.gz;
fprintf(stderr, "Direct: %en", toc());

# Uncompress manually
tic;
system("gunzip random.dat.gz");
load random.dat;
fprintf(stderr, "Indirect: %en", toc());
<<<<SNAP

creates a random 1xn matrix, and writes it to a gzip-compressed file. Then it
compares how long it takes to

  (1) read it using `load -z` and to
  (2) uncompress it through a call to gunzip and then `load` it.

While the overhead for the call to gzip dominates at first, with n=10000,
`load -z` is three orders of magnitudes slower than the indirect approach for
me:

% octave --eval 'testcase(1000)' >/dev/null 
Direct: 2.528620e-01
Indirect: 1.927996e-02

% octave --eval 'testcase(10000)' >/dev/null
Direct: 2.424446e+01
Indirect: 3.546500e-02

I can reproduce this with octave 3.6.3 on two machines.

Octave 3.2.4, which is installed on one of those machines as well, does not
show this behaviour:

% /usr/bin/octave --eval 'testcase(10000)' >/dev/null
Direct: 1.430511e-02
Indirect: 1.741195e-02




    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?37509>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/




reply via email to

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