<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[C++Code optimieren]]></title><description><![CDATA[<p>Was haltet ihr von <a href="http://www.tantalon.com/pete/cppopt/main.htm" rel="nofollow">http://www.tantalon.com/pete/cppopt/main.htm</a> ? Gibts da noch weitere Tippssammluingen?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/306190/c-code-optimieren</link><generator>RSS for Node</generator><lastBuildDate>Sat, 08 Aug 2026 07:36:27 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/306190.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 20 Jul 2012 12:55:31 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to C++Code optimieren on Fri, 20 Jul 2012 12:55:31 GMT]]></title><description><![CDATA[<p>Was haltet ihr von <a href="http://www.tantalon.com/pete/cppopt/main.htm" rel="nofollow">http://www.tantalon.com/pete/cppopt/main.htm</a> ? Gibts da noch weitere Tippssammluingen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2234377</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2234377</guid><dc:creator><![CDATA[blllllllllll]]></dc:creator><pubDate>Fri, 20 Jul 2012 12:55:31 GMT</pubDate></item><item><title><![CDATA[Reply to C++Code optimieren on Fri, 20 Jul 2012 13:03:50 GMT]]></title><description><![CDATA[<p>Meine Meinung zu dem Verlinkten: Sind nur triviale 0815-Tipps.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2234378</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2234378</guid><dc:creator><![CDATA[blllllllllll]]></dc:creator><pubDate>Fri, 20 Jul 2012 13:03:50 GMT</pubDate></item><item><title><![CDATA[Reply to C++Code optimieren on Fri, 20 Jul 2012 13:07:30 GMT]]></title><description><![CDATA[<p>blllllllllll schrieb:</p>
<blockquote>
<p>Meine Meinung zu dem Verlinkten: Sind nur triviale 0815-Tipps.</p>
</blockquote>
<p>Was für Tipps willst du sonst geben, außer allgemeinen? Für tolle konkrete Tipps, brauchst du konkreten Code und dann interessiert es nur die eine Person, die diesen Code hat.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2234380</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2234380</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Fri, 20 Jul 2012 13:07:30 GMT</pubDate></item><item><title><![CDATA[Reply to C++Code optimieren on Fri, 20 Jul 2012 13:45:14 GMT]]></title><description><![CDATA[<p>Die Tipps sind großteils Müll in der heutigen Zeit...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2234392</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2234392</guid><dc:creator><![CDATA[Kellerautomat]]></dc:creator><pubDate>Fri, 20 Jul 2012 13:45:14 GMT</pubDate></item><item><title><![CDATA[Reply to C++Code optimieren on Fri, 20 Jul 2012 14:06:50 GMT]]></title><description><![CDATA[<p>&quot;Consider two-phase construction&quot;? Da kommt einem ja das Schaudern. Ansonsten ist einiges mit der Einführung von Move-Semantik hinfällig, und anderes war es schon länger durch Weiterentwicklungen in der Compilertechnik. Ich denke da insbesondere an den Punkt &quot;Limit exception handling&quot;, was man zumindest aus Geschwindigkeitsgründen schön sein lassen sollte.</p>
<p>Die Abschnitte &quot;C++ Optimizations You Can Do &quot;As You Go&quot;&quot; und &quot;Final Optimizations&quot; dagegen sehen nach wie vor sinnvoll aus. Was mir komisch aufstößt, ist, dass Cache-Lokalität mit keinem Wort erwähnt wird. Erfahrungsgemäß ist das (neben Vektorisierung, wenn man sich die Arbeit macht) das, was am meisten bringt.</p>
<p>Siehe dazu auch <a href="http://channel9.msdn.com/Events/GoingNative/GoingNative-2012/Keynote-Bjarne-Stroustrup-Cpp11-Style" rel="nofollow">http://channel9.msdn.com/Events/GoingNative/GoingNative-2012/Keynote-Bjarne-Stroustrup-Cpp11-Style</a> (speziell ab 44:00). Ich gehe oft noch einen Schritt weiter und halte meinen Kram auf dem Stack, aber ich muss ja auch mit stark nebenläufigen Szenarien und Heap-Contention rechnen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2234401</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2234401</guid><dc:creator><![CDATA[seldon]]></dc:creator><pubDate>Fri, 20 Jul 2012 14:06:50 GMT</pubDate></item><item><title><![CDATA[Reply to C++Code optimieren on Fri, 20 Jul 2012 14:27:33 GMT]]></title><description><![CDATA[<p>Dazu auch <a href="http://www.virtual-maxim.de/cache-optimierung-zeitliche-und-raeumliche-lokalitaet/" rel="nofollow">http://www.virtual-maxim.de/cache-optimierung-zeitliche-und-raeumliche-lokalitaet/</a> <a href="http://www.inf.fu-berlin.de/inst/ag-bio-expired/FILES/ROOT/Teaching/Lectures/SS04/hardcore_cpp/CPP-Hardcore_4.pdf" rel="nofollow">http://www.inf.fu-berlin.de/inst/ag-bio-expired/FILES/ROOT/Teaching/Lectures/SS04/hardcore_cpp/CPP-Hardcore_4.pdf</a></p>
<p>Danke dafür! Das war mir ganz neu.</p>
<p>Was für Tipps sind denn noch in dem Stroustrup-Video? Anschauen dauert mir zu lange.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2234407</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2234407</guid><dc:creator><![CDATA[blllllllllll]]></dc:creator><pubDate>Fri, 20 Jul 2012 14:27:33 GMT</pubDate></item><item><title><![CDATA[Reply to C++Code optimieren on Fri, 20 Jul 2012 14:28:41 GMT]]></title><description><![CDATA[<p>Bei dem Array-Beispiel von Cachelokalität: Machen das die Compiler mittlerweile selbst?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2234408</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2234408</guid><dc:creator><![CDATA[blllllllllll]]></dc:creator><pubDate>Fri, 20 Jul 2012 14:28:41 GMT</pubDate></item><item><title><![CDATA[Reply to C++Code optimieren on Fri, 20 Jul 2012 14:43:38 GMT]]></title><description><![CDATA[<p>blllllllllll schrieb:</p>
<blockquote>
<p>Dazu auch <a href="http://www.virtual-maxim.de/cache-optimierung-zeitliche-und-raeumliche-lokalitaet/" rel="nofollow">http://www.virtual-maxim.de/cache-optimierung-zeitliche-und-raeumliche-lokalitaet/</a> <a href="http://www.inf.fu-berlin.de/inst/ag-bio-expired/FILES/ROOT/Teaching/Lectures/SS04/hardcore_cpp/CPP-Hardcore_4.pdf" rel="nofollow">http://www.inf.fu-berlin.de/inst/ag-bio-expired/FILES/ROOT/Teaching/Lectures/SS04/hardcore_cpp/CPP-Hardcore_4.pdf</a></p>
<p>Danke dafür! Das war mir ganz neu.</p>
<p>Was für Tipps sind denn noch in dem Stroustrup-Video? Anschauen dauert mir zu lange.</p>
</blockquote>
<p>Hab gerade die Slides entdeckt: <a href="http://ecn.channel9.msdn.com/events/GoingNative12/GN12Cpp11Style.pdf" rel="nofollow">http://ecn.channel9.msdn.com/events/GoingNative12/GN12Cpp11Style.pdf</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2234414</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2234414</guid><dc:creator><![CDATA[blllllllllll]]></dc:creator><pubDate>Fri, 20 Jul 2012 14:43:38 GMT</pubDate></item><item><title><![CDATA[Reply to C++Code optimieren on Fri, 20 Jul 2012 23:21:20 GMT]]></title><description><![CDATA[<p>Laut der Tabelle im Anhang auf der Seite (<a href="http://www.tantalon.com/pete/cppopt/appendix.htm#AppendixB" rel="nofollow">http://www.tantalon.com/pete/cppopt/appendix.htm#AppendixB</a>) sind einige operationen (präinkrement, division, modulo, bitwise NOT und &gt;= operator) langsamer mit unsigned int's als mit signed int's.<br />
Gibt es da irgend einen Grund für? Oder sind das die erwähnten 0,1 Messungenauigkeit?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2234496</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2234496</guid><dc:creator><![CDATA[Performance]]></dc:creator><pubDate>Fri, 20 Jul 2012 23:21:20 GMT</pubDate></item><item><title><![CDATA[Reply to C++Code optimieren on Sat, 21 Jul 2012 06:23:45 GMT]]></title><description><![CDATA[<p>blllllllllll schrieb:</p>
<blockquote>
<p>Bei dem Array-Beispiel von Cachelokalität: Machen das die Compiler mittlerweile selbst?</p>
</blockquote>
<p>Nein. Das ist eine Optimierung die sie - zumindest für floating-point - nicht durchführen dürfen. dank numerischer Ungenauigkeiten unterscheiden sich dann nämlich die Ergebnisse der beiden Versionen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2234505</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2234505</guid><dc:creator><![CDATA[otze]]></dc:creator><pubDate>Sat, 21 Jul 2012 06:23:45 GMT</pubDate></item><item><title><![CDATA[Reply to C++Code optimieren on Sat, 21 Jul 2012 09:39:49 GMT]]></title><description><![CDATA[<p>blllllllllll schrieb:</p>
<blockquote>
<p>Bei dem Array-Beispiel von Cachelokalität: Machen das die Compiler mittlerweile selbst?</p>
</blockquote>
<p>Nein, manuelles Nachbessern kann die Performance stark steigern.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2234514</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2234514</guid><dc:creator><![CDATA[knivil]]></dc:creator><pubDate>Sat, 21 Jul 2012 09:39:49 GMT</pubDate></item><item><title><![CDATA[Reply to C++Code optimieren on Sat, 21 Jul 2012 12:24:31 GMT]]></title><description><![CDATA[<p>Performance schrieb:</p>
<blockquote>
<p>Laut der Tabelle im Anhang auf der Seite (<a href="http://www.tantalon.com/pete/cppopt/appendix.htm#AppendixB" rel="nofollow">http://www.tantalon.com/pete/cppopt/appendix.htm#AppendixB</a>) sind einige operationen (präinkrement, division, modulo, bitwise NOT und &gt;= operator) langsamer mit unsigned int's als mit signed int's.<br />
Gibt es da irgend einen Grund für? Oder sind das die erwähnten 0,1 Messungenauigkeit?</p>
</blockquote>
<p>Ich vermute der Grund ist, das overflow beim signed int undefined ist (sogar explizit aus dem Grund, um optimierungen zu erlauben)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2234540</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2234540</guid><dc:creator><![CDATA[KMT]]></dc:creator><pubDate>Sat, 21 Jul 2012 12:24:31 GMT</pubDate></item><item><title><![CDATA[Reply to C++Code optimieren on Sat, 21 Jul 2012 12:48:41 GMT]]></title><description><![CDATA[<p>KMT schrieb:</p>
<blockquote>
<p>Performance schrieb:</p>
<blockquote>
<p>Laut der Tabelle im Anhang auf der Seite (<a href="http://www.tantalon.com/pete/cppopt/appendix.htm#AppendixB" rel="nofollow">http://www.tantalon.com/pete/cppopt/appendix.htm#AppendixB</a>) sind einige operationen (präinkrement, division, modulo, bitwise NOT und &gt;= operator) langsamer mit unsigned int's als mit signed int's.<br />
Gibt es da irgend einen Grund für? Oder sind das die erwähnten 0,1 Messungenauigkeit?</p>
</blockquote>
<p>Ich vermute der Grund ist, das overflow beim signed int undefined ist (sogar explizit aus dem Grund, um optimierungen zu erlauben)</p>
</blockquote>
<p>Nur macht vc6 davon keinen Gebrauch (ist bei diesen einfachen Operationen auch kaum möglich), und außerdem wurde ja gerade <em>ohne Optimierung</em> getestet.<br />
Die gesamte Übersicht ist aus diesem Grunde von vornherein unsinnig und - schlimmer noch - irreführend.<br />
Es findet (außer ggf. bei völlig unoptimierten Builds) keine 1:1 - Übersetzung von Sprachprimitiven in Maschinensprache statt. Solchen einfachen Operationen <em>ohne Kontext</em> Zeiten zuzuordnen ist sinnlos und Zeitverschwendung.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2234543</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2234543</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Sat, 21 Jul 2012 12:48:41 GMT</pubDate></item><item><title><![CDATA[Reply to C++Code optimieren on Sat, 21 Jul 2012 12:53:11 GMT]]></title><description><![CDATA[<p>Ich habs mir zugegebenermaßen nicht weiter angeschaut. War auch eher Spekulation.<br />
Warum diese Unterschiede dann auftreten, würde mich aber - selbst wenn es nur einen Spezialfall betrifft - dann auch interessieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2234545</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2234545</guid><dc:creator><![CDATA[KMT]]></dc:creator><pubDate>Sat, 21 Jul 2012 12:53:11 GMT</pubDate></item></channel></rss>