Download presentation
Presentation is loading. Please wait.
Published byDylan Simmons Modified over 9 years ago
1
Copyright, 1996 © Dale Carnegie & Associates, Inc. Life with Hardware Threads to Burn Todd C. Mowry Intel Research Pittsburgh & Carnegie Mellon University ISCA Panel June 7, 2005
2
Todd C. Mowry ISCA Panel, June 7, 2005- 2 - Functional Correctness Trumps Performance oIf your software doesn’t behave correctly, it doesn’t matter how fast it runs. oWhat does matter (see “Software Engineering”): code development and testing time how quickly/easily a new developer can modify existing code achieving acceptable performance oMost programmers who choose not to write parallel code today are making a rational choice the cost/benefit ratio is unfavorable in too many cases
3
Todd C. Mowry ISCA Panel, June 7, 2005- 3 - Making Parallel Programming More Attractive oMinimizing programming complexity is the key: Consistency models: SC -> RC -> SC Machine models: PRAM -> logP -> ??? oBenchmarks for a successful parallel programming model: does it work well when you’re modifying someone else’s code? can we teach it to freshmen in an Algs & Data Structures course? oA “semi-automatic” approach seems like the sweet spot the programmer thinks about sources of parallelism at a high level the system does the heavy lifting and always preserves correctness programmer can tweak performance through localized changes
4
Todd C. Mowry ISCA Panel, June 7, 2005- 4 - Use CMPs to Improve Functional Correctness oImpressive tools already exist to help identify/fix problems bugs, data races, memory leaks, faults, security violations, etc. oHowever, sophisticated tools can add significant runtime overhead oBy offloading these tools onto other threads, we can: run existing tools continuously enable new tools that are even more sophisticated
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.