{"id":74,"date":"2012-06-19T13:56:03","date_gmt":"2012-06-19T13:56:03","guid":{"rendered":"http:\/\/blog.mozilla.org\/nfroyd\/?p=74"},"modified":"2012-06-19T13:56:03","modified_gmt":"2012-06-19T13:56:03","slug":"performant-concurrency","status":"publish","type":"post","link":"https:\/\/blog.mozilla.org\/nfroyd\/2012\/06\/19\/performant-concurrency\/","title":{"rendered":"performant concurrency"},"content":{"rendered":"<blockquote><p>The most important conclusion from this foray into history is that concurrency has always been employed for one purpose: to improve the performance of the system. This seems almost too obvious to make explicit\u2014why else would we want concurrency if not to improve performance?\u2014yet for all its obviousness, concurrency\u2019s <em>raison d\u2019\u00eatre<\/em> is increasingly forgotten, as if the proliferation of concurrent hardware has awakened an anxiety that all software must use all available physical resources. Just as no programmer felt a moral obligation to eliminate pipeline stalls on a superscalar microprocessor, no software engineer should feel responsible for using concurrency simply because the hardware supports it. Rather, concurrency should be thought about and used for one reason and one reason only: because it is needs [sic] to yield an acceptably performing system.<\/p><\/blockquote>\n<p>\u2013from <a href=\"http:\/\/queue.acm.org\/detail.cfm?id=1454462\">Real-World Concurrency<\/a> by Bryan Cantrill and Jeff Bonwick<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The most important conclusion from this foray into history is that concurrency has always been employed for one purpose: to improve the performance of the system. This seems almost too obvious to make explicit\u2014why else would we want concurrency if not to improve performance?\u2014yet for all its obviousness, concurrency\u2019s raison d\u2019\u00eatre is increasingly forgotten, as [&hellip;]<\/p>\n","protected":false},"author":320,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"_links":{"self":[{"href":"https:\/\/blog.mozilla.org\/nfroyd\/wp-json\/wp\/v2\/posts\/74"}],"collection":[{"href":"https:\/\/blog.mozilla.org\/nfroyd\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.mozilla.org\/nfroyd\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.mozilla.org\/nfroyd\/wp-json\/wp\/v2\/users\/320"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.mozilla.org\/nfroyd\/wp-json\/wp\/v2\/comments?post=74"}],"version-history":[{"count":0,"href":"https:\/\/blog.mozilla.org\/nfroyd\/wp-json\/wp\/v2\/posts\/74\/revisions"}],"wp:attachment":[{"href":"https:\/\/blog.mozilla.org\/nfroyd\/wp-json\/wp\/v2\/media?parent=74"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.mozilla.org\/nfroyd\/wp-json\/wp\/v2\/categories?post=74"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.mozilla.org\/nfroyd\/wp-json\/wp\/v2\/tags?post=74"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}