<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'><id>tag:blogger.com,1999:blog-1700157236206200597.post934322544193836812..comments</id><updated>2009-05-10T14:57:18.316-07:00</updated><category term='ruby'/><category term='linq'/><category term='clojure'/><category term='erlang'/><category term='programming'/><category term='continuation'/><category term='decorator'/><category term='manycore'/><category term='monad'/><category term='actor'/><category term='events'/><category term='parsing'/><category term='osx'/><category term='concurrency'/><category term='mutability'/><category term='c#'/><category term='turing'/><category term='shareever'/><category term='iterator'/><category term='sql'/><category term='python'/><category term='rx'/><category term='bits'/><category term='haskell'/><category term='reactive'/><category term='imagemagick'/><category term='productivity'/><category term='automation'/><category term='enumerator'/><category term='mediserve'/><category term='wes'/><category term='dtrace'/><category term='message-passing'/><category term='generator'/><title type='text'>Comments on Valued Lessons: The manycore era is already upon us (and python is...</title><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://www.valuedlessons.com/feeds/934322544193836812/comments/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/934322544193836812/comments/default'/><link rel='alternate' type='text/html' href='http://www.valuedlessons.com/2008/10/manycore-era-is-already-upon-us-and.html'/><author><name>Peter Thatcher</name><uri>http://www.blogger.com/profile/01092342988993218446</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>7</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1700157236206200597.post-7900976537732737329</id><published>2009-05-10T14:57:00.000-07:00</published><updated>2009-05-10T14:57:00.000-07:00</updated><title type='text'>Shuttleworth is half-right. 2 and 3 aren't mutuall...</title><content type='html'>Shuttleworth is half-right. 2 and 3 aren't mutually exclusive. &lt;br /&gt;&lt;br /&gt;Threads are important when scaling vertically and specially in the cloud environment where you pay per cpu/mem it's invaluable.&lt;br /&gt;&lt;br /&gt;Process are better when scaling horizontally, but that's a better solution for really big applications. &lt;br /&gt;&lt;br /&gt;I think both are necessary and as long as there are tools that allow me to abstract the scaling strategy I'm fine.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/934322544193836812/comments/default/7900976537732737329'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/934322544193836812/comments/default/7900976537732737329'/><link rel='alternate' type='text/html' href='http://www.valuedlessons.com/2008/10/manycore-era-is-already-upon-us-and.html?showComment=1241992620000#c7900976537732737329' title=''/><author><name>Anonymous</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.valuedlessons.com/2008/10/manycore-era-is-already-upon-us-and.html' ref='tag:blogger.com,1999:blog-1700157236206200597.post-934322544193836812' source='http://www.blogger.com/feeds/1700157236206200597/posts/default/934322544193836812' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-160432901'/></entry><entry><id>tag:blogger.com,1999:blog-1700157236206200597.post-1761691912848924600</id><published>2009-03-14T21:34:00.000-07:00</published><updated>2009-03-14T21:34:00.000-07:00</updated><title type='text'>Not to say this approach is the be-all, end-all fo...</title><content type='html'>Not to say this approach is the be-all, end-all for multi-core work, but good ol' process spawning gets a lot of real work done, fairly easily, without changing the way I have to work.&lt;BR/&gt;&lt;BR/&gt;Too bad Blogger is brain dead about pre tags, but for example here's 75% (approx) of each core being used; I think I needed to put more load on this web app to jam it up to 100% total:&lt;BR/&gt;&lt;BR/&gt; CPU   %user   %nice    %sys&lt;BR/&gt; all   60.44    0.00   13.24&lt;BR/&gt;   0   62.35    0.00   13.53&lt;BR/&gt;   1   55.88    0.00   13.53&lt;BR/&gt;   2   62.35    0.00   11.76&lt;BR/&gt;   3   60.82    0.00   14.62&lt;BR/&gt;&lt;BR/&gt;What I like about this is I can get incredible - by the standards of just a few years ago - amount of processing done, with commodity hardware, without radically changing how I have to develop.&lt;BR/&gt;&lt;BR/&gt;Again, I'm not suggesting there isn't room for improvement... and some folks will be forced to by their own needs and circumstances. But it isn't all bad that not *everyone* has to.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/934322544193836812/comments/default/1761691912848924600'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/934322544193836812/comments/default/1761691912848924600'/><link rel='alternate' type='text/html' href='http://www.valuedlessons.com/2008/10/manycore-era-is-already-upon-us-and.html?showComment=1237091640000#c1761691912848924600' title=''/><author><name>Michael Watkins</name><uri>http://mikewatkins.ca/tags/python/</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.valuedlessons.com/2008/10/manycore-era-is-already-upon-us-and.html' ref='tag:blogger.com,1999:blog-1700157236206200597.post-934322544193836812' source='http://www.blogger.com/feeds/1700157236206200597/posts/default/934322544193836812' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-846554002'/></entry><entry><id>tag:blogger.com,1999:blog-1700157236206200597.post-3805311491814575916</id><published>2008-12-16T10:50:00.000-08:00</published><updated>2008-12-16T10:50:00.000-08:00</updated><title type='text'>I just ran into this myself, I was working on a pr...</title><content type='html'>I just ran into this myself, I was working on a project that is very cpu bound, but also very parallel. I could run 1000 threads if my system would not grind to a halt doing so.&lt;BR/&gt;&lt;BR/&gt;But, no matter what I set the thread count to, python only uses 25%. &lt;BR/&gt;&lt;BR/&gt;I will have to continue looking into options, but I may just have to run 4 copies of the program to allow me to access the full power of my system for now.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/934322544193836812/comments/default/3805311491814575916'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/934322544193836812/comments/default/3805311491814575916'/><link rel='alternate' type='text/html' href='http://www.valuedlessons.com/2008/10/manycore-era-is-already-upon-us-and.html?showComment=1229453400000#c3805311491814575916' title=''/><author><name>dJCL</name><uri>http://www.blogger.com/profile/01638586373862525588</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.valuedlessons.com/2008/10/manycore-era-is-already-upon-us-and.html' ref='tag:blogger.com,1999:blog-1700157236206200597.post-934322544193836812' source='http://www.blogger.com/feeds/1700157236206200597/posts/default/934322544193836812' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-285475115'/></entry><entry><id>tag:blogger.com,1999:blog-1700157236206200597.post-849395841296229144</id><published>2008-10-27T03:01:00.000-07:00</published><updated>2008-10-27T03:01:00.000-07:00</updated><title type='text'>I agree, the whole multicore thing has been out fo...</title><content type='html'>I agree, the whole multicore thing has been out for a while now and I'm yet to see anyone address it with much thought.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/934322544193836812/comments/default/849395841296229144'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/934322544193836812/comments/default/849395841296229144'/><link rel='alternate' type='text/html' href='http://www.valuedlessons.com/2008/10/manycore-era-is-already-upon-us-and.html?showComment=1225101660000#c849395841296229144' title=''/><author><name>onionbhajee</name><uri>http://www.blogger.com/profile/07100646998731646230</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_z1C-g9OpQmg/SP9s75eVfFI/AAAAAAAAACk/V5DjP34x66g/S220/me.jpg'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.valuedlessons.com/2008/10/manycore-era-is-already-upon-us-and.html' ref='tag:blogger.com,1999:blog-1700157236206200597.post-934322544193836812' source='http://www.blogger.com/feeds/1700157236206200597/posts/default/934322544193836812' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-692850840'/></entry><entry><id>tag:blogger.com,1999:blog-1700157236206200597.post-9148053080969058064</id><published>2008-10-15T08:52:00.000-07:00</published><updated>2008-10-15T08:52:00.000-07:00</updated><title type='text'>I may have to try using multiple processes.  I had...</title><content type='html'>I may have to try using multiple processes.  I had seen that module before but didn't realize it was so complete.  Thanks for the tip.&lt;BR/&gt;&lt;BR/&gt;But can we all agree that's really a kludge?  It sounds a lot like when Java people defend not having first-class functions by saying "just use an interface".  Sure, it's possible.  But it's ugly and no fun.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/934322544193836812/comments/default/9148053080969058064'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/934322544193836812/comments/default/9148053080969058064'/><link rel='alternate' type='text/html' href='http://www.valuedlessons.com/2008/10/manycore-era-is-already-upon-us-and.html?showComment=1224085920000#c9148053080969058064' title=''/><author><name>Peter Thatcher</name><uri>http://www.blogger.com/profile/01092342988993218446</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.valuedlessons.com/2008/10/manycore-era-is-already-upon-us-and.html' ref='tag:blogger.com,1999:blog-1700157236206200597.post-934322544193836812' source='http://www.blogger.com/feeds/1700157236206200597/posts/default/934322544193836812' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-855974674'/></entry><entry><id>tag:blogger.com,1999:blog-1700157236206200597.post-3154035503360924527</id><published>2008-10-15T07:43:00.000-07:00</published><updated>2008-10-15T07:43:00.000-07:00</updated><title type='text'>Mark Shuttleworth brought this up in his Keynote a...</title><content type='html'>Mark Shuttleworth brought this up in his Keynote at Pycon UK and the reaction seemed to fall into 3 camps.&lt;BR/&gt;&lt;BR/&gt;1. Who cares?&lt;BR/&gt;2. Just spawn out processes and use processing.&lt;BR/&gt;3. I want threads, stop telling me how to design my app, aka Processes are too heavyweight on Windows.&lt;BR/&gt;&lt;BR/&gt;I guess there are people out there in camp 3 who need threads, not processes, and just can't live with the GIL.  As Stan mentioned those in camp 2 have a solution, but it seems more like a workaround than a solution :(&lt;BR/&gt;&lt;BR/&gt;I have a recollection of a patch  being posted that seemed to work on multi-core machines, but ran slower on single core machines and so was scrapped.  When single-core becomes the exception, it may be that it is revisited, but who knows?</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/934322544193836812/comments/default/3154035503360924527'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/934322544193836812/comments/default/3154035503360924527'/><link rel='alternate' type='text/html' href='http://www.valuedlessons.com/2008/10/manycore-era-is-already-upon-us-and.html?showComment=1224081780000#c3154035503360924527' title=''/><author><name>Anonymous</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.valuedlessons.com/2008/10/manycore-era-is-already-upon-us-and.html' ref='tag:blogger.com,1999:blog-1700157236206200597.post-934322544193836812' source='http://www.blogger.com/feeds/1700157236206200597/posts/default/934322544193836812' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1428839426'/></entry><entry><id>tag:blogger.com,1999:blog-1700157236206200597.post-4624881799639781709</id><published>2008-10-15T06:01:00.000-07:00</published><updated>2008-10-15T06:01:00.000-07:00</updated><title type='text'>It's worth taking a look at the "processing" modul...</title><content type='html'>It's worth taking a look at the "processing" module, which was renamed the "multiprocessing" module and put into Python 2.6.  It provides a concurrency model that avoids the GIL by forking and using pipes and shared memory.  Sure, that's a little ugly under the hood, but (multi)processing wraps it up in a nice looking API:&lt;BR/&gt;&lt;BR/&gt;&lt;A HREF="http://docs.python.org/library/multiprocessing.html" REL="nofollow"&gt;multiprocessing documentation&lt;/A&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/934322544193836812/comments/default/4624881799639781709'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1700157236206200597/934322544193836812/comments/default/4624881799639781709'/><link rel='alternate' type='text/html' href='http://www.valuedlessons.com/2008/10/manycore-era-is-already-upon-us-and.html?showComment=1224075660000#c4624881799639781709' title=''/><author><name>Stan Seibert</name><uri>http://www.blogger.com/profile/08688052715877131030</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://www.valuedlessons.com/2008/10/manycore-era-is-already-upon-us-and.html' ref='tag:blogger.com,1999:blog-1700157236206200597.post-934322544193836812' source='http://www.blogger.com/feeds/1700157236206200597/posts/default/934322544193836812' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-497752076'/></entry></feed>
