TruffleRuby like other runtimes with a just-in-time compiler needs some time (called warmup) to reach peak performance, because it takes time to just-in-time compile the relevant methods of the benchmark. The easiest way to check if there was enough warmup is to run the benchmark workload repeatedly inside a process and print the times of each run. The times should be very stable once it's warmed up and conversely keep changing while it is not warmed up yet. See this documentation for more details about warmup.
TruffleRuby Benchmarking #ruby #rubydeveloper #rubyonrails #benchmarking