Masm32 SDK description, downloads and other helpful linksMessage to All Guests
Started by hutch--, June 18, 2019, 04:49:07 AM
Quote from: hutch-- on June 18, 2019, 04:49:07 AMJust as an aside, the test piece that Jose did with the 64 threads was possible because the rdrand mnemonic is very slow and does not fully utilise the thread. The library "irand" algo and similar are much faster that rdrand and they saturate the thread they are contained in. It is still a useful technique because of its different random source which can be combined with a seeded algo.
Quote from: daydreamer on June 18, 2019, 03:49:11 PMLol AW suggests the threads are a lot of underdogs?
Quote from: hutch-- on June 22, 2019, 11:47:09 AMYou worry me at times. If you look at the reseed algo in the examples, it only uses the low 32 bit of rdtsc and then it does a sequence of rotates and xor to always produce a 64 bit integer. I will shortly post the final version but in between I wrote a multi-threaded version that was far slower than the single thread version because the thread overhead exceeded the runtime of the original parent thread. I started with 8 threads, then 4 threads, then 2 threads and finally 1 thread and the single thread was the fastest.
Quote from: hutch-- on June 23, 2019, 02:42:58 PMFeel free to code a legacy SSE random algo that tests well then work out how to seed it. The assumption that trying to do everything in SSE is not sound. Note that SSE and even the later AVX were primarily designed for high speed graphics, not high speed complex calculations. The bottom line is you must be able to demonstrate that the results are,1. random2. not easily reproducible.