<?xml version="1.0" encoding="iso-8859-1"?><!-- generator="b2evolution/2.4.5" -->
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:admin="http://webns.net/mvcb/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		<title>Zack Medico - Latest comments</title>
		<link>http://blogs.gentoo.org/zmedico?disp=comments</link>
		<description></description>
		<language>en-US</language>
		<docs>http://backend.userland.com/rss</docs>
		<admin:generatorAgent rdf:resource="http://b2evolution.net/?v=2.4.5"/>
		<ttl>60</ttl>
				<item>
			<title>In response to: New overlay config files: metadata/layout.conf and /etc/portage/repos.conf</title>
			<pubDate>Tue, 21 Apr 2009 21:33:08 +0000</pubDate>
			<dc:creator>Markos Chandras [Visitor]</dc:creator>
			<guid isPermaLink="false">c21161@http://blogs.gentoo.org/</guid>
			<description>Interesting approach :)&lt;br /&gt;
It is a smart way to protect users against unwanted overrides, which leads to increased QA.&lt;br /&gt;
&lt;br /&gt;
Good job :)</description>
			<content:encoded><![CDATA[Interesting approach :)<br />
It is a smart way to protect users against unwanted overrides, which leads to increased QA.<br />
<br />
Good job :)]]></content:encoded>
			<link>http://blogs.gentoo.org/zmedico/2009/04/20/overlay_layout_conf#c21161</link>
		</item>
				<item>
			<title>In response to: Informative output for unresolved blockers</title>
			<pubDate>Sat, 07 Feb 2009 02:41:58 +0000</pubDate>
			<dc:creator>David Abbott [Visitor]</dc:creator>
			<guid isPermaLink="false">c20333@http://blogs.gentoo.org/</guid>
			<description>Thank you for all your excellent work, very much appreciated by all your loyal fans, the Gentoo users.</description>
			<content:encoded><![CDATA[Thank you for all your excellent work, very much appreciated by all your loyal fans, the Gentoo users.]]></content:encoded>
			<link>http://blogs.gentoo.org/zmedico/2009/02/05/informative_blocker_output#c20333</link>
		</item>
				<item>
			<title>In response to: Informative output for unresolved blockers</title>
			<pubDate>Fri, 06 Feb 2009 09:36:20 +0000</pubDate>
			<dc:creator>Fitzcarraldo [Visitor]</dc:creator>
			<guid isPermaLink="false">c20324@http://blogs.gentoo.org/</guid>
			<description>Great stuff. And asking the user if (s)he would like an obsolete package removed from the world file would be excellent.</description>
			<content:encoded><![CDATA[Great stuff. And asking the user if (s)he would like an obsolete package removed from the world file would be excellent.]]></content:encoded>
			<link>http://blogs.gentoo.org/zmedico/2009/02/05/informative_blocker_output#c20324</link>
		</item>
				<item>
			<title>In response to: Portage now supports building multiple packages in parallel</title>
			<pubDate>Thu, 14 Aug 2008 05:30:37 +0000</pubDate>
			<dc:creator>Zac MEDICO [Member]</dc:creator>
			<guid isPermaLink="false">c19945@http://blogs.gentoo.org/</guid>
			<description>&lt;blockquote&gt;We might consider implementing more aggressive parallelization algorithms in the future.&lt;/blockquote&gt;&lt;br /&gt;
&lt;br /&gt;
Now I've found a way to make the parallelization algorithm more aggressive in some cases, without making the build order any less optimal. The patch is in svn &lt;a href=&quot;http://sources.gentoo.org/viewcvs.py/portage?view=rev&amp;amp;rev=11405&quot; rel=&quot;nofollow&quot;&gt;r11405&lt;/a&gt; and it will be included in &lt;a href=&quot;http://packages.gentoo.org/package/sys-apps/portage&quot; rel=&quot;nofollow&quot;&gt;&gt;=sys-apps/portage-2.2_rc9&lt;/a&gt;.&lt;br /&gt;
</description>
			<content:encoded><![CDATA[<blockquote>We might consider implementing more aggressive parallelization algorithms in the future.</blockquote><br />
<br />
Now I've found a way to make the parallelization algorithm more aggressive in some cases, without making the build order any less optimal. The patch is in svn <a href="http://sources.gentoo.org/viewcvs.py/portage?view=rev&amp;rev=11405" rel="nofollow">r11405</a> and it will be included in <a href="http://packages.gentoo.org/package/sys-apps/portage" rel="nofollow">>=sys-apps/portage-2.2_rc9</a>.<br />
]]></content:encoded>
			<link>http://blogs.gentoo.org/zmedico/2008/07/23/portage_parallel_builds#c19945</link>
		</item>
				<item>
			<title>In response to: Portage now supports building multiple packages in parallel</title>
			<pubDate>Wed, 06 Aug 2008 22:32:19 +0000</pubDate>
			<dc:creator>Zac MEDICO [Member]</dc:creator>
			<guid isPermaLink="false">c19942@http://blogs.gentoo.org/</guid>
			<description>&lt;blockquote&gt;&lt;br /&gt;
a) after --resume, and&lt;br /&gt;
b) even after --keep-going resumes&lt;br /&gt;
since I do not see any parallel emerges anymore. :-(&lt;br /&gt;
&lt;br /&gt;
In fact, IIRC after --resume the compressed output of parallel emerges would not even appear, so the new options probably did not survive the restart.&lt;br /&gt;
&lt;/blockquote&gt;&lt;br /&gt;
&lt;br /&gt;
I can confirm that --resume does not properly preserve --jobs and --load-average options, so I will have that fixed in the next release (that will be 2.2_rc7).&lt;br /&gt;
&lt;br /&gt;
I suspect that the --keep-going behavior that you've observed is due to the topology of the dependency graph, and the following algorithm:&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;The algorithm used to choose packages that will execute concurrently with other packages is as conservative as possible in the sense that a given package will not be executed if the subgraph composed of its direct and indirect dependencies contains any scheduled merges. By ensuring that the subgraph of deep dependencies is fully up to date in this way, potential problems are avoided which could be triggered by other build orders that are less optimal.&lt;/blockquote&gt;&lt;br /&gt;
&lt;br /&gt;
We might consider implementing more aggressive parallelization algorithms in the future. However, those who would consider choosing a more aggressive algorithm should ask themselves why they are in such a hurry. A more aggressive algorithm is inherently less optimal and therefore it only makes sense when there is some kind of deadline to meet. Even with a deadline, there are other techniques such as ccache and distcc which can help improve performance without sacrificing optimal build order.&lt;br /&gt;
&lt;br /&gt;
</description>
			<content:encoded><![CDATA[<blockquote><br />
a) after --resume, and<br />
b) even after --keep-going resumes<br />
since I do not see any parallel emerges anymore. :-(<br />
<br />
In fact, IIRC after --resume the compressed output of parallel emerges would not even appear, so the new options probably did not survive the restart.<br />
</blockquote><br />
<br />
I can confirm that --resume does not properly preserve --jobs and --load-average options, so I will have that fixed in the next release (that will be 2.2_rc7).<br />
<br />
I suspect that the --keep-going behavior that you've observed is due to the topology of the dependency graph, and the following algorithm:<br />
<br />
<blockquote>The algorithm used to choose packages that will execute concurrently with other packages is as conservative as possible in the sense that a given package will not be executed if the subgraph composed of its direct and indirect dependencies contains any scheduled merges. By ensuring that the subgraph of deep dependencies is fully up to date in this way, potential problems are avoided which could be triggered by other build orders that are less optimal.</blockquote><br />
<br />
We might consider implementing more aggressive parallelization algorithms in the future. However, those who would consider choosing a more aggressive algorithm should ask themselves why they are in such a hurry. A more aggressive algorithm is inherently less optimal and therefore it only makes sense when there is some kind of deadline to meet. Even with a deadline, there are other techniques such as ccache and distcc which can help improve performance without sacrificing optimal build order.<br />
<br />
]]></content:encoded>
			<link>http://blogs.gentoo.org/zmedico/2008/07/23/portage_parallel_builds#c19942</link>
		</item>
				<item>
			<title>In response to: Portage now supports building multiple packages in parallel</title>
			<pubDate>Wed, 06 Aug 2008 13:06:36 +0000</pubDate>
			<dc:creator>Hans Meine [Visitor]</dc:creator>
			<guid isPermaLink="false">c19941@http://blogs.gentoo.org/</guid>
			<description>I have been using these great new features on a multi-core machine during the last days, but it seems that portage has problems &lt;br /&gt;
a) after --resume, and&lt;br /&gt;
b) even after --keep-going resumes&lt;br /&gt;
since I do not see any parallel emerges anymore. :-(&lt;br /&gt;
&lt;br /&gt;
In fact, IIRC after --resume the compressed output of parallel emerges would not even appear, so the new options probably did not survive the restart.&lt;br /&gt;
&lt;br /&gt;
But it's a great feature; in the past I have always tried to mimic that manually, but that would be a lot of work, far from perfect, and sometimes compile some common dependencies more than once if not done carefully.&lt;br /&gt;
&lt;br /&gt;
Thus, I am looking forward to see this feature become more mature.</description>
			<content:encoded><![CDATA[I have been using these great new features on a multi-core machine during the last days, but it seems that portage has problems <br />
a) after --resume, and<br />
b) even after --keep-going resumes<br />
since I do not see any parallel emerges anymore. :-(<br />
<br />
In fact, IIRC after --resume the compressed output of parallel emerges would not even appear, so the new options probably did not survive the restart.<br />
<br />
But it's a great feature; in the past I have always tried to mimic that manually, but that would be a lot of work, far from perfect, and sometimes compile some common dependencies more than once if not done carefully.<br />
<br />
Thus, I am looking forward to see this feature become more mature.]]></content:encoded>
			<link>http://blogs.gentoo.org/zmedico/2008/07/23/portage_parallel_builds#c19941</link>
		</item>
				<item>
			<title>In response to: New @live-rebuild and @module-rebuild package sets</title>
			<pubDate>Sat, 02 Aug 2008 02:08:15 +0000</pubDate>
			<dc:creator>Zac MEDICO [Member]</dc:creator>
			<guid isPermaLink="false">c19938@http://blogs.gentoo.org/</guid>
			<description>&lt;blockquote&gt;Should note that @live-rebuild may catch packages that inherit those eclasses, but aren't really &quot;live&quot; packages&lt;/blockquote&gt;&lt;br /&gt;
&lt;br /&gt;
It might be good to add support for &lt;strong&gt;RESTRICT=live&lt;/strong&gt; (with the reverse meaning of what was originally suggested in &lt;a href=&quot;http://bugs.gentoo.org/show_bug.cgi?id=233589&quot; rel=&quot;nofollow&quot;&gt;bug 233589&lt;/a&gt;) since it will also be useful for repoman's &lt;strong&gt;LIVEVCS.stable&lt;/strong&gt; check. I've just sent an &lt;a href=&quot;http://archives.gentoo.org/gentoo-dev/msg_64b83155637bcad67478e2d2af276780.xml&quot; rel=&quot;nofollow&quot;&gt;RFC email&lt;/a&gt; to the gentoo-dev mailing list.</description>
			<content:encoded><![CDATA[<blockquote>Should note that @live-rebuild may catch packages that inherit those eclasses, but aren't really "live" packages</blockquote><br />
<br />
It might be good to add support for <strong>RESTRICT=live</strong> (with the reverse meaning of what was originally suggested in <a href="http://bugs.gentoo.org/show_bug.cgi?id=233589" rel="nofollow">bug 233589</a>) since it will also be useful for repoman's <strong>LIVEVCS.stable</strong> check. I've just sent an <a href="http://archives.gentoo.org/gentoo-dev/msg_64b83155637bcad67478e2d2af276780.xml" rel="nofollow">RFC email</a> to the gentoo-dev mailing list.]]></content:encoded>
			<link>http://blogs.gentoo.org/zmedico/2008/07/31/live_rebuild_package_set#c19938</link>
		</item>
				<item>
			<title>In response to: New @live-rebuild and @module-rebuild package sets</title>
			<pubDate>Fri, 01 Aug 2008 20:55:31 +0000</pubDate>
			<dc:creator>Zac MEDICO [Member]</dc:creator>
			<guid isPermaLink="false">c19935@http://blogs.gentoo.org/</guid>
			<description>Well, the @live-rebuild set is really only intended as an interim solution until &lt;a href=&quot;http://bugs.gentoo.org/show_bug.cgi?id=182028&quot; rel=&quot;nofollow&quot;&gt;bug 182028&lt;/a&gt; has been implemented in a future EAPI. See &lt;a href=&quot;http://bugs.gentoo.org/show_bug.cgi?id=233589&quot; rel=&quot;nofollow&quot;&gt;bug 233589&lt;/a&gt; for an alternative way that we might implement @live-rebuild using a new RESTRICT value (that doesn't require an EAPI bump).</description>
			<content:encoded><![CDATA[Well, the @live-rebuild set is really only intended as an interim solution until <a href="http://bugs.gentoo.org/show_bug.cgi?id=182028" rel="nofollow">bug 182028</a> has been implemented in a future EAPI. See <a href="http://bugs.gentoo.org/show_bug.cgi?id=233589" rel="nofollow">bug 233589</a> for an alternative way that we might implement @live-rebuild using a new RESTRICT value (that doesn't require an EAPI bump).]]></content:encoded>
			<link>http://blogs.gentoo.org/zmedico/2008/07/31/live_rebuild_package_set#c19935</link>
		</item>
			</channel>
</rss>
