Schemaläggning vid toppminne

HotPDF antar konkurrerande operationer med hög minnesanvändning genom en processövergripande bytebudget innan de allokerar sina huvudsakliga arbetsset

Täckta operationer

Varje operation reserverar en konservativ uppskattning härledd från dess källstorlek, rendermått, DPI, strömtröskel och arbetarantal och frigör sedan reservationen vid den befintliga operationstelemetrigränsen

Antagningspolicy

Den icke-kontenderade sökvägen allokerar inget väntevent, medan kontenderade operationer använder ett privat event och spinner inte

Konfiguration

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 är per komponent och kan kringgå antagning för betrodd isolerad arbete, medan PeakMemorySchedulerBudgetBytes konfigurerar den delade processövergripande schemaläggaren

Statistik

THPDFPeakMemorySchedulerStatistics rapporterar aktuella och topp-reserverade byte, aktuella och topp-aktiva reservationer, aktuella och topp-väntare, totala och fördröjda antagningar, översstora antagningar, avbrott och sammanlagd väntetid

THPDFOperationTelemetry.ScheduledMemoryBytes, MemorySchedulerWaitMilliseconds och MemorySchedulerDelayed attribuerar schemaläggningskostnad till den senaste operationen

Relaterade API:er