Bug 251324 - benchmarks/wrk: Add support for ARM64
Summary: benchmarks/wrk: Add support for ARM64
Status: New
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Sergey A. Osokin
Depends on:
Reported: 2020-11-23 07:24 UTC by Oleksandr Tymoshenko
Modified: 2021-01-27 15:56 UTC (History)
1 user (show)

See Also:
bugzilla: maintainer-feedback? (osa)

wrk-aarch64-fix.patch (841 bytes, patch)
2020-11-23 07:24 UTC, Oleksandr Tymoshenko
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Oleksandr Tymoshenko freebsd_committer freebsd_triage 2020-11-23 07:24:34 UTC
Created attachment 219900 [details]

lang/luajit-openresty builds on ARM64 and wrk, whn built with it, runs just fine. Attached patch switches the dependency to luajit-openresty for aarch64.
Comment 1 Sergey A. Osokin freebsd_committer 2020-11-23 16:28:25 UTC
Hi Oleksandr,

thanks for the report and the patch.

In case it isn't break any functionality it's probably better to completely switch to lang/luajit-openresty.
Comment 2 Oleksandr Tymoshenko freebsd_committer freebsd_triage 2020-12-04 21:20:04 UTC
Functionality-wise it's the same, I ran my lua scripts using both implementations. openresty version seems a bit slower on the same machine:
my scenario pre-generates a bunch of random numbers (offsets) for every worker thread and it takes visibly longer for openresty version: ~5sec vs ~25sec. I'd consider it a regression on x86, but for arm64 functional (if a bit slow app) is better than no app.

Just out of curiosity I tried to isolate the logic from the script in an isolated benchmark and both LuaJIT implementations showed the same result. So it's probably multi-threaded code that causes a slow-down.