<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments for TimothyAWiseman - SQLWise</title>
	<atom:link href="http://timothyawiseman.wordpress.com/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://timothyawiseman.wordpress.com</link>
	<description>A blog about SQL, technology, and careers in technology.</description>
	<lastBuildDate>Tue, 07 May 2013 07:10:41 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>Comment on Writing About SQL Server by http://betaforcemaxblog.com</title>
		<link>http://timothyawiseman.wordpress.com/2012/07/09/writing-about-sql-server/comment-page-1/#comment-258</link>
		<dc:creator><![CDATA[http://betaforcemaxblog.com]]></dc:creator>
		<pubDate>Tue, 07 May 2013 07:10:41 +0000</pubDate>
		<guid isPermaLink="false">http://timothyawiseman.wordpress.com/?p=4#comment-258</guid>
		<description><![CDATA[You actually make it seem really easy with your presentation but I to find 
this matter to be really one thing which I believe I would 
by no means understand. It sort of feels too complicated and very 
vast for me. I&#039;m having a look ahead on your next submit, I&#039;ll attempt to get the hang 
of it!]]></description>
		<content:encoded><![CDATA[<p>You actually make it seem really easy with your presentation but I to find<br />
this matter to be really one thing which I believe I would<br />
by no means understand. It sort of feels too complicated and very<br />
vast for me. I&#8217;m having a look ahead on your next submit, I&#8217;ll attempt to get the hang<br />
of it!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on A really simple Multiprocessing Python Example by motre</title>
		<link>http://timothyawiseman.wordpress.com/2012/12/21/a-really-simple-multiprocessing-python-example/comment-page-1/#comment-256</link>
		<dc:creator><![CDATA[motre]]></dc:creator>
		<pubDate>Sat, 30 Mar 2013 22:25:30 +0000</pubDate>
		<guid isPermaLink="false">http://timothyawiseman.wordpress.com/?p=56#comment-256</guid>
		<description><![CDATA[Thanks for the reply.  I&#039;m focusing on multiprocessing, but multithreading may be possible.  The latter shares memory and I don&#039;t know what that means in the context of Python.  If I did this in C, I&#039;d still prefer multiprocessing as that keeps things separate.  It looks as if the Python packages are trying to keep the API semantics alike as much as possible, so that is good.

Yes, these tasks are completely independent once started.  And processes are easier to clean up (done by the OS at exit).  But the multiprocessing package seems more focused on all the communication and sharing support that I don&#039;t need.

I am thinking, if socket passing works well in this, of having a child do the listen loop and pass everything to the parent, which then makes new child workers as needed.  But even this runs into a classic programming issue of how to wait for 2 things at the same time when each provides its own function call to wait for one thing.]]></description>
		<content:encoded><![CDATA[<p>Thanks for the reply.  I&#8217;m focusing on multiprocessing, but multithreading may be possible.  The latter shares memory and I don&#8217;t know what that means in the context of Python.  If I did this in C, I&#8217;d still prefer multiprocessing as that keeps things separate.  It looks as if the Python packages are trying to keep the API semantics alike as much as possible, so that is good.</p>
<p>Yes, these tasks are completely independent once started.  And processes are easier to clean up (done by the OS at exit).  But the multiprocessing package seems more focused on all the communication and sharing support that I don&#8217;t need.</p>
<p>I am thinking, if socket passing works well in this, of having a child do the listen loop and pass everything to the parent, which then makes new child workers as needed.  But even this runs into a classic programming issue of how to wait for 2 things at the same time when each provides its own function call to wait for one thing.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on A really simple Multiprocessing Python Example by TimothyAWiseman</title>
		<link>http://timothyawiseman.wordpress.com/2012/12/21/a-really-simple-multiprocessing-python-example/comment-page-1/#comment-255</link>
		<dc:creator><![CDATA[TimothyAWiseman]]></dc:creator>
		<pubDate>Sat, 30 Mar 2013 21:07:17 +0000</pubDate>
		<guid isPermaLink="false">http://timothyawiseman.wordpress.com/?p=56#comment-255</guid>
		<description><![CDATA[I&#039;m afraid I haven&#039;t seen an example like what you are describing, but it does not seem to be that difficult.  As you comment, you probably do not want to join the threads as that will cause them to be somewhat dependent on completion of the other joined threads.  It works well for tightly related threads on a parallelizable and especially on an embarrassingly parallel algorithm.

You want to spawn more independent threads that do not need much interaction.  If you write the code to handle the connections after they come in as a separate program you could look at the subprocess module to manage them.  If you want them to be more conventionally part of your main program you may want to look at threading which permits more control over independent threads or event he lower level thread module instead of using multiprocessing.]]></description>
		<content:encoded><![CDATA[<p>I&#8217;m afraid I haven&#8217;t seen an example like what you are describing, but it does not seem to be that difficult.  As you comment, you probably do not want to join the threads as that will cause them to be somewhat dependent on completion of the other joined threads.  It works well for tightly related threads on a parallelizable and especially on an embarrassingly parallel algorithm.</p>
<p>You want to spawn more independent threads that do not need much interaction.  If you write the code to handle the connections after they come in as a separate program you could look at the subprocess module to manage them.  If you want them to be more conventionally part of your main program you may want to look at threading which permits more control over independent threads or event he lower level thread module instead of using multiprocessing.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on A really simple Multiprocessing Python Example by motre</title>
		<link>http://timothyawiseman.wordpress.com/2012/12/21/a-really-simple-multiprocessing-python-example/comment-page-1/#comment-254</link>
		<dc:creator><![CDATA[motre]]></dc:creator>
		<pubDate>Sat, 30 Mar 2013 20:49:55 +0000</pubDate>
		<guid isPermaLink="false">http://timothyawiseman.wordpress.com/?p=56#comment-254</guid>
		<description><![CDATA[I&#039;ve been looking around for simple coding patterns in Python for multiprocessing and the search led me to this blog article.  While your example code is certainly simple, and even reflects my interest in Mandelbrot calculations, I&#039;m still looking for something slightly different and wondering if you have seen anything like this.

I want to create a network daemon that listens for new incoming connections.  For each connection that arrives, I want to run a specific handler for that connection (a worker process).  This will need to be sure the connection resources (and underlying system socket) are closed in the parent process, and everything else is closed in the child process.  In the C language this is a cumbersome chore.  I&#039;m hoping the multiprocessing package has a means to handle this.

Once the child/worker is running, I have no further need to communicate or share with it.  The parent should resume listening for more connections.  So calling join() would break the purpose, which is to allow many processes for many connections, without the time taken by one to delay any others.  Fortunately for my case these are not computational, so I could run many worker processes per CPU core.

But I would like keep track of how many are running so the parent can stop listening if the number of workers is at the maximum (for example 100 workers might be the maximum).  This would mean the multiprocessing package would be handling the child process exits somehow behind the scenes.  The parent would just wait until the number of children get below 100 then resume the listen loop.

I can write this in C.  But I want to do this in Python so the worker logic can be implemented in Python.

Any ideas about this?  BTW, the worker logic is going to do a lot of DB accesses and output some summary results as a very simple HTML page.]]></description>
		<content:encoded><![CDATA[<p>I&#8217;ve been looking around for simple coding patterns in Python for multiprocessing and the search led me to this blog article.  While your example code is certainly simple, and even reflects my interest in Mandelbrot calculations, I&#8217;m still looking for something slightly different and wondering if you have seen anything like this.</p>
<p>I want to create a network daemon that listens for new incoming connections.  For each connection that arrives, I want to run a specific handler for that connection (a worker process).  This will need to be sure the connection resources (and underlying system socket) are closed in the parent process, and everything else is closed in the child process.  In the C language this is a cumbersome chore.  I&#8217;m hoping the multiprocessing package has a means to handle this.</p>
<p>Once the child/worker is running, I have no further need to communicate or share with it.  The parent should resume listening for more connections.  So calling join() would break the purpose, which is to allow many processes for many connections, without the time taken by one to delay any others.  Fortunately for my case these are not computational, so I could run many worker processes per CPU core.</p>
<p>But I would like keep track of how many are running so the parent can stop listening if the number of workers is at the maximum (for example 100 workers might be the maximum).  This would mean the multiprocessing package would be handling the child process exits somehow behind the scenes.  The parent would just wait until the number of children get below 100 then resume the listen loop.</p>
<p>I can write this in C.  But I want to do this in Python so the worker logic can be implemented in Python.</p>
<p>Any ideas about this?  BTW, the worker logic is going to do a lot of DB accesses and output some summary results as a very simple HTML page.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Playing with Cython by TimothyAWiseman</title>
		<link>http://timothyawiseman.wordpress.com/2012/11/23/playing-with-cython/comment-page-1/#comment-247</link>
		<dc:creator><![CDATA[TimothyAWiseman]]></dc:creator>
		<pubDate>Mon, 11 Mar 2013 13:49:00 +0000</pubDate>
		<guid isPermaLink="false">http://timothyawiseman.wordpress.com/?p=48#comment-247</guid>
		<description><![CDATA[I have written scripts that import a Cython module and use PyQt, but I have not yet called PyQt from inside a Cython module.  As far as I know, it should work smoothly.]]></description>
		<content:encoded><![CDATA[<p>I have written scripts that import a Cython module and use PyQt, but I have not yet called PyQt from inside a Cython module.  As far as I know, it should work smoothly.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Playing with Cython by TheFactory</title>
		<link>http://timothyawiseman.wordpress.com/2012/11/23/playing-with-cython/comment-page-1/#comment-245</link>
		<dc:creator><![CDATA[TheFactory]]></dc:creator>
		<pubDate>Sat, 09 Mar 2013 16:09:39 +0000</pubDate>
		<guid isPermaLink="false">http://timothyawiseman.wordpress.com/?p=48#comment-245</guid>
		<description><![CDATA[Did you manage to get Cython to work with PyQt too (since you had 1 module with sheer Python code  and one with mixed PyQt/Python?]]></description>
		<content:encoded><![CDATA[<p>Did you manage to get Cython to work with PyQt too (since you had 1 module with sheer Python code  and one with mixed PyQt/Python?</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on The effects of an SSD on SQL Server Performance by Hans</title>
		<link>http://timothyawiseman.wordpress.com/2012/07/29/the-effects-of-an-ssd-on-sql-server-performance/comment-page-1/#comment-218</link>
		<dc:creator><![CDATA[Hans]]></dc:creator>
		<pubDate>Tue, 19 Feb 2013 12:32:29 +0000</pubDate>
		<guid isPermaLink="false">http://timothyawiseman.wordpress.com/?p=26#comment-218</guid>
		<description><![CDATA[A commit forces SQL Server to write the associated record(s) to the transaction log. The data page in memory is called &#039;Dirty&#039; until it is flushed to disk. SQL Server writes this data in three ways:
A dirty page is written to disk in one of three ways.
* Lazy writing
* Eager writing
* Checkpoint (manual or automatic)]]></description>
		<content:encoded><![CDATA[<p>A commit forces SQL Server to write the associated record(s) to the transaction log. The data page in memory is called &#8216;Dirty&#8217; until it is flushed to disk. SQL Server writes this data in three ways:<br />
A dirty page is written to disk in one of three ways.<br />
* Lazy writing<br />
* Eager writing<br />
* Checkpoint (manual or automatic)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on The effects of an SSD on SQL Server Performance by Frank</title>
		<link>http://timothyawiseman.wordpress.com/2012/07/29/the-effects-of-an-ssd-on-sql-server-performance/comment-page-1/#comment-171</link>
		<dc:creator><![CDATA[Frank]]></dc:creator>
		<pubDate>Thu, 03 Jan 2013 22:58:38 +0000</pubDate>
		<guid isPermaLink="false">http://timothyawiseman.wordpress.com/?p=26#comment-171</guid>
		<description><![CDATA[A commit does not force the server to do anything. It notifies the server that you are ready to write but the server can still keep your data in the logical buffer and write it when it pleases.]]></description>
		<content:encoded><![CDATA[<p>A commit does not force the server to do anything. It notifies the server that you are ready to write but the server can still keep your data in the logical buffer and write it when it pleases.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on The effects of an SSD on SQL Server Performance by bluewoodtree</title>
		<link>http://timothyawiseman.wordpress.com/2012/07/29/the-effects-of-an-ssd-on-sql-server-performance/comment-page-1/#comment-160</link>
		<dc:creator><![CDATA[bluewoodtree]]></dc:creator>
		<pubDate>Sun, 02 Dec 2012 05:11:46 +0000</pubDate>
		<guid isPermaLink="false">http://timothyawiseman.wordpress.com/?p=26#comment-160</guid>
		<description><![CDATA[Very nice article - thorough and well written. I just upgraded my MacBook today with an SSD and wrote and article about my experience. If you are interested: http://scientific-ocean.com/2012/12/01/tune-up-your-macbook-part-ii-solid-state-drive/]]></description>
		<content:encoded><![CDATA[<p>Very nice article &#8211; thorough and well written. I just upgraded my MacBook today with an SSD and wrote and article about my experience. If you are interested: <a href="http://scientific-ocean.com/2012/12/01/tune-up-your-macbook-part-ii-solid-state-drive/" rel="nofollow">http://scientific-ocean.com/2012/12/01/tune-up-your-macbook-part-ii-solid-state-drive/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on The effects of an SSD on SQL Server Performance by Jeff Moden</title>
		<link>http://timothyawiseman.wordpress.com/2012/07/29/the-effects-of-an-ssd-on-sql-server-performance/comment-page-1/#comment-136</link>
		<dc:creator><![CDATA[Jeff Moden]]></dc:creator>
		<pubDate>Wed, 10 Oct 2012 03:30:45 +0000</pubDate>
		<guid isPermaLink="false">http://timothyawiseman.wordpress.com/?p=26#comment-136</guid>
		<description><![CDATA[&quot;which is a nice reminder that frequently you can get better improvements by optimizing the code than by improving the hardware.&quot;

Nice article, Timothy.  And truer words never spoken.

Also, thank you for the mention.  I truly appreciate it.]]></description>
		<content:encoded><![CDATA[<p>&#8220;which is a nice reminder that frequently you can get better improvements by optimizing the code than by improving the hardware.&#8221;</p>
<p>Nice article, Timothy.  And truer words never spoken.</p>
<p>Also, thank you for the mention.  I truly appreciate it.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
