[comp.sys.cdc] No pop count on the 205 ?

toon@vax1.sara.nl (04/09/90)

In article <1990Apr6.220539.3755@ecn.purdue.edu>,
	3ksnn64@cidmac.ecn.purdue.edu (Joe Cychosz) writes:
> 
> [ several lines of citation deleted ... ]
>
> This just reminded me of a use I one has for pop count,  I used it in a
> number theory application, I think to evaluate sturdy and flimsy numbers.
> It probably has a varity of applications for number theory.  It definetely
> is a lot faster than a right shift, AND with 1, and sum loop.  This was
> one instruction that I missed on the CYBER 205.
			 ^^^^^^^^^^^^^^^^^^^^^^^
Hm, well, what would you think - a vector processor of course has a vector
pop count instruction: 1F Count Ones in Field R, Count to T (CDC Cyber 200
model 205 Computer System Hardware Reference Manual 60256020 (D), page 4-153).
You can put this one to good use - together with 1C Form Repeated Bit Mask
with leading Zeros (page 4-150 loc. cit.) - in a vectorized Sieve of
Eratosthenes. It's a pity I can't find the source anymore (I did this one
somewhere in 1986). It took 9.5 milliseconds for the 10-loop up-to-8192
number of primes as measured by the Real Time clock (39 Transmit Real-Time
Clock to (T), page 4-124 loc. cit.).
Well, I guess the bottom line is this: The 6000 machines and descendents
were pretty much Reduced Instruction SET Machines, but if you want to see
some Complex Instructions (period), look no further.
The Cyber 205 is the one for you !
-- 

Toon Moene, SARA - Amsterdam (NL)
Internet: TOON@SARA.NL

Disclaimer: Don't need one. Real Programmers (as opposed to Quiche Eaters)
            are not afraid to claim.

3ksnn64@cidmac.ecn.purdue.edu (Joe Cychosz) (04/12/90)

In article <961@vax1.sara.nl> toon@vax1.sara.nl writes:
>In article <1990Apr6.220539.3755@ecn.purdue.edu>,
>	3ksnn64@cidmac.ecn.purdue.edu (Joe Cychosz) writes:
>> 
>> [ several lines of citation deleted ... ]
>>
>> This just reminded me of a use I one has for pop count,  I used it in a
>> number theory application, I think to evaluate sturdy and flimsy numbers.
>> It probably has a varity of applications for number theory.  It definetely
>> is a lot faster than a right shift, AND with 1, and sum loop.  This was
>> one instruction that I missed on the CYBER 205.
>			 ^^^^^^^^^^^^^^^^^^^^^^^
>Hm, well, what would you think - a vector processor of course has a vector
>pop count instruction: 1F Count Ones in Field R, Count to T (CDC Cyber 200
>model 205 Computer System Hardware Reference Manual 60256020 (D), page 4-153).
>You can put this one to good use - together with 1C Form Repeated Bit Mask
>with leading Zeros (page 4-150 loc. cit.) - in a vectorized Sieve of
>Eratosthenes. It's a pity I can't find the source anymore (I did this one
>somewhere in 1986). It took 9.5 milliseconds for the 10-loop up-to-8192
>number of primes as measured by the Real Time clock (39 Transmit Real-Time
>Clock to (T), page 4-124 loc. cit.).

Yes, It does have a vector pop count, however for integers, 48 bits on the
CYBER 205, this is a very slow-painful way of doing the job.  The 1F
instruction takes 56 (16+37+48/16) 20ns cycles to execute for the
application here.  This should take 8 cycles if implemented with 4-bit
parrellel adders as in the 6600.  Of coures this time does not include
building the descriptors (i.e., R) and ensuring that the integer to pop
count is stored in memory (i.e., can't be a register, must always be stored
in memory)  The machine had every damn instruction under the sun in it, and
I don't know why this was left out.  But, then again no one ever bought a
CYBER 205 for its scalar performance.

>Well, I guess the bottom line is this: The 6000 machines and descendents
>were pretty much Reduced Instruction SET Machines, but if you want to see
>some Complex Instructions (period), look no further.
>The Cyber 205 is the one for you !

Amen!