numarray.array can be VERY slow

E

Edward C. Jones

#! /usr/bin/env python

"""Should this program take 4.3 seconds to run? I have a Linux PC with
an AMD Athlon XP 2000+ chip (1.7Gh). I use Python 2.4.1 and numarray
1.2.3, both compliled from source."""

import time, numarray
from numarray.numerictypes import *

nested = []
for i in range(8):
inner = []
for j in range(8):
inner.append(numarray.ones((256,256), Float64))
nested.append(inner)
t = time.clock()
arr = numarray.array(nested)
print time.clock() - t
 
C

ChinStrap

Yes because that is a bad way to things. There is no reason to be
working with a list when it could be done directly with numarray.
 
S

Steven Bethard

Edward said:
#! /usr/bin/env python

"""Should this program take 4.3 seconds to run? I have a Linux PC with
an AMD Athlon XP 2000+ chip (1.7Gh). I use Python 2.4.1 and numarray
1.2.3, both compliled from source."""

import time, numarray
from numarray.numerictypes import *

nested = []
for i in range(8):
inner = []
for j in range(8):
inner.append(numarray.ones((256,256), Float64))
nested.append(inner)
t = time.clock()
arr = numarray.array(nested)
print time.clock() - t

As mentioned, this has nothing to do with numarray, and everything to do
with your inexplicable use of lists. Why don't you just write this as:

arr = numarray.ones((8, 8, 256, 256), Float64)

??

STeVe
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,743
Messages
2,569,478
Members
44,899
Latest member
RodneyMcAu

Latest Threads

Top