Csúcsmemória-ütemezés
A HotPDF a versengő, nagy lábnyomú műveleteket egy folyamatszintű bájtkereten keresztül engedi be, mielőtt azok lefoglalnák a fő munkahalmazaikat
Lefedett műveletek
- Dokumentum betöltése
- Dokumentumbetöltés
- Szinkron, gyorsítótárazott és progresszív oldalrenderelés
- Szelektív folyam-optimalizálás
- Korlátos párhuzamos képoptimalizálás
Minden művelet a forrásméretéből, renderelési méreteiből, DPI-jéből, folyamküszöbéből és dolgozószámából származtatott konzervatív becslést foglal le, majd a meglévő művelet-telemetria határán felszabadítja a foglalást
Beengedési politika
- Az alapértelmezett folyamatszintű keret
536870912bájt - A
0érték letiltja a keretkorlátozást - A várakozók FIFO-sorrendben kerülnek beengedésre, így a későbbi kis kérések nem éheztethetik ki a korábbi nagy kérést
- A konfigurált keretnél nagyobb kérés csak akkor futhat, ha nincs más aktív foglalás
- A keret növelése azonnal beengedheti a sorban álló munkát, míg a csökkentése soha nem szakítja meg az aktív munkát
- A sorban álló várakozások korlátos 50 ms-os időközönként lekérdezik a művelet-megszakítási tokent
A versenymentes útvonal nem foglal várakozási eseményt, míg a versengő műveletek egy privát eseményt használnak, és nem pörögnek
Konfiguráció
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;
A PeakMemorySchedulerEnabled komponensenkénti, és megkerülheti a beengedést a megbízható elkülönített munkához, míg a PeakMemorySchedulerBudgetBytes a megosztott folyamatszintű ütemezőt konfigurálja
Statisztikák
A THPDFPeakMemorySchedulerStatistics jelenti az aktuális és csúcs lefoglalt bájtokat, az aktuális és csúcs aktív foglalásokat, az aktuális és csúcs várakozókat, a teljes és késleltetett beengedéseket, a túlméretezett beengedéseket, a megszakításokat és az összesített várakozási időt
A THPDFOperationTelemetry.ScheduledMemoryBytes, MemorySchedulerWaitMilliseconds és MemorySchedulerDelayed az ütemezési költséget a legutóbbi művelethez rendeli