<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Менеджер распределения памяти jemalloc выпущен в виде отдель...</title>
    <link>https://www.opennet.dev/openforum/vsluhforumID3/65787.html</link>
    <description>Высокопроизводительный менеджер распределения памяти jemalloc (http://www.canonware.com/jemalloc/) выпущен (http://t-t-travails.blogspot.com/2010/04/stand-alone-jemalloc-100.html) в виде отдельной библиотеки для платформы Linux. Jemalloc представляет собой реализацию функций malloc, оптимизированную для решения проблем фрагментации и оптимальной утилизации ресурсов CPU при выделения памяти в нескольких потоках на многопроцессорных системах. Изначально jemalloc был разработан Джейсоном Эвансом (Jason Evans) для  FreeBSD 7.0, а позднее был портирован в NetBSD и интегрирован в состав браузера Firefox 3. &lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Для решения проблем с блокировками на SMP системах в jemalloc для каждого процессора используется (http://people.freebsd.org/~jasone/jemalloc/bsdcan2006/jemalloc.pdf) своя изолированная область распределения памяти, что позволяет добиться линейной масштабируемости при измерении числа распределений памяти в единицу времени при росте числа нитей в многопоточных приложениях, при том чт...&lt;br&gt;&lt;br&gt;URL: http://t-t-tra</description>

<item>
    <title>настоящий тест (Вова)</title>
    <link>https://www.opennet.dev/openforum/vsluhforumID3/65787.html#47</link>
    <pubDate>Fri, 07 May 2010 05:20:42 GMT</pubDate>
    <description>&amp;gt;    В течении пары лет либо 1) все дистрибутивы &lt;br&gt;&amp;gt;будут содержать глобальное выставление LD_PRELOAD=...jemalloc.so (либо другой) либо 2) глибс будет &lt;br&gt;&amp;gt;содержать этот аллокатор &lt;br&gt;&lt;br&gt; не прошло и месяца:&lt;br&gt;&lt;br&gt;http://sourceware.org/git/?p=glibc.git;a=blob_plain;f=NEWS;hb=HEAD&lt;br&gt;&lt;br&gt;* The malloc implementation can be compiled to be less memory efficient&lt;br&gt;  but higher performing in multi-threaded programs.&lt;br&gt;  Implemented by Ulrich Drepper.&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Менеджер распределения памяти jemalloc выпущен в виде отдель... (Sem)</title>
    <link>https://www.opennet.dev/openforum/vsluhforumID3/65787.html#46</link>
    <pubDate>Fri, 16 Apr 2010 10:23:18 GMT</pubDate>
    <description>&amp;gt;Забыли написать о том, что этот аллокатор сливает гугловому ptmalloc&apos;у &lt;br&gt;&lt;br&gt;Какое отношение ptmalloc имеет к гуглу? Может перепутал с tcmalloc?&lt;br&gt;</description>
</item>

<item>
    <title>настоящий тест (Вова)</title>
    <link>https://www.opennet.dev/openforum/vsluhforumID3/65787.html#45</link>
    <pubDate>Fri, 16 Apr 2010 06:02:28 GMT</pubDate>
    <description>&amp;gt;make install запусти увидишь, как я придумал.&lt;br&gt;&lt;br&gt; Заголовочные файлы, дружок, описывают мплементированные в соответствующих библиотеках функции и необходимые для работы с ними типы данных,  и в данном случае это перечень имплементированных стандартных маллок&apos;ов.  Его подключение - бессмысленно.&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;gt;Да нипёт, я создал ситуацию когда этот Джемаллок тормозит на 20&#037; &lt;br&gt;&lt;br&gt;  И не создал, и не на двадцать и не тормозит. И не в спортлото выиграл, а в карты проиграл (с) другой клоун&lt;br&gt;&lt;br&gt;&amp;gt;Создам и мультитредовую версию, где будет тормозить на 30&#037;&lt;br&gt;&lt;br&gt;Да когда тебе, школьные каникулы-то не вечные.&lt;br&gt;&lt;br&gt;    В течении пары лет либо 1) все дистрибутивы будут содержать глобальное выставление LD_PRELOAD=...jemalloc.so (либо другой) либо 2) глибс будет содержать этот аллокатор&lt;br&gt;&lt;br&gt;&amp;gt;-------- &lt;br&gt;&amp;gt;Я то думаю, чёйта он тут выпендривается... &lt;br&gt;&amp;gt;А оказывается скопипастил бенчмарк &lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;http://www.citi.umich.edu/projects/linux-scalability/reports/malloc.html &lt;br&gt;&lt;br&gt;Ага, создают потоки той же функцией, вот так копипаст, прямо один-в-один!  &lt;br&gt;</description>
</item>

<item>
    <title>настоящий тест (pavlinux)</title>
    <link>https://www.opennet.dev/openforum/vsluhforumID3/65787.html#44</link>
    <pubDate>Thu, 15 Apr 2010 19:38:11 GMT</pubDate>
    <description>&amp;gt;&amp;gt;А #include &amp;lt;jemalloc/jemalloc.h&amp;gt;  для чего придумали? ;)&lt;br&gt;&amp;gt;Не &quot;придумали&quot;, а &quot;павлинукс придумал&quot;.&lt;br&gt;&lt;br&gt;make install запусти увидишь, как я придумал.&lt;br&gt;&lt;br&gt;&amp;gt;Твой инклюд - бессмысленен, как и однопоточный тест. сравни &lt;br&gt;&lt;br&gt;Да нипёт, я создал ситуацию когда этот Джемаллок тормозит на 20&#037; &lt;br&gt;Создам и мультитредовую версию, где будет тормозить на 30&#037;&lt;br&gt;&lt;br&gt;&amp;gt; jemalloc рвёт стандартный аллокатор как тузик грелку,&lt;br&gt;&lt;br&gt;Подавился этот jemalloc, даже одной грелкой. &lt;br&gt;&lt;br&gt;&lt;br&gt;--------&lt;br&gt;Я то думаю, чёйта он тут выпендривается... &lt;br&gt;А оказывается скопипастил бенчмарк&lt;br&gt;&lt;br&gt;http://www.citi.umich.edu/projects/linux-scalability/reports/malloc.html&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>для использования ничего пересобирать не надо (Вова)</title>
    <link>https://www.opennet.dev/openforum/vsluhforumID3/65787.html#43</link>
    <pubDate>Thu, 15 Apr 2010 05:56:34 GMT</pubDate>
    <description>&amp;gt;Интересно будет ли профит если Qt-embedded for ARM собрать с этой библиотекой? &lt;br&gt;&amp;gt;&lt;br&gt;&lt;br&gt;не надо пересобирать, необходимо только лишь задать LD_PRELOAD перед запуском приложения.&lt;br&gt;Впрочем, этот аллокатор ни под арм, ни под мипсы не компилируется,в сырцах используется ассемблерная вставка (команда &quot;pause&quot;), аналогов этой команды под встроенные системы сходу не обнаружил, подменил на &quot;nop&quot; - получил сегфалт при старте. Нужно советоваться с отцами. &lt;br&gt;</description>
</item>

<item>
    <title>настоящий тест (Вова)</title>
    <link>https://www.opennet.dev/openforum/vsluhforumID3/65787.html#42</link>
    <pubDate>Thu, 15 Apr 2010 05:46:50 GMT</pubDate>
    <description>&amp;gt;А #include &amp;lt;jemalloc/jemalloc.h&amp;gt;  для чего придумали? ;)&lt;br&gt;&lt;br&gt;Не &quot;придумали&quot;, а &quot;павлинукс придумал&quot;.&lt;br&gt;Твой инклюд - бессмысленен, как и однопоточный тест.&lt;br&gt;сравни &lt;br&gt;LD_PRELOAD=/usr/local/lib/libjemalloc.so ldd ./a.out &lt;br&gt;&lt;br&gt;и просто&lt;br&gt;ldd ./a.out&lt;br&gt;&lt;br&gt;  Детсад, честное слово.&lt;br&gt;&lt;br&gt; jemalloc рвёт стандартный аллокатор как тузик грелку, на многопоточных задачах, разумеется. На реальных задачах. Не на твоих тестах. &lt;br&gt;</description>
</item>

<item>
    <title>настоящий тест (pavlinux)</title>
    <link>https://www.opennet.dev/openforum/vsluhforumID3/65787.html#41</link>
    <pubDate>Wed, 14 Apr 2010 23:13:39 GMT</pubDate>
    <description>&amp;gt;надо сравнивать &lt;br&gt;&lt;br&gt;А #include &amp;lt;jemalloc/jemalloc.h&amp;gt; для чего придумали? ;)&lt;br&gt;&lt;br&gt;&amp;gt; $ time ./a.out &lt;br&gt;&amp;gt;и &lt;br&gt;&amp;gt; $ time LD_PRELOAD=/usr/local/lib/libjemalloc.so ./a.out &lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;/* gcc memtest.c -lrt */&lt;br&gt;&lt;br&gt;А на кой хрен нужна -lrt, и где -pthread (или -lpthread) ? :)&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Менеджер распределения памяти jemalloc выпущен в виде отдель... (Sem)</title>
    <link>https://www.opennet.dev/openforum/vsluhforumID3/65787.html#39</link>
    <pubDate>Wed, 14 Apr 2010 08:44:10 GMT</pubDate>
    <description>&amp;gt;&amp;gt;Так вооот почему третья лиса течет памятью как сито... &lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;мож плугины текут? &lt;br&gt;&lt;br&gt;Да это мозг течет. Видимо спутал аллокатор с GC.&lt;br&gt;</description>
</item>

<item>
    <title>Менеджер распределения памяти jemalloc выпущен в виде отдель... (Sem)</title>
    <link>https://www.opennet.dev/openforum/vsluhforumID3/65787.html#38</link>
    <pubDate>Wed, 14 Apr 2010 08:41:51 GMT</pubDate>
    <description>Лучше бы профайлинг сделал.&lt;br&gt;</description>
</item>

</channel>
</rss>
