Планиране по пикова памет

HotPDF допуска съревнуващи операции с голям отпечатък през един целопроцесорен байтов бюджет, преди те да заделят основните си working set-ове

Покрити операции

Всяка операция резервира консервативна оценка, изведена от размера на източника си, размерите на рендиране, DPI, прага на потока и броя работници, после освобождава резервацията на съществуващата граница за телеметрия на операцията

Политика на допускане

Неконкурентният път не заделя wait event, а конкурентните операции използват едно частно събитие и не врят в занят цикъл

Конфигурация

PDF.PeakMemorySchedulerEnabled := True;
PDF.PeakMemorySchedulerBudgetBytes := 768 * 1024 * 1024;

PDF.ResetPeakMemorySchedulerStatistics;
if PDF.GetPeakMemorySchedulerStatistics(Stats) then
begin
  WriteLn(Stats.PeakReservedBytes);
  WriteLn(Stats.DelayedAdmissionCount);
  WriteLn(Stats.TotalWaitMilliseconds);
end;

PeakMemorySchedulerEnabled е на компонент и може да заобиколи допускането за доверена, изолирана работа, докато PeakMemorySchedulerBudgetBytes конфигурира споделения целопроцесорен планувальник

Статистики

THPDFPeakMemorySchedulerStatistics докладва текущи и пикни резервирани байтове, текущи и пикни активни резервации, текущи и пикни чакащи, общи и отложени допускания, прекалено големи допускания, отменяния и общо време на изчакване

THPDFOperationTelemetry.ScheduledMemoryBytes, MemorySchedulerWaitMilliseconds и MemorySchedulerDelayed приписват цената на планирането на най-скорошната операция

Свързани API