<?xml version="1.0" encoding="utf-8" ?>
<rss version="2.0" xmlns:osnews="http://www.osnews.com/rss2#">
	<channel>
		<title>OSNews: </title>
		<link>http://www.osnews.com/story/17977/The_Hoard_Scalable_Memory_Allocator_3_6_2_Released</link>
		<description>Exploring the Future of Computing</description>
		<language>en-us</language>
		<copyright>Copyright 2001-2012, David Adams</copyright>
		<webMaster>adam+nospam@osnews.com</webMaster>
		<lastBuildDate>Wed, 15 Feb 2012 09:16:07 GMT</lastBuildDate>
		<image>
			<url>http://www.osnews.com/images/osnews.gif</url>
			<title>OSNews.com</title>
			<link>http://www.osnews.com</link>
		</image>
		<item>
			<title>how to know i'm using hoard?</title>
			<link>http://www.osnews.com/thread?243245</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?243245</guid>
			<description>i have downloaded and build it on my box, and setup LD_PRELOAD envrion variable, but how did i know that i'm using libhoard instead of standard ones?</description>
			<pubDate>Sat, 26 May 2007 05:42:00 GMT</pubDate>
			<author>donotreply@osnews.com (gerryxiao)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE: how to know i'm using hoard?</title>
			<link>http://www.osnews.com/thread?243253</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?243253</guid>
			<description>1. Use man ld.so to get some information whether hoard is loaded at all.<br />
2. Use a debugger and trace a malloc. You should at least see a hoard method in the traceback.</description>
			<pubDate>Sat, 26 May 2007 07:30:00 GMT</pubDate>
			<author>donotreply@osnews.com (Ponto)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE: how to know i'm using hoard?</title>
			<link>http://www.osnews.com/thread?243283</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?243283</guid>
			<description>On Solaris, just run: pldd <br />
<br />
Where  is the PID of the process you want to make sure is runing with the Horde library. pldd is just like ldd, but is for use against running processes rather than just binaries.<br />
<br />
I don't know if Linux or other OSes provide a tool for doing this.Edited 2007-05-26 14:46</description>
			<pubDate>Sat, 26 May 2007 14:46:00 GMT</pubDate>
			<author>donotreply@osnews.com (Elektronkind)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE: how to know i'm using hoard?</title>
			<link>http://www.osnews.com/thread?243284</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?243284</guid>
			<description><div class="cquote">i have downloaded and build it on my box, and setup LD_PRELOAD envrion variable, but how did i know that i'm using libhoard instead of standard ones? </div><br />
Compile your program. Then run &quot;ldd&quot; on it to see which (dynamic) library it is linked to:<br />
&gt; ldd myapp</description>
			<pubDate>Sat, 26 May 2007 15:01:00 GMT</pubDate>
			<author>donotreply@osnews.com (big_gie)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[2]: how to know i'm using hoard?</title>
			<link>http://www.osnews.com/thread?243285</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?243285</guid>
			<description>Compile your program. Then run &quot;ldd&quot; on it to see which (dynamic) library it is linked to:<br />
&gt; ldd myapp<br />
<br />
i'm not using it for developing, just want some programs in my box apply libhoard.so to improve performance<br />
<br />
there aren't any programs  in linux which have the same functions as pldd in solaris, but i'm not sure <img src="/images/emo/smile.gif" alt=";)" /> <br />
<br />
pmap seems working in linux<br />
pmap Edited 2007-05-26 15:19</description>
			<pubDate>Sat, 26 May 2007 15:14:00 GMT</pubDate>
			<author>donotreply@osnews.com (gerryxiao)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[3]: how to know i'm using hoard?</title>
			<link>http://www.osnews.com/thread?243286</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?243286</guid>
			<description><div class="cquote">i'm not using it for developing, just want some programs in my box apply libhoard.so to improve performance </div><br />
So you want to replace the existing library with that one? Interesting thing. Can't help for that though <img src="/images/emo/smile.gif" alt=";)" /></description>
			<pubDate>Sat, 26 May 2007 15:27:00 GMT</pubDate>
			<author>donotreply@osnews.com (big_gie)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[4]: how to know i'm using hoard?</title>
			<link>http://www.osnews.com/thread?243289</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?243289</guid>
			<description>i'm not using it for developing, just want some programs in my box apply libhoard.so to improve performance<br />
So you want to replace the existing library with that one? Interesting thing. Can't help for that though <img src="/images/emo/smile.gif" alt=";)" /> <br />
<br />
libhoard.so is a dynamic link share lib file which includes much same functions suchas malloc(),free() etc with standard GNU c lib, if LD_PRELOAD variable has been setup, any program depending  on share libs first look at libhoard.so, if found any functions which is needed , it will not call standard GNU c share lib functions</description>
			<pubDate>Sat, 26 May 2007 15:49:00 GMT</pubDate>
			<author>donotreply@osnews.com (gerryxiao)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[2]: how to know i'm using hoard?</title>
			<link>http://www.osnews.com/thread?243290</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?243290</guid>
			<description>&quot;I don't know if Linux or other OSes provide a tool for doing this. &quot;<br />
<br />
Besides Solaris, I've seen the pldd command only on HP-UX.</description>
			<pubDate>Sat, 26 May 2007 15:59:00 GMT</pubDate>
			<author>donotreply@osnews.com (Doc Pain)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>Comment by bnolsen</title>
			<link>http://www.osnews.com/thread?243299</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?243299</guid>
			<description>another allocator is called &quot;nedmalloc&quot; which claims to thrash horde in real world applications.<br />
<br />
This article reminded me.  When I get back to work on Monday or Tuesday I'll test horde and nedmalloc on our 8 core dell workstation with our threaded ortho rectification and see if there's any noticeable performance improvements.</description>
			<pubDate>Sat, 26 May 2007 17:33:00 GMT</pubDate>
			<author>donotreply@osnews.com (bnolsen)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>Also see Google's tcmalloc and Sun's umem</title>
			<link>http://www.osnews.com/thread?243309</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?243309</guid>
			<description><a href="http://goog-perftools.sourceforge.net/doc/tcmalloc.html" rel="nofollow">http://goog-perftools.sourceforge.net/doc/tcmalloc.html</a> <br />
<br />
<a href="https://labs.omniti.com/trac/portableumem/" rel="nofollow">https://labs.omniti.com/trac/portableumem/</a><br />
<br />
(Emery Berger seems pretty good at marketing for a university professor.)</description>
			<pubDate>Sat, 26 May 2007 20:19:00 GMT</pubDate>
			<author>donotreply@osnews.com (Wes Felter)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE: Comment by bnolsen</title>
			<link>http://www.osnews.com/thread?243596</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?243596</guid>
			<description>Hi,<br />
<br />
I just downloaded and tried nedmalloc against a particularly brutal benchmark called &quot;larson&quot; on a dual processor Linux box. With Hoard, its throughput was 790,614 memory operations per second, while with Nedmalloc it was 188,706 ops/sec. Compare to GNU libc (the default allocator), whose throughput was 192,485 ops/sec. In short, Hoard outperforms Nedmalloc by more than a factor of 4X.<br />
<br />
I'd be interested to hear what happens with your application.<br />
<br />
Best,<br />
-- Emery Berger</description>
			<pubDate>Mon, 28 May 2007 00:54:00 GMT</pubDate>
			<author>donotreply@osnews.com (EmeryBerger)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE: Also see Google's tcmalloc and Sun's umem</title>
			<link>http://www.osnews.com/thread?243598</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?243598</guid>
			<description>Hi,<br />
<br />
Thanks for the pointers.<br />
<br />
I ran the &quot;larson&quot; benchmark with both of the allocators you pointed out.<br />
<br />
libumem: shockingly poor performance. 76,110 ops per second -- Hoard is 10X faster. Which makes me unsure whether this port is true to the original libumem algorithm (from Bonwick).<br />
<br />
tcmalloc: for this benchmark, it outperforms Hoard by about 20%, but also consumes 40% more memory (172M versus 122M). In addition, tcmalloc does some things that Hoard doesn't do because they can seriously harm performance. I tried another benchmark (&quot;cache-thrash&quot;) which tests whether an allocator can contribute to false sharing of cache lines (really bad for performance). On this benchmark, Hoard performed around 6.5X faster.<br />
<br />
Best,<br />
-- Emery<br />
<br />
P.S. I'm going to consider 'good at marketing' as a compliment... <img src="/images/emo/smile.gif" alt=";)" /> .</description>
			<pubDate>Mon, 28 May 2007 01:17:00 GMT</pubDate>
			<author>donotreply@osnews.com (EmeryBerger)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[2]: Comment by bnolsen</title>
			<link>http://www.osnews.com/thread?243860</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?243860</guid>
			<description>I got to work and ran some tests.<br />
 <br />
 Machine: 8 core clovertown 1.6GHz, 8GB ram.  gentoo ~amd64<br />
 <br />
 Process:<br />
 threaded ortho rectification.<br />
 3 pipelines, 8 threads each<br />
 - Input IO<br />
 - Ray production &amp; solid intersection<br />
 - Pixel Rasterization and output tiling.<br />
 <br />
 Test dataset: 210MP input image (smallest I coul find)<br />
 Run each data set twice, take second timing.<br />
<br />
Process is 64bit optimized. Memory usage numbers are somewhat misleading because of the kernel paging, but hover between 3.2GB &amp; 3.8GB regardless of the allocator.<br />
 <br />
 Interesting observation:<br />
 During libhoard runs occasionally the system levels would dramatically spike (seen in both gkrellm2 &amp; htop)<br />
 <br />
 Timing:<br />
 <br />
 default gcc allocator<br />
 real    1m19.477s<br />
 user    9m10.210s<br />
 sys     0m8.993s<br />
 <br />
 hoard:<br />
 real    1m9.135s<br />
 user    7m23.508s<br />
 sys     0m37.102s<br />
 <br />
 tcmalloc:<br />
 real    1m2.222s<br />
 user    6m58.014s<br />
 sys     0m5.032sEdited 2007-05-29 15:28 UTC</description>
			<pubDate>Tue, 29 May 2007 15:24:00 GMT</pubDate>
			<author>donotreply@osnews.com (bnolsen)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[3]: Comment by bnolsen</title>
			<link>http://www.osnews.com/thread?243872</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?243872</guid>
			<description>nedmalloc numbers:<br />
<br />
real    0m58.323s<br />
user    6m11.111s<br />
sys     0m11.933s<br />
<br />
Looks like the nedmalloc guy has the most realistic claims.</description>
			<pubDate>Tue, 29 May 2007 16:48:00 GMT</pubDate>
			<author>donotreply@osnews.com (bnolsen)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE: Comment by bnolsen</title>
			<link>http://www.osnews.com/thread?243948</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?243948</guid>
			<description>Yet another test case:<br />
<br />
Normal system accumulator.<br />
Equations are objects which are assembled into a normal system and then solved via SVD.<br />
<br />
Tons of 3x3 and 4x4 matrices.<br />
Single threaded application.<br />
<br />
Base case:<br />
<br />
real    0m3.596s<br />
user    0m3.560s<br />
sys     0m0.036s<br />
<br />
hoard:<br />
<br />
real    0m4.112s<br />
user    0m4.076s<br />
sys     0m0.036s<br />
<br />
nedmalloc:<br />
<br />
real    0m3.692s<br />
user    0m3.664s<br />
sys     0m0.028s<br />
<br />
tcmalloc: CORE DUMP (hehe)</description>
			<pubDate>Tue, 29 May 2007 23:09:00 GMT</pubDate>
			<author>donotreply@osnews.com (bnolsen)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[2]: Comment by bnolsen</title>
			<link>http://www.osnews.com/thread?244530</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?244530</guid>
			<description>Hi -<br />
<br />
Could you please send me your benchmarks? There is some sort of performance issue with 64-bit that I am trying to resolve.<br />
<br />
Thanks,<br />
-- Emery</description>
			<pubDate>Fri, 01 Jun 2007 00:58:00 GMT</pubDate>
			<author>donotreply@osnews.com (EmeryBerger)</author>
			<category>Comments</category>
		</item>
	</channel>
</rss>

