İstatistiksel Performans Regression Harness'i

Native console harness'i, HotPDF'i Win32 ve Win64'te ölçer ve bir iş yükü sürümlü eşiğini aştığında başarısız bir process durumu döndürür

Gate'i çalıştırma

Tests\Performance\Run-HotPDFPerformance.bat

python tools\validate_performance_report.py ^
  Tests\Performance\Reports\performance-Win32.json ^
  Tests\Performance\Reports\performance-Win64.json

Batch dosyası release runner'ları derler, iş yükü başına üç warmup ve ardından 30 ölçümlü örnek uygular, Tests\Performance\thresholds.json dosyasını devreye sokar ve Tests\Performance\Reports altına platform başına bir rapor yazar

Gate'i, başka iş olmayan boşta bir makinede izole çalıştırın; çünkü scheduler rekabeti ve ilgisiz process I/O'su ölçümlere kasıtlı olarak yansır

İş yükleri

Fixture, sabit PDF baytlarına ve sabitlenmiş bir SHA-256 kimliğine sahiptir; böylece bir girdi değişikliği eski eşikleri sessizce yeniden kullanamaz

Rapor schema'sı

hotpdf.performance.v1; ürün ve harness sürümlerini, UTC timestamp'ini, warm-cache durumunu, ortamı, fixture kimliğini, ham örnekleri, özetleri, uygulanan eşikleri, başarısızlıkları ve genel geçiş durumunu kaydeder

Her özet; minimum, nearest-rank p50 ve p95, maksimum, aritmetik ortalama, N-1 örnek varyansı, standart sapma, gözlemlenen ve process-tepe RSS, maksimum pozitif working-set büyümesi ve toplam okuma, yazma ve diğer process I/O'sunu içerir

Validator; zamanlama istatistiklerini, RSS'i, I/O toplamlarını, eşik kararlarını ve toplu geçiş durumunu ham örneklerden bağımsız olarak yeniden hesaplar

Runner seçenekleri ve çıkış kodları

HotPDFPerformanceRunner.exe \
  --output=report.json \
  --thresholds=thresholds.json \
  --warmup=3 \
  --samples=30

--samples 30'dan düşük olamaz ve --warmup birden düşük olamaz

Eşik bakımı

p50, p95, gözlemlenen RSS, working-set büyümesi, okuma baytları ve yazma baytları için ayrı Win32 ve Win64 tavanları tutun

Bir eşiği yalnızca ham örnekleri, makine koşullarını, fixture kimliğini, uygulama niyetini ve her iki platformda tekrarlanan izole çalıştırmaları gözden geçirdikten sonra revize edin

Ayrıca bkz.: Ölçeklenebilir ve Rastgele Erişimli PDF Yükleme, Span Tabanlı Basit-Object Parsing, Rendering Tanılama ve İşlem Telemetrisi