[Fwd: [OctDev] slow structs]

John W. Eaton jwe at octave.org
Wed Dec 17 21:52:09 CST 2008


On 17-Dec-2008, Daniel J Sebald wrote:

| Subject: [OctDev] slow structs
| Date: Wed, 17 Dec 2008 18:13:17 -0600
| From: Jonathan Kotta <jpkotta at gmail.com>
| To: octave-dev at lists.sourceforge.net
| 
| I have a problem where a vector within a struct is much slower to
| index than a plain vector (~8x slower) .
| 
| x = zeros(1e6,1);
| s.x = x;
| subset = 500e3:600e3-1;
| y = randn(length(subset),1);
| for i = 1:5
|    tic; x(subset) = y; toc;
| end
| for i = 1:5
|    tic; s.x(subset) = y; toc;
| end

Accessing a structure element requires looking up the element in a map
using the field name (a character string).  You don't expect that
would be free, do you?

jwe


More information about the Octave-maintainers mailing list