Site Projection and Export

Copy Markdown View Source

Benchmark

Site projection includes page admission, anchor and link resolution, navigation, search, and digests. Static export includes rendering, search serialization, link validation, staged writes, and replacement. The destination is reused to measure the normal replacement path. Memory figures are BEAM allocations reported by Benchee, not peak resident memory.

PagesSearch recordsSearch bytesOutput filesOutput bytes
1050231821941216
100500233112109392851
500250011740625091967950

System

Benchmark suite executing on the following system:

Operating System macOS
CPU Information Apple M4 Max
Number of Available Cores 16
Available Memory 128 GB
Elixir Version 1.20.4
Erlang Version 29.0.4

Configuration

Benchmark suite executing with the following configuration:

:time 5 s
:parallel 1
:warmup 2 s

Statistics

Input: 10 pages

Run Time

Name IPS Average Deviation Median 99th %
SiteProjector.project/1 152.44 6.56 ms ±5.27% 6.53 ms 7.39 ms
StaticExporter.export/1 56.25 17.78 ms ±9.17% 17.57 ms 25.24 ms

Run Time Comparison

Name IPS Slower
SiteProjector.project/1 152.44  
StaticExporter.export/1 56.25 2.71x

Memory Usage

Name Average Factor
SiteProjector.project/1 12.05 MB  
StaticExporter.export/1 9.85 MB 0.82x

Input: 100 pages

Run Time

Name IPS Average Deviation Median 99th %
SiteProjector.project/1 13.10 76.34 ms ±7.01% 74.69 ms 96.98 ms
StaticExporter.export/1 6.78 147.52 ms ±13.16% 143.75 ms 219.08 ms

Run Time Comparison

Name IPS Slower
SiteProjector.project/1 13.10  
StaticExporter.export/1 6.78 1.93x

Memory Usage

Name Average Factor
SiteProjector.project/1 120.37 MB  
StaticExporter.export/1 96.42 MB 0.8x

Input: 500 pages

Run Time

Name IPS Average Deviation Median 99th %
SiteProjector.project/1 2.60 384.30 ms ±29.16% 336.71 ms 671.85 ms
StaticExporter.export/1 1.07 938.06 ms ±23.01% 851.34 ms 1257.19 ms

Run Time Comparison

Name IPS Slower
SiteProjector.project/1 2.60  
StaticExporter.export/1 1.07 2.44x

Memory Usage

Name Average Factor
SiteProjector.project/1 602.02 MB  
StaticExporter.export/1 481.42 MB 0.8x