0

Suppose I have an arbitrary number of threads that need to read from different memory locations. What parameters do I need to estimate the maximum number of threads that can do this simultaneously without bus contention? Where can this information be found for commercially available hardware?

  • 1
    That depends too much on cache design, sizes, configuration, OS memory management and the locations addressed to be answerable on SO. – Martin James May 13 '21 at 06:42
  • Is there a rule of thumb or average for commercial hardware? – lubriderm May 13 '21 at 21:03
  • Not really, no. – Martin James May 13 '21 at 21:36
  • Is there a way to measure when contention occurs? If I start with 1 thread and progressively increase the number of threads, is there a way to know? – lubriderm May 13 '21 at 22:11
  • I don't know. Bus contention has not surfaced as a performance constraint on any app that I have developed, so I have not researched it. I don't use multiple threads to specifically improve data processing throughput - I use them to logically seperate blocks of asynchronous functionality. – Martin James May 14 '21 at 05:36

0 Answers0