<?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 on: Parallel Reasoning</title>
	<atom:link href="http://hoopercharles.wordpress.com/2010/02/17/parallel-reasoning/feed/" rel="self" type="application/rss+xml" />
	<link>http://hoopercharles.wordpress.com/2010/02/17/parallel-reasoning/</link>
	<description>Miscellaneous Random Oracle Topics: Stop, Think, ... Understand</description>
	<lastBuildDate>Mon, 13 May 2013 14:10:06 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>By: Charles Hooper</title>
		<link>http://hoopercharles.wordpress.com/2010/02/17/parallel-reasoning/#comment-3379</link>
		<dc:creator><![CDATA[Charles Hooper]]></dc:creator>
		<pubDate>Mon, 06 Jun 2011 12:47:36 +0000</pubDate>
		<guid isPermaLink="false">http://hoopercharles.wordpress.com/?p=1389#comment-3379</guid>
		<description><![CDATA[Sidh,

I might be stating the obvious here, but parallel query is not a magic fix for all types of performance problems.  Consider these two situations:
1. You have 32 CPUs (or cores), your query is not using parallel execution yet it is using 100% of one CPU (or core), the overall CPU utilization average is 50%, and the IO subsystem is not heavily utilized.
2. You have 32 CPUs (or cores), your query is not using parallel execution yet it is using 100% of one CPU (or core), the overall CPU utilization average is 50%, and the IO subsystem is nearly 100% utilized (either maximum number of I/Os per second or maximum throughput).

How might the outcome be different in both of the situations if parallel query is enabled?

It is quite possible that the first two queries that you helped with parallel query were in fact CPU bound (the single CPU utilized was the bottleneck), while the remaining queries were I/O bound (the I/O subsystem was the bottleneck).  In either case, it is best not to guess.  Instead, capture a 10046 trace at level 8 or 12 for the batch job and determine *why* the other queries execute more slowly when parallelized.  You might also capture delta values of V$OSSTAT periodically during the execution of the batch job so that you can see, for instance, if you now have 200 parallel slaves fighting for the 32 CPUs, or if you now have 200 parallel slaves all waiting for I/O.

You might take a look at a couple of other articles by a couple of OakTable Network members:
http://oracle-randolf.blogspot.com/2011/04/things-worth-to-mention-and-remember.html (a three part series)
http://oracledoug.com/serendipity/index.php?/plugin/tag/Parallel (blog category)
http://structureddata.org/category/oracle/parallel-execution/ (blog category)
http://jonathanlewis.wordpress.com/category/oracle/parallel-execution/ (blog category)]]></description>
		<content:encoded><![CDATA[<p>Sidh,</p>
<p>I might be stating the obvious here, but parallel query is not a magic fix for all types of performance problems.  Consider these two situations:<br />
1. You have 32 CPUs (or cores), your query is not using parallel execution yet it is using 100% of one CPU (or core), the overall CPU utilization average is 50%, and the IO subsystem is not heavily utilized.<br />
2. You have 32 CPUs (or cores), your query is not using parallel execution yet it is using 100% of one CPU (or core), the overall CPU utilization average is 50%, and the IO subsystem is nearly 100% utilized (either maximum number of I/Os per second or maximum throughput).</p>
<p>How might the outcome be different in both of the situations if parallel query is enabled?</p>
<p>It is quite possible that the first two queries that you helped with parallel query were in fact CPU bound (the single CPU utilized was the bottleneck), while the remaining queries were I/O bound (the I/O subsystem was the bottleneck).  In either case, it is best not to guess.  Instead, capture a 10046 trace at level 8 or 12 for the batch job and determine *why* the other queries execute more slowly when parallelized.  You might also capture delta values of V$OSSTAT periodically during the execution of the batch job so that you can see, for instance, if you now have 200 parallel slaves fighting for the 32 CPUs, or if you now have 200 parallel slaves all waiting for I/O.</p>
<p>You might take a look at a couple of other articles by a couple of OakTable Network members:<br />
<a href="http://oracle-randolf.blogspot.com/2011/04/things-worth-to-mention-and-remember.html" rel="nofollow">http://oracle-randolf.blogspot.com/2011/04/things-worth-to-mention-and-remember.html</a> (a three part series)<br />
<a href="http://oracledoug.com/serendipity/index.php?/plugin/tag/Parallel" rel="nofollow">http://oracledoug.com/serendipity/index.php?/plugin/tag/Parallel</a> (blog category)<br />
<a href="http://structureddata.org/category/oracle/parallel-execution/" rel="nofollow">http://structureddata.org/category/oracle/parallel-execution/</a> (blog category)<br />
<a href="http://jonathanlewis.wordpress.com/category/oracle/parallel-execution/" rel="nofollow">http://jonathanlewis.wordpress.com/category/oracle/parallel-execution/</a> (blog category)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sidh</title>
		<link>http://hoopercharles.wordpress.com/2010/02/17/parallel-reasoning/#comment-3358</link>
		<dc:creator><![CDATA[Sidh]]></dc:creator>
		<pubDate>Sun, 05 Jun 2011 13:58:15 +0000</pubDate>
		<guid isPermaLink="false">http://hoopercharles.wordpress.com/?p=1389#comment-3358</guid>
		<description><![CDATA[Hi Charles,

Currently bogged with a issue in parallel query tuning.
Prelude - Server - CMT T5120. 32 Cpu&#039;s. The Batch jobs when transferred from old server runs much slow. CMT servers encourage for parallel processing in batch jobs. So when we parallelized 2 queries, it was running much improved time (nearly 1/2 the time taken). But when we started parallelizing the rest, it degraded the performance of the rest. 
&lt;pre&gt;
SQL&gt; sho parameter parallel_

NAME                                 		TYPE        VALUE
------------------------------------ 		----------- ------------------------------
fast_start_parallel_rollback         	string      LOW
parallel_adaptive_multi_user        	 boolean     TRUE
parallel_automatic_tuning            	boolean     FALSE
parallel_execution_message_size      	integer     2152
parallel_instance_group              		string
parallel_max_servers                		 integer     40
parallel_min_percent                		 integer     0
parallel_min_servers                 		integer     0
parallel_server                      		boolean     FALSE
parallel_server_instances            		integer     1
parallel_threads_per_cpu             	integer     2
recovery_parallelism                 		integer     0
&lt;/pre&gt;]]></description>
		<content:encoded><![CDATA[<p>Hi Charles,</p>
<p>Currently bogged with a issue in parallel query tuning.<br />
Prelude &#8211; Server &#8211; CMT T5120. 32 Cpu&#8217;s. The Batch jobs when transferred from old server runs much slow. CMT servers encourage for parallel processing in batch jobs. So when we parallelized 2 queries, it was running much improved time (nearly 1/2 the time taken). But when we started parallelizing the rest, it degraded the performance of the rest. </p>
<pre>
SQL&gt; sho parameter parallel_

NAME                                 		TYPE        VALUE
------------------------------------ 		----------- ------------------------------
fast_start_parallel_rollback         	string      LOW
parallel_adaptive_multi_user        	 boolean     TRUE
parallel_automatic_tuning            	boolean     FALSE
parallel_execution_message_size      	integer     2152
parallel_instance_group              		string
parallel_max_servers                		 integer     40
parallel_min_percent                		 integer     0
parallel_min_servers                 		integer     0
parallel_server                      		boolean     FALSE
parallel_server_instances            		integer     1
parallel_threads_per_cpu             	integer     2
recovery_parallelism                 		integer     0
</pre>
]]></content:encoded>
	</item>
	<item>
		<title>By: Blogroll Report 12/02/2009 – 19/02/2010 &#171; Coskan&#8217;s Approach to Oracle</title>
		<link>http://hoopercharles.wordpress.com/2010/02/17/parallel-reasoning/#comment-528</link>
		<dc:creator><![CDATA[Blogroll Report 12/02/2009 – 19/02/2010 &#171; Coskan&#8217;s Approach to Oracle]]></dc:creator>
		<pubDate>Thu, 18 Mar 2010 16:45:13 +0000</pubDate>
		<guid isPermaLink="false">http://hoopercharles.wordpress.com/?p=1389#comment-528</guid>
		<description><![CDATA[[...] 28-Resource compilation for parallel querying  Charles Hooper-Parallel Reasoning [...]]]></description>
		<content:encoded><![CDATA[<p>[...] 28-Resource compilation for parallel querying  Charles Hooper-Parallel Reasoning [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Charles Hooper</title>
		<link>http://hoopercharles.wordpress.com/2010/02/17/parallel-reasoning/#comment-398</link>
		<dc:creator><![CDATA[Charles Hooper]]></dc:creator>
		<pubDate>Fri, 19 Feb 2010 04:24:26 +0000</pubDate>
		<guid isPermaLink="false">http://hoopercharles.wordpress.com/?p=1389#comment-398</guid>
		<description><![CDATA[Thanks for posting the link to the HTML version of the Oracle support site - now if Oracle would just redirect metalink.oracle.com to http://supporthtml.oracle.com I could probably remember how to access the non-Flash version of the website.]]></description>
		<content:encoded><![CDATA[<p>Thanks for posting the link to the HTML version of the Oracle support site &#8211; now if Oracle would just redirect metalink.oracle.com to <a href="http://supporthtml.oracle.com" rel="nofollow">http://supporthtml.oracle.com</a> I could probably remember how to access the non-Flash version of the website.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Timur Akhmadeev</title>
		<link>http://hoopercharles.wordpress.com/2010/02/17/parallel-reasoning/#comment-394</link>
		<dc:creator><![CDATA[Timur Akhmadeev]]></dc:creator>
		<pubDate>Thu, 18 Feb 2010 16:03:50 +0000</pubDate>
		<guid isPermaLink="false">http://hoopercharles.wordpress.com/?p=1389#comment-394</guid>
		<description><![CDATA[&gt;and well, the new Oracle’s support site is Flashy.
There&#039;s also http://supporthtml.oracle.com, without flash.]]></description>
		<content:encoded><![CDATA[<p>&gt;and well, the new Oracle’s support site is Flashy.<br />
There&#8217;s also <a href="http://supporthtml.oracle.com" rel="nofollow">http://supporthtml.oracle.com</a>, without flash.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Charles Hooper</title>
		<link>http://hoopercharles.wordpress.com/2010/02/17/parallel-reasoning/#comment-393</link>
		<dc:creator><![CDATA[Charles Hooper]]></dc:creator>
		<pubDate>Thu, 18 Feb 2010 14:33:25 +0000</pubDate>
		<guid isPermaLink="false">http://hoopercharles.wordpress.com/?p=1389#comment-393</guid>
		<description><![CDATA[Taral,

Thanks for the compliment.

There was a bit of humor embedded in this article, in case anyone missed it.  Just to clarify:
* Don&#039;t run SQL statements in parallel(1000) just to drive the cost of the query toward 0.  There were a couple of recent comments on this blog pointing back to an asktom article that partially explains why.
* Don&#039;t try viewing Oracle&#039;s support documents on a shiny new Apple iPad - the iPad does not support Adobe Flash, and well, the new Oracle&#039;s support site is Flashy.

Hopefully, this article provides access to a couple of helpful resources, and might even prompt someone else to write something that is well beyond a light-weight exploration of recent parallel query enhancements.]]></description>
		<content:encoded><![CDATA[<p>Taral,</p>
<p>Thanks for the compliment.</p>
<p>There was a bit of humor embedded in this article, in case anyone missed it.  Just to clarify:<br />
* Don&#8217;t run SQL statements in parallel(1000) just to drive the cost of the query toward 0.  There were a couple of recent comments on this blog pointing back to an asktom article that partially explains why.<br />
* Don&#8217;t try viewing Oracle&#8217;s support documents on a shiny new Apple iPad &#8211; the iPad does not support Adobe Flash, and well, the new Oracle&#8217;s support site is Flashy.</p>
<p>Hopefully, this article provides access to a couple of helpful resources, and might even prompt someone else to write something that is well beyond a light-weight exploration of recent parallel query enhancements.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Taral Desai</title>
		<link>http://hoopercharles.wordpress.com/2010/02/17/parallel-reasoning/#comment-390</link>
		<dc:creator><![CDATA[Taral Desai]]></dc:creator>
		<pubDate>Wed, 17 Feb 2010 21:06:37 +0000</pubDate>
		<guid isPermaLink="false">http://hoopercharles.wordpress.com/?p=1389#comment-390</guid>
		<description><![CDATA[Very Very Clean details. Thanks Charles for all your work and passing knowledge to all.]]></description>
		<content:encoded><![CDATA[<p>Very Very Clean details. Thanks Charles for all your work and passing knowledge to all.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
