[
https://issues.apache.org/jira/browse/CASSANDRA-18871?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jacek Lewandowski updated CASSANDRA-18871:
------------------------------------------
Description:
1. CASSANDRA-12586 introduced {{build-jmh}} task which builds uber jar for JMH
benchmarks which is then not used with {{ant microbench}} task. It is used
though by the {{test/bin/jmh}} script.
In fact, I have no idea why we should use uber jar if JMH can perfectly run
with a regular classpath. Maybe that had something to do with older JMH version
which was used that time. Building uber jars takes time and is annoying. Since
it seems to be redundant anyway, I'm going to remove it and fix
{{test/bin/jmh}} to use a regular classpath.
2. I'll add support for async profiler in benchmarks. That is, the
{{microbench}} target automatically fetches the async profiler binaries and
adds the necessary args for JMH ({{-prof asyc...}} in particular) whenever we
run {{microbench-with-profiler}} task. If no additional properties are provided
some default options will be applied (defined in the script, can be
negotiated). Otherwise, whatever is passed to the {{profiler.opts}} property
will be added as profiler options after library path and target directory
definition.
3. If someone wants to see any additional improvements, please comment on the
ticket.
was:
1. CASSANDRA-12586 introduced {{build-jmh}} task which builds uber jar for JMH
benchmarks which is then not used with {{ant microbench}} task. It is used
though by the {{test/bin/jmh}} script.
In fact, I have no idea why we should use uber jar if JMH can perfectly run
with a regular classpath. Maybe that had something to do with older JMH version
which was used that time. Building uber jars takes time and is annoying. Since
it seems to be redundant anyway, I'm going to remove it and fix
{{test/bin/jmh}} to use a regular classpath.
2. I'll add support for async profiler in benchmarks. That is, the
{{microbench}} target automatically fetches the async profiler binaries and
adds the necessary args for JMH ({{-prof asyc...}} in particular) whenever
{{-Dtest.profiler=...}} is specified. If that property is fed with the empty
value, some default options will be applied (defined in the script, can be
negotiated). Otherwise, whatever is passed to the {{test.profiler}} property
will be added as profiler options.
3. If someone wants to see any additional improvements, please comment on the
ticket.
> JMH benchmark improvements
> --------------------------
>
> Key: CASSANDRA-18871
> URL: https://issues.apache.org/jira/browse/CASSANDRA-18871
> Project: Cassandra
> Issue Type: Improvement
> Components: Build, Legacy/Tools
> Reporter: Jacek Lewandowski
> Assignee: Jacek Lewandowski
> Priority: Normal
> Fix For: 4.0.x, 4.1.x, 5.0.x, 5.1
>
>
> 1. CASSANDRA-12586 introduced {{build-jmh}} task which builds uber jar for
> JMH benchmarks which is then not used with {{ant microbench}} task. It is
> used though by the {{test/bin/jmh}} script.
> In fact, I have no idea why we should use uber jar if JMH can perfectly run
> with a regular classpath. Maybe that had something to do with older JMH
> version which was used that time. Building uber jars takes time and is
> annoying. Since it seems to be redundant anyway, I'm going to remove it and
> fix {{test/bin/jmh}} to use a regular classpath.
> 2. I'll add support for async profiler in benchmarks. That is, the
> {{microbench}} target automatically fetches the async profiler binaries and
> adds the necessary args for JMH ({{-prof asyc...}} in particular) whenever we
> run {{microbench-with-profiler}} task. If no additional properties are
> provided some default options will be applied (defined in the script, can be
> negotiated). Otherwise, whatever is passed to the {{profiler.opts}} property
> will be added as profiler options after library path and target directory
> definition.
> 3. If someone wants to see any additional improvements, please comment on the
> ticket.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]