ComputingComputer EngineeringComputer ScienceOperating SystemsParallel ComputingReconfigurable ComputingCommunication OverheadCpu SchedulingInterprocess CommunicationPerformance ModelingPerformance TuningRun-time ReconfigurationAnalytic ApproximationsApplication Performance TuningCorrelationHeuristicsHigh PerformancePlacementThreadThread Migration
We describe methods of identifying and exploiting sharing patterns in multi-threaded DSM applications. Active correlation tracking is used to determine the affinity, or amount of sharing, in pairs of threads. Thread affinities are combined to create correlation maps, which summarize sharing between all pairs of threads in the application. Correlation maps can be used in two ways. First, they can be used as an aid for performance tuning, Second, they can be used to estimate the impact on communication requirements of reconfiguring running applications through thread migration. Thread migration provides a way of tuning applications for which sharing information is not known a priori, and a means of adapting to dynamic algorithms or environments. We show that i) accurate thread affinities can be obtained without multiple rounds of migration, ii) thread affinities lead to good approximations of application communication requirements, iii) simple heuristics can use thread affinities to efficiently approximate optimal mappings of threads to nodes, and iv) good placement is essential for high performance.
14
Steven Cameron Woo, Moriyoshi Ohara, Evan Torrie et al. · 1995 · 3.6K citations · Full text
Myrinet: a gigabit-per-second local area network
N.J. Boden, D. Cohen, Robert E. Felderman et al. · IEEE Micro · 1995 · 1.7K citations
The SPLASH-2 programs: characterization and methodological considerations
Sandi Woo, Moriyoshi Ohara, Evan Torrie et al. · 2002 · 1.6K citations