<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.apertium.org/w/index.php?action=history&amp;feed=atom&amp;title=Compilation_Speed</id>
	<title>Compilation Speed - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.apertium.org/w/index.php?action=history&amp;feed=atom&amp;title=Compilation_Speed"/>
	<link rel="alternate" type="text/html" href="https://wiki.apertium.org/w/index.php?title=Compilation_Speed&amp;action=history"/>
	<updated>2026-06-01T17:32:40Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.34.1</generator>
	<entry>
		<id>https://wiki.apertium.org/w/index.php?title=Compilation_Speed&amp;diff=74116&amp;oldid=prev</id>
		<title>Unhammer at 11:47, 4 October 2022</title>
		<link rel="alternate" type="text/html" href="https://wiki.apertium.org/w/index.php?title=Compilation_Speed&amp;diff=74116&amp;oldid=prev"/>
		<updated>2022-10-04T11:47:01Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 11:47, 4 October 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 24:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 24:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;div&gt;5) &#039;&#039;&#039;TRIM SMARTER&#039;&#039;&#039;: If you have sections that you already know contain matching elements in the analyser and bidix, you can ensure they&#039;re only trimmed with each other (ignoring other sections). Large regular expressions in particular can slow down trimming if you have to check every single bidix entry for a match – by putting &amp;lt;code&amp;gt;&amp;amp;lt;re&amp;amp;gt;&amp;lt;/code&amp;gt; entries in a &amp;lt;code&amp;gt;&amp;amp;lt;section id=&quot;regex&quot; type=&quot;standard&quot;&amp;lt;/code&amp;gt; in both files and changing Makefile.am to &amp;lt;code&amp;gt;lt-trim --match-section=regex@standard $^ $@&amp;lt;/code&amp;gt;, lt-trim will ignore entries from sections other than regex@standard in bidix when trimming regex@standard from the analyser. (This will of course work with any kind of entry, not just regexes.) &lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;5) &#039;&#039;&#039;TRIM SMARTER&#039;&#039;&#039;: If you have sections that you already know contain matching elements in the analyser and bidix, you can ensure they&#039;re only trimmed with each other (ignoring other sections). Large regular expressions in particular can slow down trimming if you have to check every single bidix entry for a match – by putting &amp;lt;code&amp;gt;&amp;amp;lt;re&amp;amp;gt;&amp;lt;/code&amp;gt; entries in a &amp;lt;code&amp;gt;&amp;amp;lt;section id=&quot;regex&quot; type=&quot;standard&quot;&amp;lt;/code&amp;gt; in both files and changing Makefile.am to &amp;lt;code&amp;gt;lt-trim --match-section=regex@standard $^ $@&amp;lt;/code&amp;gt;, lt-trim will ignore entries from sections other than regex@standard in bidix when trimming regex@standard from the analyser. (This will of course work with any kind of entry, not just regexes.) &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Time how long the lt-trim step takes first – for most pairs it&#039;s fast enough already.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Unhammer</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.apertium.org/w/index.php?title=Compilation_Speed&amp;diff=74115&amp;oldid=prev</id>
		<title>Unhammer at 11:45, 4 October 2022</title>
		<link rel="alternate" type="text/html" href="https://wiki.apertium.org/w/index.php?title=Compilation_Speed&amp;diff=74115&amp;oldid=prev"/>
		<updated>2022-10-04T11:45:58Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 11:45, 4 October 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 24:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 24:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;div&gt;5) &#039;&#039;&#039;TRIM SMARTER&#039;&#039;&#039;: If you have sections that you already know contain matching elements in the analyser and bidix, you can ensure they&#039;re only trimmed with each other (ignoring other sections). Large regular expressions in particular can slow down trimming if you have to check every single bidix entry for a match – by putting &amp;lt;code&amp;gt;&amp;amp;lt;re&amp;amp;gt;&amp;lt;/code&amp;gt; entries in a &amp;lt;code&amp;gt;&amp;amp;lt;section id=&quot;regex&quot; type=&quot;standard&quot;&amp;lt;/code&amp;gt; in both files and changing Makefile.am to &amp;lt;code&amp;gt;lt-trim --match-section=regex@standard $^ $@&amp;lt;/code&amp;gt;, lt-trim will ignore entries from sections other than regex@standard in bidix when trimming regex@standard from the analyser. (This will of course work with any kind of entry, not just regexes.)&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;5) &#039;&#039;&#039;TRIM SMARTER&#039;&#039;&#039;: If you have sections that you already know contain matching elements in the analyser and bidix, you can ensure they&#039;re only trimmed with each other (ignoring other sections). Large regular expressions in particular can slow down trimming if you have to check every single bidix entry for a match – by putting &amp;lt;code&amp;gt;&amp;amp;lt;re&amp;amp;gt;&amp;lt;/code&amp;gt; entries in a &amp;lt;code&amp;gt;&amp;amp;lt;section id=&quot;regex&quot; type=&quot;standard&quot;&amp;lt;/code&amp;gt; in both files and changing Makefile.am to &amp;lt;code&amp;gt;lt-trim --match-section=regex@standard $^ $@&amp;lt;/code&amp;gt;, lt-trim will ignore entries from sections other than regex@standard in bidix when trimming regex@standard from the analyser. (This will of course work with any kind of entry, not just regexes.)&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;and for comparison, with &#039;&#039;none&#039;&#039; of the above tricks:&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;and for comparison, with &#039;&#039;none&#039;&#039; of the above tricks:&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Unhammer</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.apertium.org/w/index.php?title=Compilation_Speed&amp;diff=74114&amp;oldid=prev</id>
		<title>Unhammer at 11:44, 4 October 2022</title>
		<link rel="alternate" type="text/html" href="https://wiki.apertium.org/w/index.php?title=Compilation_Speed&amp;diff=74114&amp;oldid=prev"/>
		<updated>2022-10-04T11:44:47Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 11:44, 4 October 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 23:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 23:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;* make clean in all three dirs, then &amp;lt;code&amp;gt;export LT_JOBS=yes &amp;amp;&amp;amp; m -j e    &amp;lt;/code&amp;gt; in nno-nob takes 42s&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;* make clean in all three dirs, then &amp;lt;code&amp;gt;export LT_JOBS=yes &amp;amp;&amp;amp; m -j e    &amp;lt;/code&amp;gt; in nno-nob takes 42s&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;5) &#039;&#039;&#039;TRIM SMARTER&#039;&#039;&#039;: If you have sections that you already know contain matching elements in the analyser and bidix, you can ensure they&#039;re only trimmed with each other (ignoring other sections). Large regular expressions in particular can slow down trimming if you have to check every single bidix entry for a match – by putting &amp;lt;code&amp;gt;&amp;amp;lt;re&amp;amp;gt;&amp;lt;/code&amp;gt; entries in a &amp;lt;code&amp;gt;&amp;amp;lt;section id=&quot;regex&quot; type=&quot;standard&quot;&amp;lt;/code&amp;gt; in both files and changing Makefile.am to &amp;lt;code&amp;gt;lt-trim --match-section=regex@standard $^ $@&amp;lt;/code&amp;gt;, lt-trim will ignore entries from sections other than regex@standard in bidix when trimming regex@standard from the analyser. (This will of course work with any kind of entry, not just regexes.)&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;and for comparison, with &#039;&#039;none&#039;&#039; of the above tricks:&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;and for comparison, with &#039;&#039;none&#039;&#039; of the above tricks:&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Unhammer</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.apertium.org/w/index.php?title=Compilation_Speed&amp;diff=74097&amp;oldid=prev</id>
		<title>Unhammer at 09:05, 11 August 2022</title>
		<link rel="alternate" type="text/html" href="https://wiki.apertium.org/w/index.php?title=Compilation_Speed&amp;diff=74097&amp;oldid=prev"/>
		<updated>2022-08-11T09:05:47Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 09:05, 11 August 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 22:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 22:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;* make clean in all three dirs, then &amp;lt;code&amp;gt;export LT_JOBS=yes &amp;amp;&amp;amp; m -j langs&amp;lt;/code&amp;gt; in nno-nob takes 1m20s&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;* make clean in all three dirs, then &amp;lt;code&amp;gt;export LT_JOBS=yes &amp;amp;&amp;amp; m -j langs&amp;lt;/code&amp;gt; in nno-nob takes 1m20s&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;* make clean in all three dirs, then &amp;lt;code&amp;gt;export LT_JOBS=yes &amp;amp;&amp;amp; m -j e    &amp;lt;/code&amp;gt; in nno-nob takes 42s&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;* make clean in all three dirs, then &amp;lt;code&amp;gt;export LT_JOBS=yes &amp;amp;&amp;amp; m -j e    &amp;lt;/code&amp;gt; in nno-nob takes 42s&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;and for comparison, with &#039;&#039;none&#039;&#039; of the above tricks:&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;and for comparison, with &#039;&#039;none&#039;&#039; of the above tricks:&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Unhammer</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.apertium.org/w/index.php?title=Compilation_Speed&amp;diff=74096&amp;oldid=prev</id>
		<title>Unhammer at 08:50, 5 August 2022</title>
		<link rel="alternate" type="text/html" href="https://wiki.apertium.org/w/index.php?title=Compilation_Speed&amp;diff=74096&amp;oldid=prev"/>
		<updated>2022-08-05T08:50:07Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 08:50, 5 August 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 22:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 22:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;* make clean in all three dirs, then &amp;lt;code&amp;gt;export LT_JOBS=yes &amp;amp;&amp;amp; m -j langs&amp;lt;/code&amp;gt; in nno-nob takes 1m20s&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;* make clean in all three dirs, then &amp;lt;code&amp;gt;export LT_JOBS=yes &amp;amp;&amp;amp; m -j langs&amp;lt;/code&amp;gt; in nno-nob takes 1m20s&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;* make clean in all three dirs, then &amp;lt;code&amp;gt;export LT_JOBS=yes &amp;amp;&amp;amp; m -j e    &amp;lt;/code&amp;gt; in nno-nob takes 42s&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;* make clean in all three dirs, then &amp;lt;code&amp;gt;export LT_JOBS=yes &amp;amp;&amp;amp; m -j e    &amp;lt;/code&amp;gt; in nno-nob takes 42s&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;and for comparison, with &#039;&#039;none&#039;&#039; of the above tricks:&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;* make clean in all three dirs, then &amp;lt;code&amp;gt;export LT_JOBS=no &amp;amp;&amp;amp; make langs&amp;lt;/code&amp;gt; in nno-nob takes 3m14s&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;[[Category:Development]]&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;[[Category:Development]]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Unhammer</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.apertium.org/w/index.php?title=Compilation_Speed&amp;diff=74095&amp;oldid=prev</id>
		<title>Unhammer: timings after dangswan&#039;s latest improvements :)</title>
		<link rel="alternate" type="text/html" href="https://wiki.apertium.org/w/index.php?title=Compilation_Speed&amp;diff=74095&amp;oldid=prev"/>
		<updated>2022-08-05T08:42:59Z</updated>

		<summary type="html">&lt;p&gt;timings after dangswan&amp;#039;s latest improvements :)&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 08:42, 5 August 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 5:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 5:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;1) &#039;&#039;&#039;PARALLELLISE&#039;&#039;&#039;: Use &amp;lt;code&amp;gt;make -j&amp;lt;/code&amp;gt; instead of just &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;, in order to use several processors for make goals that can be parallellised. (Note that if you&#039;re low on memory and your dictionaries are very large, you may want to cap it to &amp;lt;code&amp;gt;make -j2&amp;lt;/code&amp;gt; or similar.)&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;1) &#039;&#039;&#039;PARALLELLISE&#039;&#039;&#039;: Use &amp;lt;code&amp;gt;make -j&amp;lt;/code&amp;gt; instead of just &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;, in order to use several processors for make goals that can be parallellised. (Note that if you&#039;re low on memory and your dictionaries are very large, you may want to cap it to &amp;lt;code&amp;gt;make -j2&amp;lt;/code&amp;gt; or similar.)&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; make   &amp;lt;/code&amp;gt; in nno-nob takes &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;2m33s&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; make   &amp;lt;/code&amp;gt; in nno-nob takes &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;1m55s&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; make -j&amp;lt;/code&amp;gt; in nno-nob takes &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;1m24s&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; make -j&amp;lt;/code&amp;gt; in nno-nob takes &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;1m02s&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;2) &#039;&#039;&#039;SPLIT SECTIONS&#039;&#039;&#039;: Put &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;export LT_JOBS=yes&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; in your ~/.bashrc (or ~/.bash_profile) – this will let lttoolbox split dictionaries into sections of at most 50k entries and minimise them in parallel (and large sections get exponentially slower to minimise). You can also tweak the threshold with &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;export LT_MAX_SECTION_ENTRIES=50000&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;2) &#039;&#039;&#039;SPLIT SECTIONS&#039;&#039;&#039;: Put &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;export LT_JOBS=yes&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; in your ~/.bashrc (or ~/.bash_profile) – this will let lttoolbox split dictionaries into sections of at most 50k entries and minimise them in parallel (and large sections get exponentially slower to minimise). You can also tweak the threshold with &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;export LT_MAX_SECTION_ENTRIES=50000&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=no  &amp;amp;&amp;amp; make -j nob.automorf.bin&amp;lt;/code&amp;gt; in nob takes &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;41s&lt;/del&gt; (typical situation where only monodix has been changed)&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=no  &amp;amp;&amp;amp; make -j nob.automorf.bin&amp;lt;/code&amp;gt; in nob takes &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;16s&lt;/ins&gt; (typical situation where only monodix has been changed)&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=yes &amp;amp;&amp;amp; make -j nob.automorf.bin&amp;lt;/code&amp;gt; in nob takes &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;17s&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=yes &amp;amp;&amp;amp; make -j nob.automorf.bin&amp;lt;/code&amp;gt; in nob takes &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;8s&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;3) &#039;&#039;&#039;ALLOCATE FASTER&#039;&#039;&#039;: Try another malloc, e.g. tcmalloc or jemalloc. On Debian/Ubuntu, you would &amp;lt;code&amp;gt;sudo apt install libtcmalloc-minimal4&amp;lt;/code&amp;gt; and then put &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;function m () { export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libtcmalloc_minimal.so.4; make &quot;$@&quot;; }&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; into your ~/.bashrc (or ~/.bash_profile). Now you can use &amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt; instead of &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; to compile with tcmalloc. &lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;3) &#039;&#039;&#039;ALLOCATE FASTER&#039;&#039;&#039;: Try another malloc, e.g. tcmalloc or jemalloc. On Debian/Ubuntu, you would &amp;lt;code&amp;gt;sudo apt install libtcmalloc-minimal4&amp;lt;/code&amp;gt; and then put &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;function m () { export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libtcmalloc_minimal.so.4; make &quot;$@&quot;; }&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; into your ~/.bashrc (or ~/.bash_profile). Now you can use &amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt; instead of &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; to compile with tcmalloc. &lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=yes &amp;amp;&amp;amp; make -j&amp;lt;/code&amp;gt; in nno-nob takes &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;1m24s&lt;/del&gt; with regular malloc (glibc)&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=yes &amp;amp;&amp;amp; make -j&amp;lt;/code&amp;gt; in nno-nob takes &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;57s&lt;/ins&gt; with regular malloc (glibc)&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=yes &amp;amp;&amp;amp; m    -j&amp;lt;/code&amp;gt; in nno-nob takes &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;1m03s&lt;/del&gt; with tcmalloc&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=yes &amp;amp;&amp;amp; m    -j&amp;lt;/code&amp;gt; in nno-nob takes &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;45s&lt;/ins&gt; with tcmalloc&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;4) &#039;&#039;&#039;BUILD LESS&#039;&#039;&#039;: If you work mostly on one direction, you may want to make a debug goal in your Makefile.am for just that direction ([https://github.com/apertium/apertium-nno-nob/blob/d9c07db56a8ca3748039ff48db331082a0a33c3a/Makefile.am#L52..L56 example], used as &amp;lt;code&amp;gt;m -j e&amp;lt;/code&amp;gt;)&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;4) &#039;&#039;&#039;BUILD LESS&#039;&#039;&#039;: If you work mostly on one direction, you may want to make a debug goal in your Makefile.am for just that direction ([https://github.com/apertium/apertium-nno-nob/blob/d9c07db56a8ca3748039ff48db331082a0a33c3a/Makefile.am#L52..L56 example], used as &amp;lt;code&amp;gt;m -j e&amp;lt;/code&amp;gt;)&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;* make clean in all three dirs, then &amp;lt;code&amp;gt;export LT_JOBS=yes &amp;amp;&amp;amp; m -j langs&amp;lt;/code&amp;gt; in nno-nob takes 1m20s&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;* make clean in all three dirs, then &amp;lt;code&amp;gt;export LT_JOBS=yes &amp;amp;&amp;amp; m -j e    &amp;lt;/code&amp;gt; in nno-nob takes 42s&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;[[Category:Development]]&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;[[Category:Development]]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Unhammer</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.apertium.org/w/index.php?title=Compilation_Speed&amp;diff=74074&amp;oldid=prev</id>
		<title>Unhammer at 10:59, 27 June 2022</title>
		<link rel="alternate" type="text/html" href="https://wiki.apertium.org/w/index.php?title=Compilation_Speed&amp;diff=74074&amp;oldid=prev"/>
		<updated>2022-06-27T10:59:09Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 10:59, 27 June 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 9:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 9:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;div&gt;2) &#039;&#039;&#039;SPLIT SECTIONS&#039;&#039;&#039;: Put &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;export LT_JOBS=yes&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; in your ~/.bashrc (or ~/.bash_profile) – this will let lttoolbox split dictionaries into sections of at most 50k entries and minimise them in parallel (and large sections get exponentially slower to minimise). You can also tweak the threshold with &amp;lt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;nowiki&lt;/del&gt;&amp;gt;&amp;lt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;code&lt;/del&gt;&amp;gt;export LT_MAX_SECTION_ENTRIES=50000&amp;lt;/&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;code&lt;/del&gt;&amp;gt;&amp;lt;/&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;nowiki&lt;/del&gt;&amp;gt;.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;2) &#039;&#039;&#039;SPLIT SECTIONS&#039;&#039;&#039;: Put &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;export LT_JOBS=yes&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; in your ~/.bashrc (or ~/.bash_profile) – this will let lttoolbox split dictionaries into sections of at most 50k entries and minimise them in parallel (and large sections get exponentially slower to minimise). You can also tweak the threshold with &amp;lt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;code&lt;/ins&gt;&amp;gt;&amp;lt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;nowiki&lt;/ins&gt;&amp;gt;export LT_MAX_SECTION_ENTRIES=50000&amp;lt;/&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;nowiki&lt;/ins&gt;&amp;gt;&amp;lt;/&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;code&lt;/ins&gt;&amp;gt;.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=no  &amp;amp;&amp;amp; make -j nob.automorf.bin&amp;lt;/code&amp;gt; in nob takes 41s (typical situation where only monodix has been changed)&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=no  &amp;amp;&amp;amp; make -j nob.automorf.bin&amp;lt;/code&amp;gt; in nob takes 41s (typical situation where only monodix has been changed)&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=yes &amp;amp;&amp;amp; make -j nob.automorf.bin&amp;lt;/code&amp;gt; in nob takes 17s&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=yes &amp;amp;&amp;amp; make -j nob.automorf.bin&amp;lt;/code&amp;gt; in nob takes 17s&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Unhammer</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.apertium.org/w/index.php?title=Compilation_Speed&amp;diff=74073&amp;oldid=prev</id>
		<title>Unhammer at 10:58, 27 June 2022</title>
		<link rel="alternate" type="text/html" href="https://wiki.apertium.org/w/index.php?title=Compilation_Speed&amp;diff=74073&amp;oldid=prev"/>
		<updated>2022-06-27T10:58:44Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 10:58, 27 June 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 9:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 9:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;div&gt;2) &#039;&#039;&#039;SPLIT SECTIONS&#039;&#039;&#039;: Put &amp;lt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;nowiki&lt;/del&gt;&amp;gt;&amp;lt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;code&lt;/del&gt;&amp;gt;export LT_JOBS=yes&amp;lt;/&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;code&lt;/del&gt;&amp;gt;&amp;lt;/&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;nowiki&lt;/del&gt;&amp;gt; in your ~/.bashrc (or ~/.bash_profile) – this will let lttoolbox split dictionaries into sections of at most 50k entries and minimise them in parallel (and large sections get exponentially slower to minimise). You can also tweak the threshold with &amp;lt;nowiki&amp;gt;&amp;lt;code&amp;gt;export LT_MAX_SECTION_ENTRIES=50000&amp;lt;/code&amp;gt;&amp;lt;/nowiki&amp;gt;.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;2) &#039;&#039;&#039;SPLIT SECTIONS&#039;&#039;&#039;: Put &amp;lt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;code&lt;/ins&gt;&amp;gt;&amp;lt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;nowiki&lt;/ins&gt;&amp;gt;export LT_JOBS=yes&amp;lt;/&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;nowiki&lt;/ins&gt;&amp;gt;&amp;lt;/&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;code&lt;/ins&gt;&amp;gt; in your ~/.bashrc (or ~/.bash_profile) – this will let lttoolbox split dictionaries into sections of at most 50k entries and minimise them in parallel (and large sections get exponentially slower to minimise). You can also tweak the threshold with &amp;lt;nowiki&amp;gt;&amp;lt;code&amp;gt;export LT_MAX_SECTION_ENTRIES=50000&amp;lt;/code&amp;gt;&amp;lt;/nowiki&amp;gt;.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=no  &amp;amp;&amp;amp; make -j nob.automorf.bin&amp;lt;/code&amp;gt; in nob takes 41s (typical situation where only monodix has been changed)&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=no  &amp;amp;&amp;amp; make -j nob.automorf.bin&amp;lt;/code&amp;gt; in nob takes 41s (typical situation where only monodix has been changed)&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=yes &amp;amp;&amp;amp; make -j nob.automorf.bin&amp;lt;/code&amp;gt; in nob takes 17s&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=yes &amp;amp;&amp;amp; make -j nob.automorf.bin&amp;lt;/code&amp;gt; in nob takes 17s&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Unhammer</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.apertium.org/w/index.php?title=Compilation_Speed&amp;diff=74072&amp;oldid=prev</id>
		<title>Unhammer at 10:58, 27 June 2022</title>
		<link rel="alternate" type="text/html" href="https://wiki.apertium.org/w/index.php?title=Compilation_Speed&amp;diff=74072&amp;oldid=prev"/>
		<updated>2022-06-27T10:58:18Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 10:58, 27 June 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 14:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 14:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;div&gt;3) &#039;&#039;&#039;ALLOCATE FASTER&#039;&#039;&#039;: &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;PutTry&lt;/del&gt; another malloc, e.g. tcmalloc or jemalloc. On Debian/Ubuntu, you would &amp;lt;code&amp;gt;sudo apt install libtcmalloc-minimal4&amp;lt;/code&amp;gt; and then put &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;function m () { export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libtcmalloc_minimal.so.4; make &quot;$@&quot;; }&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; into your ~/.bashrc (or ~/.bash_profile). Now you can use &amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt; instead of &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; to compile with tcmalloc. &lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;3) &#039;&#039;&#039;ALLOCATE FASTER&#039;&#039;&#039;: &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Try&lt;/ins&gt; another malloc, e.g. tcmalloc or jemalloc. On Debian/Ubuntu, you would &amp;lt;code&amp;gt;sudo apt install libtcmalloc-minimal4&amp;lt;/code&amp;gt; and then put &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;function m () { export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libtcmalloc_minimal.so.4; make &quot;$@&quot;; }&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; into your ~/.bashrc (or ~/.bash_profile). Now you can use &amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt; instead of &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; to compile with tcmalloc. &lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=yes &amp;amp;&amp;amp; make -j&amp;lt;/code&amp;gt; in nno-nob takes 1m24s with regular malloc (glibc)&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=yes &amp;amp;&amp;amp; make -j&amp;lt;/code&amp;gt; in nno-nob takes 1m24s with regular malloc (glibc)&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=yes &amp;amp;&amp;amp; m    -j&amp;lt;/code&amp;gt; in nno-nob takes 1m03s with tcmalloc&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=yes &amp;amp;&amp;amp; m    -j&amp;lt;/code&amp;gt; in nno-nob takes 1m03s with tcmalloc&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Unhammer</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.apertium.org/w/index.php?title=Compilation_Speed&amp;diff=74071&amp;oldid=prev</id>
		<title>Unhammer: formatting</title>
		<link rel="alternate" type="text/html" href="https://wiki.apertium.org/w/index.php?title=Compilation_Speed&amp;diff=74071&amp;oldid=prev"/>
		<updated>2022-06-27T10:57:39Z</updated>

		<summary type="html">&lt;p&gt;formatting&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 10:57, 27 June 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 14:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 14:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-deletedline diff-side-deleted&quot;&gt;&lt;div&gt;3) &#039;&#039;&#039;ALLOCATE FASTER&#039;&#039;&#039;: PutTry another malloc, e.g. tcmalloc or jemalloc. On Debian/Ubuntu, you would &amp;lt;code&amp;gt;sudo apt install libtcmalloc-minimal4&amp;lt;/code&amp;gt; and then put &amp;lt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;nowiki&lt;/del&gt;&amp;gt;&amp;lt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;code&lt;/del&gt;&amp;gt;function m () { export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libtcmalloc_minimal.so.4; make &quot;$@&quot;; }&amp;lt;/&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;code&lt;/del&gt;&amp;gt;&amp;lt;/&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;nowiki&lt;/del&gt;&amp;gt; into your ~/.bashrc (or ~/.bash_profile). Now you can use &amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt; instead of &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; to compile with tcmalloc. &lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-addedline diff-side-added&quot;&gt;&lt;div&gt;3) &#039;&#039;&#039;ALLOCATE FASTER&#039;&#039;&#039;: PutTry another malloc, e.g. tcmalloc or jemalloc. On Debian/Ubuntu, you would &amp;lt;code&amp;gt;sudo apt install libtcmalloc-minimal4&amp;lt;/code&amp;gt; and then put &amp;lt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;code&lt;/ins&gt;&amp;gt;&amp;lt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;nowiki&lt;/ins&gt;&amp;gt;function m () { export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libtcmalloc_minimal.so.4; make &quot;$@&quot;; }&amp;lt;/&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;nowiki&lt;/ins&gt;&amp;gt;&amp;lt;/&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;code&lt;/ins&gt;&amp;gt; into your ~/.bashrc (or ~/.bash_profile). Now you can use &amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt; instead of &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; to compile with tcmalloc. &lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=yes &amp;amp;&amp;amp; make -j&amp;lt;/code&amp;gt; in nno-nob takes 1m24s with regular malloc (glibc)&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=yes &amp;amp;&amp;amp; make -j&amp;lt;/code&amp;gt; in nno-nob takes 1m24s with regular malloc (glibc)&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-deleted&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=yes &amp;amp;&amp;amp; m    -j&amp;lt;/code&amp;gt; in nno-nob takes 1m03s with tcmalloc&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-context diff-side-added&quot;&gt;&lt;div&gt;* &amp;lt;code&amp;gt;make clean &amp;amp;&amp;amp; export LT_JOBS=yes &amp;amp;&amp;amp; m    -j&amp;lt;/code&amp;gt; in nno-nob takes 1m03s with tcmalloc&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Unhammer</name></author>
		
	</entry>
</feed>