Menu

The Practice of Parallel Programming / News: Recent posts

The web site died

The provider where I hosted the web site, newsguy.com, has went bankrupt. So no web site for now. It used to contain a browsable text of the early version of book, but now the whole final PDF is available for download at SourceForge, so no big deal.

Posted by Sergey Babkin 2021-09-05

The full as-printed book PDF is now available for download

I have decided to make the fully edited and nicely typeset PDF, same as in the printed book, available online for download. As far as the text is concerned, it's exactly the same as in the printed book, with an addition of a small introduction. The examples include the small fix from 2015. The formatting is slightly different, as I've changed the page size to make it more convenient to print at home, so the page numbers have shifted. Enjoy!

Posted by Sergey Babkin 2021-08-29

a new version of text zip

A reader has noticed a small error, so I've fixed it and uploaded the new version of the zip file with the text (and updated the web site too). That upload also picked up the other small fixces that I've done when testing the examples for the printed edition. The web site had these fixes since it had mysteriously lost the content a few weeks ago and I've re-uploaded it.

Posted by Sergey Babkin 2015-08-05

issues with the online edition

I've tried to open the text of the online edition today and found that it was gone. Grrr, something went wrong there. I'll fix it shortly.

Posted by Sergey Babkin 2015-07-07

new location of the online edition

As I've moved away from Verizon, the new location of the online edition is http://web.newsguy.com/sab123/tpopp (and it's also still downloadable as a file).

Posted by Sergey Babkin 2011-12-08

The online edition will be moving

Verizon has sent a notification that they are discontinuing the web sites for their customers. So the text of the online edition will be moving somewhere else. I haven't quite decided yet, where exactly.

Posted by Sergey Babkin 2011-08-07

working on th Kindle edition

Well, I've made another stab at the Kindle edition of th ebook. I can generate a pretty good HTML now. The problem however is that Kindle is not happy with just any HTML.

Looks like, when it renders a screen, it steps a small fixed number of bytes back and starts collecting the HTML tags from there. So anything longer than a couple of screens (such as table of contents, index, program listings) ends up rendered wrong after that couple of screens.... read more

Posted by Sergey Babkin 2011-01-02

what's the difference

Just to be clear, the difference between the online edition that is available here for free and the printed edition is: The online edition is a very early draft. The printed edition has been heavily edited to improve the style and clarity of the text. And of course it has the proper illustrations too.

Posted by Sergey Babkin 2010-08-22

Amazon offers a discount

Amazon now offers a discount to the printed edition of "The Practice of Parallel Programming" as well: http://www.amazon.com/gp/product/1451536615 .

This book provides an advanced guide to the issues of the parallel and multithreaded programming. It goes beyond the high-level design of the applications, into the details that are often overlooked but vital to make the programs work. The content is oriented towards the programming of the operating systems, servers and business applications. The parallel programming has three aspects to it: the theory of parallelism, a specific API you plan to use, and the details of how to make it all work together. Many books cover the first two aspects but at the moment this is the only book about the third one. This craft of parallel programming is not widely known, and because of this the parallel programming has gained the reputation of complexity. Surprisingly few programs and libraries do the multithreading quite right. This book leads the readers into the understanding of the craft, using many examples based on POSIX and Microsoft Windows APIs, with occasional Java or C#. Most of the algorithms discussed are general and may be implemented in any language. How to stop a multithreaded program correctly? Or how to stop only a single connection in a multi-user server? What if the program receives a signal? How are the scalable data structures built? What synchronization primitives are more appropriate in which usage patterns, and how are they related to each other? A whole lot of questions about the queues and topologies built with them. When are the fashionable paradigms of lock-free synchronization, transactional memory and actors hot and when not? How to multiplex with threads and without them? This book answers all these questions and more.

Posted by Sergey Babkin 2010-04-12

now it's on Amazon too

The printed edition made its way to Amazon: http://www.amazon.com/gp/product/1451536615

Posted by Sergey Babkin 2010-04-06

printed edition available

The printed edition of "The Practice of Parallel Programming" is now available at https://www.createspace.com/3438465 . The Amazon.com and other retailers will be coming soon as well, it takes a little time to propagate through the channel. As a special limited-time Internet promotion, use the discount code RYM7VM5Q to get $14 off the list price at the CreateSpace store.

The updated examples package is downloadable now.

Posted by Sergey Babkin 2010-03-30

printed edition forthcoming

The printed edition of The Practice of Parallel Programming will finally be coming out soon. Watch https://www.createspace.com/3438465 . A discount code will be available. The printed edition incorporates many small changes, both fixing the errors and adding the better explanations.

Posted by Sergey Babkin 2010-03-14

A PDF available

A reader, Sayed Fulkhani, has provided a formatted PDF of the book. It's not the same as the typographical-quality PDF I'm working on but it's much easier to read than the text from the web site.

Posted by Sergey Babkin 2010-02-26

online edition

The online edition of the book "The Practice of Parallel Programming" has been published. You can download it or read online.

To fully learn the parallel programming, you need three books: a book on the theory of parallelism and the partitioning of the computations, a book on a particular API you plan to use, and this one. How to stop a multithreaded program correctly? Or how to stop only a single connection in a multi-user server? What if the program receives a signal? How are the scalable data structures built? What synchronization primitives are more appropriate in which usage patterns, and how are they related to each other? A whole lot of questions about the queues and pipelines. When are the lock-free paradigms hot and when not? How to multiplex with threads and without them? This book provides the answers for all these questions and more.

Posted by Sergey Babkin 2010-01-28