Measured compatibility

Performance summary

The modern Rocky Linux Original Lasso 8.6.3 comparison and the retained PHP 8.4 reference. Each performance section states its own machine specification; results are not compared across machines.

Rocky Linux comparison

Original Lasso on a current host

Rocky Linux 8.10, 2 vCPUs on Intel Xeon L5420 2.50 GHz, 2 GiB maximum RAM with a 1 GiB floor, and a 20 GiB disk. The recovered vendor package is compatibility-adapted to this newer operating system. Both runtimes use isolated databases and persistent workers.

Runtime interpretation

Source executed by each interpreter

3.01×LaiRu geometric-mean throughput

Workloads
13 / 13
Exact checksums
13 / 13
View interpreter results

Resident LassoApp

Source compiled into each native archive

3.23×lower LaiRu warm median latency

Original median
5.833 ms
LaiRu median
1.803 ms
View LassoApp results

Runtime interpreter

Identical Lasso source

Both engines execute the same 13-case fixture with identical iteration counts, one warmup, and seven measured samples. Timers are inside the Lasso workload. The vendor runtime was warmed, its request logging was excluded, and the long operation request bypassed the normal nginx timeout through loopback Apache.

WorkloadOperationIterationsOriginal 8.6.3 medianLaiRu 8.6.3 medianLaiRu / OriginalChecksum
loop_controlControl flowCounted loop and assignment300,000304.000 ms162.000 ms1.88×Match
integer_arithmeticArithmeticInteger multiply, add, and modulo200,000513.000 ms173.000 ms2.97×Match
branch_controlControl flowModulo branch and conditional increment200,000270.000 ms115.000 ms2.35×Match
string_searchStringsFind a substring in fixed ASCII text80,000326.000 ms167.000 ms1.95×Match
string_replaceStringsTwo fixed substring replacements30,0003,048.000 ms118.000 ms25.83×Match
array_buildCollectionsAppend sequential integers to an array10,00015.000 ms9.000 ms1.67×Match
array_lookupCollectionsIndexed reads from a 100-item array100,000771.000 ms1,327.000 ms0.58×Match
map_lookupCollectionsRepeated lookup in a four-entry map100,000406.000 ms184.000 ms2.21×Match
custom_tag_callDispatchTwo-argument user tag invocation100,000911.000 ms334.000 ms2.73×Match
html_encodeWeb textHTML-encode a fixed fragment60,000443.000 ms96.000 ms4.61×Match
md5_digestCryptoMD5 digest of fixed ASCII text100,0001,775.000 ms104.000 ms17.07×Match
regex_replaceRegexReplace two numeric runs10,000330.000 ms176.000 ms1.88×Match
template_renderRenderingBuild a ten-row HTML list fragment5,000514.000 ms172.000 ms2.99×Match
Language-suite result

LaiRu measured 3.01× Original Lasso's geometric-mean throughput across 13 checksum-matched cases. Values below 1× mean Original was faster. Raw samples and fixture hashes are retained in the report.

Resident LassoApp

Same source, built by each runtime

The same default.lasso is copied to both runtime build areas. Original Lasso and LaiRu each build their own Benchmark.LassoApp using native LassoApp_Create. Both workers are restarted, one cold load is recorded, and then 50 warmups precede 5 interleaved rounds of 500 requests through nginx. Cold load includes any lazy site-worker initialization after restart; the warm statistics are the steady-state comparison. Both return the same 1,010-byte body and SHA-256 digest. The checked-in source digest is e38fee8c0464aaa913c321c75ad47d33a0837b5dfc48e781df7d90a5427913d5. Original Lasso produced a 696-byte archive and LaiRu produced a 579-byte archive; their formats are implementation-specific and are not expected to be byte-identical.

RuntimeOriginal Lasso 8.6.3
Archive
696 bytes
Cold load
3,024.638 ms
Median
5.833 ms
Mean
5.798 ms
p95
6.197 ms
Throughput
172.48 req/s
RuntimeLaiRu Legacy 8.6.3
Archive
579 bytes
Cold load
5.546 ms
Median
1.803 ms
Mean
1.800 ms
p95
1.952 ms
Throughput
555.54 req/s

Result: Original Lasso's median latency was 3.23× LaiRu's; LaiRu delivered 3.22× Original's sequential throughput on this fixture. This is a single-client compatibility comparison, not a concurrent load limit.

PHP 8.4 comparison

A modern performance reference

Debian 13, one pinned logical CPU on Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz. This retained comparison is intentionally unchanged: it is a performance reference using equivalent implementations, not a Lasso feature-parity claim.

Language suite13 / 13

result checksums matched

LaiRu improvement5.50×

aggregate throughput over the retained pre-optimization baseline

Application median0.172 ms

LaiRu Legacy warm FastCGI request

Application gap1.86×

LaiRu latency relative to PHP-FPM 8.4

Language operations

The retained PHP matrix

PHP 8.4.21 and LaiRu Legacy execute equivalent implementations with identical iteration counts and checksums. One warmup and seven samples are run. Timers exclude process startup, parsing, compilation, and report serialization.

WorkloadOperationIterationsPHP 8.4 medianLaiRu 8.6.3 medianLaiRu throughputLatency gap
loop_controlControl flowCounted loop and assignment300,0001.119 ms51 ms0.0219×45.57×
integer_arithmeticArithmeticInteger multiply, add, and modulo200,0005.194 ms64 ms0.0812×12.32×
branch_controlControl flowModulo branch and conditional increment200,0003.133 ms46 ms0.0681×14.68×
string_searchStringsFind a substring in fixed ASCII text80,0000.298 ms62 ms0.0048×207.94×
string_replaceStringsTwo fixed substring replacements30,0000.112 ms44 ms0.0025×393.12×
array_buildCollectionsAppend sequential integers to an array10,0000.100 ms4 ms0.0250×39.98×
array_lookupCollectionsIndexed reads from a 100-item array100,0001.979 ms126 ms0.0157×63.67×
map_lookupCollectionsRepeated lookup in a four-entry map100,0000.373 ms88 ms0.0042×236.17×
custom_tag_callDispatchTwo-argument user function/tag invocation100,0003.092 ms93 ms0.0332×30.08×
html_encodeWeb textHTML-encode a fixed fragment60,00015.432 ms33 ms0.4676×2.14×
md5_digestCryptoMD5 digest of fixed ASCII text100,00015.094 ms41 ms0.3681×2.72×
regex_replaceRegexReplace two numeric runs10,0001.640 ms77 ms0.0213×46.96×
template_renderRenderingBuild a ten-row HTML list fragment5,0003.557 ms85 ms0.0418×23.90×
Language-suite summary

Geometric-mean LaiRu throughput is 0.029460× PHP, or a 33.94× latency gap. The per-operation table is deliberately harsh on interpreter dispatch; the complete warm application path below is the production-shaped comparison.

Persistent application

The production-shaped result

One LaiRu worker and one static PHP-FPM 8.4 child remain alive for a cold request, 50 warmups, then 5 interleaved rounds of 500 requests. Both render the same 992-byte body and digest.

RuntimeLaiRu Legacy 8.6.3
Cold
0.767 ms
Median
0.172 ms
Mean
0.174 ms
p95
0.188 ms
Throughput
5,738.83 req/s
RuntimePHP 8.4.21 FPM
Cold
1.157 ms
Median
0.092 ms
Mean
0.093 ms
p95
0.105 ms
Throughput
10,783.80 req/s

Result: LaiRu delivers 0.5378× PHP-FPM throughput on this fixture, corresponding to 1.86× PHP latency.

Extended feature parity

Every recovered language feature

The performance fixtures answer a narrow speed question. The extended suite sends 1,572 independent feature pages to Original Lasso and LaiRu on Rocky Linux, then checks the same LaiRu observations against Debian. Status, selected headers, response size, and response digest are compared.

Rocky: Original vs LaiRu1,286 exact

41 deviations · 208 environment · 15 diagnostic · 22 unavailable · 0 request failures

LaiRu: Rocky vs Debian1,510 exact

0 platform deviations · 62 configured environment · 0 request failures

Inspect the complete result

The full server-rendered page contains every Rocky Original comparison, the completed platform-independent resolution status, and the complete LaiRu Rocky-to-Debian parity result. No client-side application is required.

View full test suite results

Read the result honestly

Different suites answer different questions

The operation tables isolate interpreter costs. The application tests include the warm web request path. The parity suite evaluates observable language compatibility rather than speed.

All figures are host-specific regression evidence, not universal capacity promises. Fixture hashes and raw samples are retained with the project.

Read the optimization stage