bugGNU Octave - Bugs: bug #48785, Something about classes is much...

 
 

bug #48785: Something about classes is much slower in dev than 4.0.x

Submitter:  Colin Macdonald <cbm>
Submitted:  Sun 14 Aug 2016 08:56:57 PM UTC
   
 
Category:  Performance Severity:  2 - Minor
Priority:  3 - Low Item Group:  Regression
Status:  Invalid / Not an Octave Bug Assigned to:  None
Originator Name:  Open/Closed:  * Closed
Release:  * dev Operating System:  * GNU/Linux
Fixed Release:  None Planned Release:  None
* Mandatory Fields

Add a New Comment Rich Markup
   

Tue 21 Feb 2017 12:55:04 AM UTC, comment #5: 

Closing report.

Kai Torben Ohlhus <siko1056>
Group Member
Tue 23 Aug 2016 06:27:36 AM UTC, comment #4: 

Thanks!  I wonder why I see this as I also compile with close-to-defaults:


# Before configure, need [1] to: "export CXXFLAGS=-Ilibgui"
# [1] http://neilhopcroft.com/build-break-in-octave-build-307/
export CXXFLAGS=-Ilibgui

# Fedora 24: no more --with-osmesa; still not working, jit, 64
./configure --enable-openmp --prefix=/home/cbm/.octavehg/


I will try again without the openmp next time I recompile.

my CPU: Intel(R) Core(TM) i5-6300U CPU @ 2.40GHz

Colin Macdonald <cbm>
Tue 23 Aug 2016 04:48:58 AM UTC, comment #3: 

Fedora 24 Intel(R) Core(TM) i7-2600K CPU @ 3.40GHz:

4.0.3 octave-cli
tic; for i=1:100000, y = sin(6); end; toc
Elapsed time is 0.445517 seconds.

4.0.3 octave --no-gui
tic; for i=1:100000, y = sin(6); end; toc
Elapsed time is 0.504243 seconds.

dev changeset:   22363:0ca341841198
octave --no-gui
tic; for i=1:100000, y = sin(6); end; toc
Elapsed time is 0.478829 seconds.

(./configure and make with default flags)

Dmitri.
--

Dmitri A. Sergatskov <dasergatskov>
Tue 23 Aug 2016 04:37:28 AM UTC, comment #2: 

Probably this is just the difference between my distro's package (Fedora 24) and my self-compiled version.

For example, I tried comparing a dummy "foo" class and a simple trig computation:

4.0.3:

>> tic; for i=1:100000, y = sin(6); end; toc
Elapsed time is 0.412518 seconds.
>> tic; for i=1:100000, y = foo(6); end; toc
Elapsed time is 2.26527 seconds.


dev:

>> tic; for i=1:100000, y = sin(6); end; toc
Elapsed time is 2.6627 seconds.
>> tic; for i=1:100000, y = foo(6); end; toc
Elapsed time is 16.5612 seconds.


So I suppose this should be closed invalid.

Colin Macdonald <cbm>
Mon 15 Aug 2016 07:47:29 AM UTC, comment #1: 

Output of "profshow":

4.0.3:

   #                  Function Attr     Time (s)   Time (%)        Calls
------------------------------------------------------------------------
  47                    assert             0.652      14.61        16288
  88                 readblock             0.523      11.73          652
  99       extractblock>helper    R        0.451      10.12          968
  97                     pause             0.260       5.84         1103
  56                    repmat             0.237       5.31         1881
  82                   strjoin             0.145       3.24          980
 132             @sym/isequaln             0.132       2.95           28
  78         python_ipc_popen2             0.126       2.83          326
  68          compare_versions             0.104       2.34          326
 100 extractblock>process_item             0.103       2.31          674
  37                    regexp             0.096       2.14         1696
  41                      @sym    R        0.090       2.02          692
  92                      ispc             0.075       1.68         8269
  72                 ostrsplit             0.072       1.61          787
  81               write_lines             0.057       1.29          978
  54                python_cmd             0.054       1.21          326
 170         cell_array_to_sym    R        0.054       1.20           22
  22                     fgets             0.048       1.08         8965
 103       do_highbyte_escapes             0.048       1.07          821
  63         python_ipc_driver             0.047       1.05          326


tip:

   #                         Function Attr     Time (s)   Time (%)        Calls
-------------------------------------------------------------------------------
  47                           assert             4.277      21.86        16288
  86                        readblock             2.570      13.14          652
  93              extractblock>helper    R        2.331      11.92          968
  54                           repmat             1.321       6.75         1881
  80                          strjoin             0.635       3.24          980
  66                 compare_versions             0.622       3.18          326
  76                python_ipc_popen2             0.562       2.87          326
  94        extractblock>process_item             0.509       2.60          674
  70                        ostrsplit             0.432       2.21          787
  90                             ispc             0.427       2.18         7288
  41                             @sym    R        0.409       2.09          692
  79                      write_lines             0.300       1.53          978
  37                           regexp             0.252       1.29         1696
  97              do_highbyte_escapes             0.241       1.23          821
  52                       python_cmd             0.232       1.18          326
  92                     extractblock             0.228       1.16          652
  95 extractblock>str_post_xml_filter             0.227       1.16         1313
  78      python_copy_vars_to>do_list    R        0.215       1.10          362
  61                python_ipc_driver             0.205       1.05          326
   4                           nargin             0.198       1.01        53937



Colin Macdonald <cbm>
Sun 14 Aug 2016 08:56:57 PM UTC, original submission:  

Octave 4.0.3 with Symbolic dev:


>> tic; test @sym/sym; toc
PASSES 42 out of 42 tests
Elapsed time is 4.33619 seconds.


But with tip:


>> tic; test @sym/sym; toc
PASSES 42 out of 42 tests
Elapsed time is 18.3899 seconds.


I will try to track this down more later, but wanted to get this rolling in case I forget... again, I noticed this months ago :(

Colin Macdonald <cbm>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by siko1056 (Posted a comment)
  • -email is unavailable- added by dasergatskov (Posted a comment)
  • -email is unavailable- added by cbm (Submitted the item)
  • -email is unavailable- added by cbm
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only group members can vote.

     

    Follow 5 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2017-02-21 siko1056 Open/ClosedOpen Closed
    2017-02-21 siko1056 Severity3 - Normal 2 - Minor
        Priority5 - Normal 3 - Low
        StatusNone Invalid / Not an Octave Bug
    2016-08-14 cbm Carbon-Copy- Added mtmiller

    Back to the top

    Powered by Savane 3.13-4448.
    Corresponding source code