comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Strange memory problem
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Re: Strange memory problem [message #18422 is a reply to message #18337] Wed, 22 December 1999 00:00 Go to previous messageGo to previous message
Julie Greenwood is currently offline  Julie Greenwood
Messages: 6
Registered: December 1999
Junior Member
Liam Gumley <Liam.Gumley@ssec.wisc.edu> wrote in message
news:3860E331.C4E36EA4@ssec.wisc.edu...
> "Mark D. Williams" wrote:
>> FWIW, if you want to save time and memory, a faster way to do the above
>> is as follows:
>>
>> WAVE> temp = BYTARR(1000,1000,25, /NoZero) + 10B
>
> I get the fastest response (in IDL) with
>
> temp = replicate(10B, 1000, 1000, 25)
>
> Cheers,
> Liam.

OK, After I figured out to clear the memory between calls, I got the
following numbers (before clearing the temp array, the numbers just kept
growing...):

0.33000004 Seconds (temp=bytarr(1000,1000,25))
1.5920000 Seconds (replicate_inplace, temp, 10B)
2.0829999 Seconds (temp = BYTARR(1000,1000,25) + 10B)
1.9130000 Seconds (temp = BYTARR(1000,1000,25, /NoZero) + 10B)
1.5619999 Seconds (temp = replicate(10B, 1000, 1000, 25))

pro test_array_init

T = SYSTIME(1)
temp=bytarr(1000,1000,25)
PRINT, SYSTIME(1) - T, ' Seconds (temp=bytarr(1000,1000,25))'
temp = 0
; the following takes a *very* long time
;temp(*)=10B
;PRINT, SYSTIME(1) - T, ' Seconds'

T = SYSTIME(1)
temp=bytarr(1000,1000,25)
replicate_inplace, temp, 10B
PRINT, SYSTIME(1) - T, ' Seconds (replicate_inplace, temp, 10B)'
temp = 0

T = SYSTIME(1)
temp = BYTARR(1000,1000,25) + 10B
PRINT, SYSTIME(1) - T, ' Seconds (temp = BYTARR(1000,1000,25) + 10B)'
temp = 0

T = SYSTIME(1)
temp = BYTARR(1000,1000,25, /NoZero) + 10B
PRINT, SYSTIME(1) - T, ' Seconds (temp = BYTARR(1000,1000,25, /NoZero) +
10B)'
temp = 0

T = SYSTIME(1)
temp = replicate(10B, 1000, 1000, 25)
PRINT, SYSTIME(1) - T, ' Seconds (temp = replicate(10B, 1000, 1000, 25))'
temp = 0

end

Julie

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Juliet G. Greenwood
Senior Programmer
Oceanweather Inc.
JulieG@Oceanweather.com
http://www.oceanweather.com/

http://www.thehungersite.com/
The Hunger Site - Donate Food for Free to
Feed Hungry People in the World.
The Site's Sponsors Make the Donations.
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: how to find the TLB of a widget
Next Topic: Tip: how to mix object gui with command line

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Fri Oct 10 07:48:05 PDT 2025

Total time taken to generate the page: 0.88029 seconds