Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Intel just posted an article about the basics of parallel programming and related algorithms:
"Parallelism is coming to everything from laptops to high-end servers. It will exist at multiple levels with multiple cores per chip, multiple sockets per box, and multiple boxes per system (cluster). While only some programmers will need to worry about clusters, all programmers will need to worry about shared memory multiprocessors. And the way you program these systems is with multi-threading.
Threads are lightweight processes that share an address space. Programmers use an API such as OpenMP or an explicit threading library to create these threads and coordinate their activity. The challenge is to minimize parallel overhead while assuring that every legal way to interleave the threads results in the correct answers. To do this by “inspection alone” is extremely difficult. The key is to use the right set of tools to help you."
If you liked above article, you might also find " Maximize your Application Performance on Intel® Architecture " useful.