Forums before death by AOL, social media and spammers... "We can't have nice things"
|    comp.arch    |    Apparently more than just beeps & boops    |    131,241 messages    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
|    Message 131,145 of 131,241    |
|    Terje Mathisen to Stephen Fuld    |
|    Re: A useless machine    |
|    18 Feb 26 21:56:42    |
      From: terje.mathisen@tmsw.no              Stephen Fuld wrote:       > On 2/14/2026 1:57 AM, Thomas Koenig wrote:       >> Some people are throwing large amounts of computing power at trying       >> to disprove the Collatz conjecture. Graphics cards have sped this       >> up enormously.       >        > big snip       >        >>       >> The number of iterations would be tracked; if larger than a prevous       >> record, the calculation would terminate with a corresponding signal       >> to the outside world.       >>       >> Also, each cycle, the result from the previous round would be       >> compared against the input value. If it is lower, the next number       >> would be chosen. Finally, the number reached would be checked against       >> the previous, pre-set maximum, with would also signal to the outside       >> world.       >        > Hold these thoughts       >        > snip       >        >> The problem is embarassingly parallel.        >        >        > Sort of. You could do it that way, but you would be giving up some        > performance. Specifically, as you say, you want to check the number        > against the previous input value and the preset maximum. But in a        > parallel implementation, you want to check against the largest value        > checked *across all the parallel threads*. In order to do that, the        > threads need to communicate, thus violating the "embarrassingly        > parallel" rule. I don't know how much performance you would give up so        > it may not make much difference, nor do I know the cost of keeping some        > "global" largest value checked so far. There is a tradeoff here.              KISS.              In this case that means "don't care". It is perfectly OK to only update        the "global max" each time a thread have finished a large block of        candidates, so just checking against the starting value is fine.              Assuming we also want to track the largest seen intermediate value, that       could also be updated the same way.              Terje              --        - |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
(c) 1994, bbs@darkrealms.ca