<?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[Problem mit alloc &#x2F; Allokierung von Speicher]]></title><description><![CDATA[<p>Hallo,</p>
<p>schreibe ein Programm mit Visual C++ und OpenCV (Computer Vision Bibliothek von intel). Ist eine sehr speicherfressende Angelegenheit. Setze, wo immer es geht, Speicher wieder frei. Allerdings kommt es trotzdem zu Abstürzen. (mAlloc, ungenügend Speicherplatz). Virtueller Speicher ist ausreichend gross. Arbeitsspeicher mit 2 GB müsste reichen.<br />
Meine Recherchen haben ergeben, dass Windows 2000 oder XP einer Applikation max. 2 GB Speicher gestatten. Nun, bei meinen Abstürzen zeigt mir mein Task-Manager an, dass momentan um die 1.3GB belegt sind.<br />
Daraus folgere ich, dass physikalisch genug Speicher zur Verfügung steht, dieser allerdings zu fragmentiert ist, so dass nicht genügend Speicher an einem Stück reserviert werden kann.</p>
<p>Was kann man da tun ?</p>
<p>Gibt es eine vielleicht Funktion in C++, mit der ich Speicher defragmentieren kann? Oder müsste ich dazu einen Garbage Collector verwenden ?</p>
<p>Bin für jeden Hinweis und Tipp sehr dankbar, weil es für mich sehr wichtig ist. Es geht um meine Masterarbeit und es ist nicht mehr viel Zeit.</p>
<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/120352/problem-mit-alloc-allokierung-von-speicher</link><generator>RSS for Node</generator><lastBuildDate>Sat, 22 Aug 2026 07:32:59 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/120352.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 12 Sep 2005 13:15:58 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem mit alloc &#x2F; Allokierung von Speicher on Mon, 12 Sep 2005 13:15:58 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>schreibe ein Programm mit Visual C++ und OpenCV (Computer Vision Bibliothek von intel). Ist eine sehr speicherfressende Angelegenheit. Setze, wo immer es geht, Speicher wieder frei. Allerdings kommt es trotzdem zu Abstürzen. (mAlloc, ungenügend Speicherplatz). Virtueller Speicher ist ausreichend gross. Arbeitsspeicher mit 2 GB müsste reichen.<br />
Meine Recherchen haben ergeben, dass Windows 2000 oder XP einer Applikation max. 2 GB Speicher gestatten. Nun, bei meinen Abstürzen zeigt mir mein Task-Manager an, dass momentan um die 1.3GB belegt sind.<br />
Daraus folgere ich, dass physikalisch genug Speicher zur Verfügung steht, dieser allerdings zu fragmentiert ist, so dass nicht genügend Speicher an einem Stück reserviert werden kann.</p>
<p>Was kann man da tun ?</p>
<p>Gibt es eine vielleicht Funktion in C++, mit der ich Speicher defragmentieren kann? Oder müsste ich dazu einen Garbage Collector verwenden ?</p>
<p>Bin für jeden Hinweis und Tipp sehr dankbar, weil es für mich sehr wichtig ist. Es geht um meine Masterarbeit und es ist nicht mehr viel Zeit.</p>
<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/870253</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/870253</guid><dc:creator><![CDATA[brainesic]]></dc:creator><pubDate>Mon, 12 Sep 2005 13:15:58 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit alloc &#x2F; Allokierung von Speicher on Mon, 12 Sep 2005 13:27:09 GMT]]></title><description><![CDATA[<p>brainesic schrieb:</p>
<blockquote>
<p>Gibt es eine vielleicht Funktion in C++, mit der ich Speicher defragmentieren kann?</p>
</blockquote>
<p>Das kann nicht gehen, weil sich dabei ja zwangsweise alle Pointer ändern. Du könntest entweder einen anderen Speicherallokator ausprobieren (smartheap z.B.) oder auf eine 64Bit-Maschine ausweichen. Das mit dem Garbage Collector wäre sehr kompliziert und würde wahrscheinlich ziemlich viel Umschreibarbeit nach sich ziehen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/870269</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/870269</guid><dc:creator><![CDATA[Ringding]]></dc:creator><pubDate>Mon, 12 Sep 2005 13:27:09 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit alloc &#x2F; Allokierung von Speicher on Mon, 12 Sep 2005 13:29:16 GMT]]></title><description><![CDATA[<p>64-Bit CPU</p>
]]></description><link>https://www.c-plusplus.net/forum/post/870272</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/870272</guid><dc:creator><![CDATA[64-bit]]></dc:creator><pubDate>Mon, 12 Sep 2005 13:29:16 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit alloc &#x2F; Allokierung von Speicher on Mon, 12 Sep 2005 13:36:51 GMT]]></title><description><![CDATA[<p>ich glaub man kann auch 3 gb bekommen mit nem speziellen boot-flag. aber das bringts wahrscheinlich auch nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/870279</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/870279</guid><dc:creator><![CDATA[3gb anyone]]></dc:creator><pubDate>Mon, 12 Sep 2005 13:36:51 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit alloc &#x2F; Allokierung von Speicher on Mon, 12 Sep 2005 13:42:24 GMT]]></title><description><![CDATA[<p>Wäre besser mit new und delete zu arbeiten. Die Implementierung in VC++ versucht die Speicherfragmentierung zu vermeiden.<br />
(Geht aber bei vielen kleinen Objekten auf die Performance.)</p>
<p>Ansonsten würde ich versuchen meine Datenstruktur so aufzubauchen, dass hintereinander erzeugte Objekte auch zusammen gelöscht werden....</p>
]]></description><link>https://www.c-plusplus.net/forum/post/870285</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/870285</guid><dc:creator><![CDATA[Mathias]]></dc:creator><pubDate>Mon, 12 Sep 2005 13:42:24 GMT</pubDate></item></channel></rss>