Can anyone help me with a article, book or other reference that discusses
the merits of OpenMP vs Posix threads ?
Our applications tend to be simple, ie with shared read data and separate write data.
This issue has been raised before on this forum, so use the search function. The short answer is that OpenMP is generally best suited to data parallel applications with evident loop level parallelism. Where it is useful, it may be easier to debug and performance tune than direct application of posix threads. Of course, OpenMP does use posix threads when running on linux systems.
Thanks, Tim. Indeed the search pulled up several good articles from the IDS website.
In case you haven't found it already, there's a short article on IDS that addresses your question, "Choosing an Appropriate Threading Method: OpenMP vs. Explicit Threading." It's in Chapter 3 (Application Threading) of the larger document, "Developing Platform Consistent Multithreaded Applications."
OpenMP is probably the best choice for your application, given thatthe concurrency is fork-join with little communication between the threads.