<?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/"
		>
<channel>
	<title>Comments on: Is there a way to share loaded Perl modules amongst users?</title>
	<atom:link href="http://blog.htbaa.com/programming/is-there-a-way-to-share-loaded-perl-modules-amongst-users/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.htbaa.com/programming/is-there-a-way-to-share-loaded-perl-modules-amongst-users</link>
	<description>rolling since 1987</description>
	<lastBuildDate>Thu, 09 Feb 2012 08:27:58 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: Htbaa</title>
		<link>http://blog.htbaa.com/programming/is-there-a-way-to-share-loaded-perl-modules-amongst-users/comment-page-1#comment-464</link>
		<dc:creator>Htbaa</dc:creator>
		<pubDate>Fri, 23 Jul 2010 15:19:39 +0000</pubDate>
		<guid isPermaLink="false">http://blog.htbaa.com/?p=332#comment-464</guid>
		<description>True, memory is cheap but there&#039;s always a limit of course.

Thanks for this info as it has given me a bit better understanding on the topic.</description>
		<content:encoded><![CDATA[<p>True, memory is cheap but there&#8217;s always a limit of course.</p>
<p>Thanks for this info as it has given me a bit better understanding on the topic.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Htbaa</title>
		<link>http://blog.htbaa.com/programming/is-there-a-way-to-share-loaded-perl-modules-amongst-users/comment-page-1#comment-463</link>
		<dc:creator>Htbaa</dc:creator>
		<pubDate>Fri, 23 Jul 2010 15:16:23 +0000</pubDate>
		<guid isPermaLink="false">http://blog.htbaa.com/?p=332#comment-463</guid>
		<description>A bit of both really. In a recent small Mojolicious project starting up the dynamic FastCGI server can take from 1 to 4,5 seconds, whilst the CGI variant executes in about 400-600ms. Once the FastCGI server is loaded requests are extremely fast (16-50ms).</description>
		<content:encoded><![CDATA[<p>A bit of both really. In a recent small Mojolicious project starting up the dynamic FastCGI server can take from 1 to 4,5 seconds, whilst the CGI variant executes in about 400-600ms. Once the FastCGI server is loaded requests are extremely fast (16-50ms).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Paul Evans</title>
		<link>http://blog.htbaa.com/programming/is-there-a-way-to-share-loaded-perl-modules-amongst-users/comment-page-1#comment-460</link>
		<dc:creator>Paul Evans</dc:creator>
		<pubDate>Fri, 23 Jul 2010 10:11:18 +0000</pubDate>
		<guid isPermaLink="false">http://blog.htbaa.com/?p=332#comment-460</guid>
		<description>Native programs written in native compiled code typically use mmap() to load libraries. Because these are marked as MMAP_SHARED, many programs, even as different users, can all share the RAM pages to load the code just once.

The same technique cannot easily be used by Perl. It could, for example, transform an optree in memory into a position-independent contiguous block of data, which could then be written to disk, and mmap()ed by all the other programs. Trust would be an issue here - root would have to pre-compile those optrees. You then start to lose benefits of instant edit-and-reload. Plus it makes for a more fragile system, and one that&#039;s quite a departure from where we currently are.

All to save some memory? RAM is cheap, programmers are expensive.</description>
		<content:encoded><![CDATA[<p>Native programs written in native compiled code typically use mmap() to load libraries. Because these are marked as MMAP_SHARED, many programs, even as different users, can all share the RAM pages to load the code just once.</p>
<p>The same technique cannot easily be used by Perl. It could, for example, transform an optree in memory into a position-independent contiguous block of data, which could then be written to disk, and mmap()ed by all the other programs. Trust would be an issue here &#8211; root would have to pre-compile those optrees. You then start to lose benefits of instant edit-and-reload. Plus it makes for a more fragile system, and one that&#8217;s quite a departure from where we currently are.</p>
<p>All to save some memory? RAM is cheap, programmers are expensive.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Michael Peters</title>
		<link>http://blog.htbaa.com/programming/is-there-a-way-to-share-loaded-perl-modules-amongst-users/comment-page-1#comment-455</link>
		<dc:creator>Michael Peters</dc:creator>
		<pubDate>Thu, 22 Jul 2010 22:54:08 +0000</pubDate>
		<guid isPermaLink="false">http://blog.htbaa.com/?p=332#comment-455</guid>
		<description>I&#039;m assuming that you&#039;re doing this for either the startup time savings or memory savings. As for memory, you might not get as much savings as you&#039;d think because of the way Perl manages memory. On systems with copy-on-write memory you can definitely get savings, but also it&#039;s impossible to tell when them memory that those modules occupies becomes &quot;dirty&quot; and needs to be unshared simply because the way Perl manages those things and what causes things to be written to memory pages isn&#039;t obvious.</description>
		<content:encoded><![CDATA[<p>I&#8217;m assuming that you&#8217;re doing this for either the startup time savings or memory savings. As for memory, you might not get as much savings as you&#8217;d think because of the way Perl manages memory. On systems with copy-on-write memory you can definitely get savings, but also it&#8217;s impossible to tell when them memory that those modules occupies becomes &#8220;dirty&#8221; and needs to be unshared simply because the way Perl manages those things and what causes things to be written to memory pages isn&#8217;t obvious.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
<!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! -->
