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

Subject: Re: [ccp4bb]: peak search : N dimensions -> 1-dimension



***  For details on how to be removed from this list visit the  ***
***          CCP4 home page http://www.ccp4.ac.uk         ***

Dear David,

I ment that now quite often people understand the programming (and how the 
computer works) much worse than one would like. In particular, some of them 
do believe that there exist N-dimentional arrays in the computer memory.

         Concerning your practical remark. One of examples I show for my 
students.
         Let me have an array of 1,000,000 elements (quite usual map, is it 
? 100 by 100 by 100). You can run a search for the maximal element 
declaring this array as 1D array of the length 1,000,000 and, on the other 
extreme, as a 6D array 10 by ... by 10 (6 times).
         In the first case, when I take a usual, relatively cheep SGI (not 
supercomputer CHESS) and search 100 times for the global minimum (select 
100 highest peaks, a routine question), I spend 11 seconds. In the second 
case, to do exactly the same work, I spend about 81 seconds, 1 minute more 
... You can easily imagine that you need several thousand and not 100 peaks 
and if you need to apply this procedure several times then you feel the 
difference.
         Yes, this still be quite finite time but nevetheless... So your 
trust to the computer is not justified and people still need to think.

         When you operate with the LOCAL minimum, you use more operations 
with multidimensional variables and your CPU cost will be even more. I 
repeat, this does not consern a single search when all is running quite 
rapidely. However, in general, it is always pity to wait for the answer 10 
minutes instead of getting it immediately.

         Another side of misunderstanding of how computer works is that 
often people spend much more computer resources and write much more "heavy" 
programs than they should be.

Regards,

Sasha


>I'm not sure I understood your point.  Are you suggesting we work with
>one-dimensional crystals in order to save CPU time?  I thought that now
>we're living in The Future and computing power is near infinite, we could
>ignore such details.
>
>seriously,
>since you are dealing with neighbors in 3-space, you need somehow to refer
>to three coordinate indices.  you can use a one-dimensional array and do
>these calculations explicitly, or you can use a 3-dimensional array and
>let the compiler do the work for you.  personally, i'll put my trust in
>the compiler.  i'm also not sure i would agree with your use of the number
>"MUCH MORE". this number seems too large. i suspect the actual number is
>considerably less than a factor of 2.
>
>you mention a search for the global max.  this is different in that
>neighbors do not need to be considered.
>
>
>most of the discussion so far seems to be much ado about some small
>details.  why doesn't someone get original and supply an algorithm for
>doing this in reciprocal space?
>
>
>=======================================================================
>"Now that I'm a cranky, constipated old man I can afford to say that
>  the younger generation of scientists makes me sick to my stomach."
>                                                   - C.M. Kornbluth
>=======================================================================
>                         David J. Schuller
>                         modern man in a post-modern world
>                         MacCHESS, Cornell University
>                         djs63@cornell.edu