Конференция "KOL" » HeapMM vs FastMM [Delphi, Windows]
 
  • QAZ (05.06.09 10:20) [0]
    оба эти менеджера памяти заявлены как "Быстрый и небольшой менеджер памяти"
    при этом если использовать тест из FastMM

    program test;

    uses                //, FastMM;
     windows, KOL;//, HeapMM;

    procedure DoTest( const title: String );
    var t: DWORD;
       s: String;
       i, j: Integer;
    begin
     t := GetTickCount;
     for i := 1 to 20 do
     begin
       s := '';
       for j := 1 to 1000000 do
         s := s + '*';
     end;
     MessageBox( 0, PChar( Int2Str( GetTickCount - t ) + ' ms' ), PChar( Title ), MB_OK );
    end;

    begin
     //Install_FastMM;
     DoTest( 'Test' );
    end.



    то HeapMM в 3 раза тормозней чем системный 18\6 сек.
    а FastMM  5\6 сек.

    вопрос зачем нужен HeapMM вообще?
    и стоит ли считать FastMM реально фастом?
  • exero (05.06.09 11:17) [1]

    > вопрос зачем нужен HeapMM вообще?

    Много велосипедов нужных и важных ). Вроде вначале был он, FastMM появился позже.

    > и стоит ли считать FastMM реально фастом?

    В свое время остановился на FastMM4 - к KOL не имеющего никакого отношения - пусть и побольше, но зато быстрее и содержит массу полезностей. Коловский fastmm - вроде бы еще и подглючивал.
    В общем использовать FastMM или HeapMM, нужно, когда используем замену системных файлов.
  • QAZ (05.06.09 11:56) [2]
    FastMM4 пофастее 4\6 сек но гиганск

    > нужно, когда используем замену системных файлов.

    это как ?
  • exero (05.06.09 14:24) [3]
    Ряд файлов, типа System.pas заменяются на "оптимизированные", почитайте на сайте KOL. Что касается менеджеров памяти в разных случаях их производительность разная - но в подавляющем большинстве FastMM4 рулит ) + хорошо показывает утечки памяти. Что касается размеров тут уж каждый решает по своему, но по мне хрен с ним с размером лишь бы работало шустро.
  • Barloggg (18.06.09 16:11) [4]
    В эту же тему. Есть ли менеджер памяти, который был бы компактней остальных?
    я вот что имею ввиду: я написал небольшую программку по мониторингу системных показателей - ну там загрузку процессора, оперативки и прочих мелочей.

    да, да, да, я знаю - это тысяча первая программа такого рода. :)

    так вот, при запуске программы процесс отжирает 17 мегабайт оперативки!!!
    а потом после нескольких часов работы "устаканивается" до 3 мегабайт наверное остальное падает в файл подкачки как "редко используемая".
    А лишние мегабайты я так понимаю нужны для того, чтобы программа меньше тормозила при запуске, когда в ней активно используется выделение памяти под тучу создаваемых объектов.

    формы нет, контролов нет.  Это чисто консольное приложение.
    Есть только аплет и небольшое дерево объектов. Пользуюсь строками.

    глянул в описание этого FastMM там быстродействие достигается ценой дикого перерасхода оперативки.

    вот собственно возник вопрос:
    есть ли, пусть медленный, но компактный менеджер памяти, который жрет по минимуму?
  • Vladimir Kladov © (18.06.09 19:21) [5]
    17 - это многовато конечно, даже с учетом того, что в диспетчере показывается память программы + память, занятая всеми подключенными dll, включая и те, что подключены косвенно из этих dll. Должно быть как раз 3-4М. Львиную долю из них, около 3М с хвостиком - это ole32 и oleaut32.dll. Но они и так всегда загружены. Надоело уже одно и то же.
 
Конференция "KOL" » HeapMM vs FastMM [Delphi, Windows]
Есть новые Нет новых   [134431   +11][b:0][p:0.001]