advertisement
Login | Register   
  Include Code  Search Tips
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   TIP BANK
Browse DevX
Download the sample code for this article.
Data Parallel Languages
Partners & Affiliates
advertisement
advertisement
advertisement
 

Plan for the Future: Express Parallelism, Don't Manage It

When adding parallelism, the key design choice is to express concurrency in an application without explicitly managing the scheduling of that concurrency onto the hardware.  


advertisement
he days of large increases in clock frequency are behind us. It was great while it lasted, but it's now clear that we have finally hit a frequency wall. Contrary to popular opinion, that wall is due to heat and energy concerns, not the end of Moore's Law. Instead, the current trend is to use the additional transistors predicted by Moore's Law to provide multiple processing cores and to support multiple threads per core.


For developers, this change in architecture means there is extra performance potential available if needed, but it also means that developers must do some extra work to take advantage of it. But wait! Don't jump off the cliff unless you need to. Not every application needs to be parallel. If performance is not an issue for a particular application, then there's no need to add parallelism. Even if your application is single-threaded, users can still benefit, because their multicore platforms can execute multiple applications concurrently. However, if exploiting the available performance potential increases application usability or allows you to add new features, it makes sense to take the plunge into parallel programming.

It's quick, easy and you get access to all the articles on DevX.
This registration/login is to allow you to read articles on devx.com.
Already a member?



DevX is a division of Internet.com.
© Copyright 2010 Internet.com. All Rights Reserved. Legal Notices
advertisement