You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@lucene.apache.org by GitBox <gi...@apache.org> on 2021/10/07 07:03:44 UTC
[GitHub] [lucene] markrmiller opened a new pull request #365: GameGenie:1990JMH
markrmiller opened a new pull request #365:
URL: https://github.com/apache/lucene/pull/365
This is not necessarily intended to be finished or merged, though a little more at least will be done. Might be interesting to play with. Needs some handle bars first likely
- [ ] handle bars.
Level up for the bench-util. :cherries:
Simulate HighHigh left-right-up-b. Nrt drop kick reload with a LowMidHigh knee. #
Perfasm, Async Profiler, GC, Perf, JFR FTW. Warm up, lay back, blackhole. Everything needed to bounce the turtle a thousand times and retire with the gold.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] markrmiller commented on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
markrmiller commented on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-939323009
@rmuir problems on the first try! Oh no!
I'll try and figure it out. I have pushed the latest, hopefully it was a transient glitch - I'll try and duplicate it.
Currently I just tried to ssh into a fresh machine and run the above snippet and that went okay.
```shell
$ /tmp/jmh git clone -b JMH --single-branch https://github.com/markrmiller/lucene.git ✔ markmiller@cm4
cd lucene/lucene/jmh
./jmh.sh FuzzyQuery
Cloning into 'lucene'...
remote: Enumerating objects: 731553, done.
remote: Counting objects: 100% (3528/3528), done.
remote: Compressing objects: 100% (1463/1463), done.
remote: Total 731553 (delta 1370), reused 3266 (delta 1302), pack-reused 728025
Receiving objects: 100% (731553/731553), 289.00 MiB | 13.87 MiB/s, done.
Resolving deltas: 100% (439542/439542), done.
Updating files: 100% (6456/6456), done.
Getting classpath from gradle...
Downloading gradle-wrapper.jar from https://github.com/gradle/gradle/raw/v7.2.0/gradle/wrapper/gradle-wrapper.jar
Note: Some input files use or override a deprecated API.
...
6 warnings
gradle build done
running JMH with args: FuzzyQuery
# JMH version: 1.32
# VM version: JDK 11.0.12, OpenJDK 64-Bit Server VM, 11.0.12+7
# VM invoker: /usr/lib/jvm/java-11-openjdk/bin/java
# VM options: -Djmh.shutdownTimeout=5 -Djmh.shutdownTimeout.step=3 -Djava.security.egd=file:/dev/./urandom -XX:-UseBiasedLocking -XX:+UnlockDiagnosticVMOptions -XX:+DebugNonSafepoints --add-opens=java.base/java.lang.reflect=ALL-UNNAMED -XX:+UseG1GC -XX:+ParallelRefProcEnabled
# Blackhole mode: full + dont-inline hint
# Warmup: 10 iterations, 15 s each
# Measurement: 10 iterations, 15 s each
# Timeout: 600 s per iteration
# Threads: 1 thread, will synchronize iterations
# Benchmark mode: Throughput, ops/time
# Benchmark: org.apache.lucene.jmh.benchmarks.search.FuzzyQuery.fuzzySearch
# Parameters: (editDistance = 1, numDocs = 1000000, prefix = 0)
# Run progress: 0.00% complete, ETA 01:00:00
# Fork: 1 of 1
# Warmup Iteration 1:
2021-10-09T15:49:06.964770Z --> benchmark random seed: 6624420638116043983
2021-10-09T15:49:07.001947Z --> query index via FuzzyQuery with varying edit distance and constant prefix size
2021-10-09T15:49:07.026621Z --> benchmark random seed: 6624420638116043983
2021-10-09T15:49:08.145947Z --> benchmark random seed: 6624420638116043983
2021-10-09T15:49:08.243759Z --> random.counts output: false
2021-10-09T15:49:08.286803Z --> indexing data for benchmark...
2021-10-09T15:49:09.980927Z --> done adding docs, waiting for executor to terminate...
2021-10-09T15:49:18.632313Z --> 54411 docs at 5267.562170700696 doc/s
```
That is two manjaro / arch environments it appears to be working for.
I also have a workflow here running it in a fresh Ubuntu environment: https://github.com/OSSfoundry/jmh-lucene/actions
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] markrmiller commented on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
markrmiller commented on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-939453036
Yeah that may be the way to go after all. I've always rejected it I guess from mostly an impractical snobbish micro reaction to the idea.
But maybe the less likely to surprise quality wins.
It was pretty surprising this issue hid out for so long. I've run it on 5 towers, a mini desktop box, a couple raspberry pi's, across Ubuntu, Arch/Manjaro, x86, arm, bash, zsh, a couple others have ran it. Shell scripts ...
Until now that was down to only bothering me around non functional nits.
There is one more functional nit left Id love to lose. Profilers can take options like:
-prof async:alloc;output=flamegraph
We have to escape those semi colons or risk incorrect parsing if the cmd line. That's annoying. Kafka uses this script approach as well, (but with an Uber jar), and they just document it. I think it's difficult to deal with, but I'd love to escape that.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] markrmiller commented on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
markrmiller commented on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-941999570
Yeah, unrelated to anything but the water cooler, another branch makes the
most sense, but I had unusual alterior motives to start using an
organization for a few things.
* my personal repo is a bit of a mess of 10 years of random crap with repos
full of random branches and what not.
* it's a pain to easily just clean up because it's unclear what has no
value and what I might want around and would take some time to make good
progress
I'd like to transition to a more clean, organized space.
An organization let's me jump start a bit to a space like that and slowly
work out the personal space.
That likely would not have been enough to get me to do this alone, but I
also ran into a feature I wanted to trial a bit that I could not. GitHub's
codespaces requires an org unless you got into the Beta for now. I've tried
hosting code-server locally which is cool, but don't like running services
with external access, so perhaps giving codespaces a test tipped me over.
You can turn your personal account into an org, but you have to lose
everything or something.
Mark
On Tue, Oct 12, 2021 at 3:45 AM Uwe Schindler ***@***.***>
wrote:
> I only recently learned that while Apache has unlimited action minutes,
> they do have limited throughput for the whole organization and I don't want
> to eat them here.
>
> I learned about this, too. A simpler trick for this is to use 2 branches
> in your markmiller repo. When I prepare pull requests, I also do this
> often. Start in a branch with some random internal name. Before I open the
> pull request, I create a new branch named after the Lucene issue number and
> create the pull request. Theoretically you can use your first branch for
> further development and just merge into the official
> Lucene-issue-number-branch.
>
> —
> You are receiving this because you authored the thread.
> Reply to this email directly, view it on GitHub
> <https://github.com/apache/lucene/pull/365#issuecomment-940798656>, or
> unsubscribe
> <https://github.com/notifications/unsubscribe-auth/AADNSFD2ZHFVTO2OFAJHWYTUGPYRXANCNFSM5FQRHPMA>
> .
>
--
- MRM
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] markrmiller edited a comment on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
markrmiller edited a comment on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-937821168
### Built in Profilers
You can see which are available to you and properly configured via ` ./jmh.sh -lprof`
- Linux perf c2c profiler (shared C2C/HITM analysis. Allows you to track down the cacheline contentions)
- DTrace profile provider + PrintAssembly Profiler (OSX)
- async-profiler profiler provider (flamegraphs, jfr output)
- Linux perf + PrintAssembly Profiler (perfasm)
- Simple and naive Java stack profiler
- Linux perf Statistics
- Linux perf statistics, normalized by operation count
- Windows xperf + PrintAssembly Profiler
- Pauses profiler
- JIT compiler profiling via standard MBeans
- Classloader profiling via standard MBeans
- GC profiling via standard MBeans
- Safepoints profiler
- Java Flight Recorder profiler
### New Profilers can be plugged in.
See https://github.com/nicoulaj/jmh-utils/tree/master/jmh-profilers for examples of:
- flight-recorder
- heapaudit
- honest-profiler
- jhiccup
- solaris-studio
- yourkit
Here you might find the following profiler interesting https://github.com/cache2k/cache2k-benchmark/tree/master/jmh-suite/src/main/java/org/cache2k/benchmark/jmh
- ForcedGcMemoryProfiler
### I like to sometimes dump heaps and gc logs and hotspot logs from benchmarks. If you do too, you might find the following interesting.
- https://github.com/mgm3746/garbagecat (cmd line gc log analysis/reccomendation tool)
- https://www.eclipse.org/mat/ (optionally cmd line)
- JOverflow from https://www.oracle.com/java/technologies/jdk-mission-control.html (great GUI option, and if one digs and pulls into the depths, great hidden cmd line option)
- https://jxray.com/ (cmd line heap dump / reccomendation tool)
- https://github.com/AdoptOpenJDK/jitwatch (Log analyser and visualiser for the HotSpot JIT compiler.)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] markrmiller commented on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
markrmiller commented on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-937514463
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] markrmiller commented on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
markrmiller commented on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-939394963
On Sat, Oct 9, 2021 at 5:30 PM Robert Muir ***@***.***> wrote:
> Everything works for me if we add --console plain to the echoCp line,
> then it won't add all this terminal-escaped nonsense:
>
> --- a/lucene/jmh/jmh.sh
> +++ b/lucene/jmh/jmh.sh
> @@ -36,7 +36,7 @@ else
> gradleCmd="${gradlew_dir}/gradlew"
> $gradleCmd -q -p ../../ jar
> echo "gradle build done"
> - classpath=$($gradleCmd -q echoCp)
> + classpath=$($gradleCmd -q --console plain echoCp)
> fi
>
> # shellcheck disable=SC2145
>
> —
> You are receiving this because you authored the thread.
> Reply to this email directly, view it on GitHub
> <https://github.com/apache/lucene/pull/365#issuecomment-939370346>, or
> unsubscribe
> <https://github.com/notifications/unsubscribe-auth/AADNSFGOKOD5ZVVM4RBCJ6LUGC66PANCNFSM5FQRHPMA>
> .
>
Sorry about that, that silly classpath pull has run in at least like 10
environments, which honestly surprises me, I think I even had that in way
back in the start due to trouble and know I’ve usually had to do it for
scripts with Gradle in the past, so should have had it in there regardless.
That darn classpath pull is the main little part that still annoys me in
terms of a more pure jmh experience. There are some little things I can do
to make it a little better still I think at least.
I started looking at the Gradle plug-in for jmh, and that just really
turned me off. It cost me a lot more to get something reasonable setup, but
I prefer Gradle as out of the picture as possible here, and with these
projects, I am not a fan of the typical jmh Uber fat jar approach. Too
brittle, potential irrelevant headaches, slow, unfriendly. With this
approach we at least get some easy universal configuration control and
standard build time update/run iteration times. It’s also simple to run via
IntelliJ with little extra fuss and I like that when starting a benchmark.
The classpath gather weak link bothers me though and now even more that you
hit this. I’m going to think about that a little, at least doge it on the
informational calls that don’t need it like help and lists.
Mark
--
- Mark
http://about.me/markrmiller
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] markrmiller commented on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
markrmiller commented on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-939326651
That's the worst! I hate when that happens :)
I've tried on a fresh machine and I have a workflow running (
https://github.com/OSSfoundry/jmh-lucene/actions/runs/1323921527) and I'm
hoping maybe that was catching a bad state somehow, but I'm trying to dig
into what else could be doing on in some specific env or something.
On Sat, Oct 9, 2021 at 11:10 AM Robert Muir ***@***.***>
wrote:
> i tried it out, some kind of META-INF problem hit me (openjdk 16.0.2)
>
> think:jmh[JMH]$ ./jmh.sh FuzzyQuery
> Getting classpath from gradle...
> Downloading gradle-wrapper.jar from https://github.com/gradle/gradle/raw/v7.2.0/gradle/wrapper/gradle-wrapper.jar
> Note: Some input files use or override a deprecated API.
> Note: Recompile with -Xlint:deprecation for details.
> Note: Some input files use or override a deprecated API.
> Note: Recompile with -Xlint:deprecation for details.
> Note: /home/rmuir/workspace/lucene-test/lucene/lucene/queries/src/java/org/apache/lucene/queries/payloads/PayloadMatcherFactory.java uses or overrides a deprecated API.
> Note: Recompile with -Xlint:deprecation for details.
> Note: Some input files use or override a deprecated API.
> Note: Recompile with -Xlint:deprecation for details.
> Note: {0} uses or overrides a deprecated API.
> Note: Recompile with -Xlint:deprecation for details.
> Note: Some input files use or override a deprecated API.
> Note: Recompile with -Xlint:deprecation for details.
> Note: /home/rmuir/workspace/lucene-test/lucene/lucene/misc/src/java/org/apache/lucene/misc/util/fst/UpToTwoPositiveIntOutputs.java uses or overrides a deprecated API.
> Note: Recompile with -Xlint:deprecation for details.
> Note: Some input files use or override a deprecated API.
> Note: Recompile with -Xlint:deprecation for details.
> gradle build done
> running JMH with args: FuzzyQuery
> Exception in thread "main" java.lang.RuntimeException: ERROR: Unable to find the resource: /META-INF/BenchmarkList
> at org.openjdk.jmh.runner.AbstractResourceReader.getReaders(AbstractResourceReader.java:98)
> at org.openjdk.jmh.runner.BenchmarkList.find(BenchmarkList.java:124)
> at org.openjdk.jmh.runner.Runner.internalRun(Runner.java:253)
> at org.openjdk.jmh.runner.Runner.run(Runner.java:209)
> at org.openjdk.jmh.Main.main(Main.java:71)
>
> I printed the classpath computed by the shellscript in case it helps.
> There's no META-INF/ in the lucene/lucene/jmh/build/resources/main?
> Instead build puts it in
> lucene/lucene/jmh/build/classes/java/main/META-INF/BenchmarkList, which
> is in the classpath, but for some reason doesn't get picked up for me
>
> /home/rmuir/workspace/lucene-test/lucene/lucene/jmh/build/classes/java/main:/home/rmuir/workspace/lucene-test/lucene/lucene/jmh/build/resources/main:/home/rmuir/workspace/lucene-test/lucene/lucene/test-framework/build/libs/lucene-test-framework-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/suggest/build/libs/lucene-suggest-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/analysis/kuromoji/build/libs/lucene-analysis-kuromoji-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/analysis/icu/build/libs/lucene-analysis-icu-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/analysis/common/build/libs/lucene-analysis-common-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/facet/build/libs/lucene-facet-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/highlighter/build/libs/lucene-highlighter-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/queryparser/build/libs/lu
cene-queryparser-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/grouping/build/libs/lucene-grouping-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/sandbox/build/libs/lucene-sandbox-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/queries/build/libs/lucene-queries-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/spatial-extras/build/libs/lucene-spatial-extras-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/misc/build/libs/lucene-misc-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/join/build/libs/lucene-join-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/codecs/build/libs/lucene-codecs-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/memory/build/libs/lucene-memory-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/spatial3d/build/libs/lucene-spatial3d-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/
core/build/libs/lucene-core-9.0.0-SNAPSHOT.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/org.locationtech.spatial4j/spatial4j/0.7/faa8ba85d503da4ab872d17ba8c00da0098ab2f2/spatial4j-0.7.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/org.apache.commons/commons-compress/1.19/7e65777fb451ddab6a9c054beb879e521b7eab78/commons-compress-1.19.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/com.ibm.icu/icu4j/68.2/76893e6000401ace133a65262254be0ebe556d46/icu4j-68.2.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/net.sourceforge.nekohtml/nekohtml/1.9.17/39a870b0ea4cb0d2a3015c1ab569d17d83122d55/nekohtml-1.9.17.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/com.eaio.uuid/uuid/3.2/77ba5105d949cd589aff75400d9f7d3676691a46/uuid-3.2.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/org.hdrhistogram/HdrHistogram/2.1.12/6eb7552156e0d517ae80cc2247be1427c8d90452/HdrHistogram-2.1.12.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/org.openjdk.jmh/jmh-core/1.32/9a8b69ea08118fd4e5d30a1
52d37b7087ee4a720/jmh-core-1.32.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/com.carrotsearch.randomizedtesting/randomizedtesting-runner/2.7.6/17894fe98cce53f9bd994044d9bea7bd7801cafa/randomizedtesting-runner-2.7.6.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/junit/junit/4.13.1/cdd00374f1fee76b11e2a9d127405aa3f6be5b6a/junit-4.13.1.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest/2.2/1820c0968dba3a11a1b30669bb1f01978a91dedc/hamcrest-2.2.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/com.carrotsearch/hppc/0.9.0/fcc952fb6d378266b943bef9f15e67a4d45cfa88/hppc-0.9.0.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/io.sgr/s2-geometry-library-java/1.0.0/f95b25589b40b5b0965deb592445073ff3efa299/s2-geometry-library-java-1.0.0.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/net.sf.jop
>
> —
> You are receiving this because you authored the thread.
> Reply to this email directly, view it on GitHub
> <https://github.com/apache/lucene/pull/365#issuecomment-939320940>, or
> unsubscribe
> <https://github.com/notifications/unsubscribe-auth/AADNSFEA52BHS4Q66MWKCRLUGBSQLANCNFSM5FQRHPMA>
> .
>
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] dweiss commented on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
dweiss commented on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-939416674
Let that echoCp task accept a command line argument (project property or proper command-line argument[1]) that is the file name to write the classpath to - no surprises then.
[1] https://docs.gradle.org/current/userguide/custom_tasks.html#sec:declaring_and_using_command_line_options
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] markrmiller commented on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
markrmiller commented on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-937960859
The **index**, **line doc file**, and **tasks file** can be generated via the _lucene-util_ benchmark. The only current task is a **SearchPerf** task that roughly emulates a _std lucene-util_ benchmark and consumes a compatible **index**, **line doc file** and **tasks file**.
You can of course create any kind of the lucene jmh benchmark - **jmh** is a fully integrated module. But the only thing here to play with is a **SearchPerf**.
It will, by default look for those 3 files in:
> "lucene/jmh/work/index"
> "lucene/jmh/work/lines.txt"
> "lucene/jmh/work/tasks.txt"
You can override with:
`lucene/lucene/jmh ./jmh.sh SearchPerf.orHighHigh -jvmArgs -Dindex=/mnt/s1/wikimedium5m/index -jvmArgs -Dldfile=/mnt/s1/lucene-bench/data/enwiki-20120502-lines-1k.txt -jvmArgs -DtasksFile=/mnt/s1/wikimedium5m/wikimedium500.tasks`
You can adjust or vary all the same parameters as lucene-util (via necessary shorter param names) via **jmh's** -p parameter control:
`lucene/lucene/jmh ./jmh.sh SearchPerf -p nrt=true,false -p analyzer=StandardAnalyzer,WhitespaceAnalyzer -p postfmt=Lucene90`
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] uschindler commented on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
uschindler commented on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-940798656
> I only recently learned that while Apache has unlimited action minutes, they do have limited throughput for the whole organization and I don't want to eat them here.
I learned about this, too. A simpler trick for this is to use 2 branches in your markmiller repo. When I prepare pull requests, I also do this often. Start in a branch with some random internal name. Before I open the pull request, I create a new branch named after the Lucene issue number and create the pull request. Theoretically you can use your first branch for further development and just merge into the official Lucene-issue-number-branch.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] markrmiller commented on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
markrmiller commented on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-937821168
### Built in Profilers
- Linux perf c2c profiler
- DTrace profile provider + PrintAssembly Profiler (OSX)
- async-profiler profiler provider (flamegraphs, jfr output)
- Linux perf + PrintAssembly Profiler (perfasm)
- Simple and naive Java stack profiler
- Linux perf Statistics
- Linux perf statistics, normalized by operation count
- Windows xperf + PrintAssembly Profiler
- Pauses profiler
- JIT compiler profiling via standard MBeans
- Classloader profiling via standard MBeans
- GC profiling via standard MBeans
- Safepoints profiler
- Java Flight Recorder profiler
### New Profilers can be plugged in.
See https://github.com/nicoulaj/jmh-utils/tree/master/jmh-profilers for examples of:
- flight-recorder
- heapaudit
- honest-profiler
- jhiccup
- solaris-studio
- yourkit
Here you might find the following profiler interesting https://github.com/cache2k/cache2k-benchmark/tree/master/jmh-suite/src/main/java/org/cache2k/benchmark/jmh
- ForcedGcMemoryProfiler
### I like to sometimes dump heaps and gc logs and hotspot logs from benchmarks. If you do too, you might find the following interesting.
- https://github.com/mgm3746/garbagecat (cmd line gc log analysis/reccomendation tool)
- https://www.eclipse.org/mat/ (optionally cmd line)
- JOverflow from https://www.oracle.com/java/technologies/jdk-mission-control.html (great GUI option, and if one digs and pulls into the depths, great hidden cmd line option)
- https://jxray.com/ (cmd line heap dump / reccomendation tool)
- https://github.com/AdoptOpenJDK/jitwatch (Log analyser and visualiser for the HotSpot JIT compiler.)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] markrmiller edited a comment on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
markrmiller edited a comment on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-939167876
>
> git clone -b JMH --single-branch https://github.com/markrmiller/lucene.git
> cd lucene/lucene/jmh
> ./jmh.sh FuzzyQuery
>
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] rmuir commented on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
rmuir commented on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-939320940
i tried it out, some kind of META-INF problem hit me (openjdk 16.0.2)
```
think:jmh[JMH]$ ./jmh.sh FuzzyQuery
Getting classpath from gradle...
Downloading gradle-wrapper.jar from https://github.com/gradle/gradle/raw/v7.2.0/gradle/wrapper/gradle-wrapper.jar
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /home/rmuir/workspace/lucene-test/lucene/lucene/queries/src/java/org/apache/lucene/queries/payloads/PayloadMatcherFactory.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: {0} uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /home/rmuir/workspace/lucene-test/lucene/lucene/misc/src/java/org/apache/lucene/misc/util/fst/UpToTwoPositiveIntOutputs.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
gradle build done
running JMH with args: FuzzyQuery
Exception in thread "main" java.lang.RuntimeException: ERROR: Unable to find the resource: /META-INF/BenchmarkList
at org.openjdk.jmh.runner.AbstractResourceReader.getReaders(AbstractResourceReader.java:98)
at org.openjdk.jmh.runner.BenchmarkList.find(BenchmarkList.java:124)
at org.openjdk.jmh.runner.Runner.internalRun(Runner.java:253)
at org.openjdk.jmh.runner.Runner.run(Runner.java:209)
at org.openjdk.jmh.Main.main(Main.java:71)
```
I printed the classpath computed by the shellscript in case it helps. There's no META-INF/ in the `lucene/lucene/jmh/build/resources/main`? Instead build puts it in `lucene/lucene/jmh/build/classes/java/main/META-INF/BenchmarkList`, which is in the classpath, but for some reason doesn't get picked up for me
```
/home/rmuir/workspace/lucene-test/lucene/lucene/jmh/build/classes/java/main:/home/rmuir/workspace/lucene-test/lucene/lucene/jmh/build/resources/main:/home/rmuir/workspace/lucene-test/lucene/lucene/test-framework/build/libs/lucene-test-framework-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/suggest/build/libs/lucene-suggest-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/analysis/kuromoji/build/libs/lucene-analysis-kuromoji-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/analysis/icu/build/libs/lucene-analysis-icu-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/analysis/common/build/libs/lucene-analysis-common-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/facet/build/libs/lucene-facet-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/highlighter/build/libs/lucene-highlighter-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/queryparser/build/libs/luce
ne-queryparser-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/grouping/build/libs/lucene-grouping-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/sandbox/build/libs/lucene-sandbox-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/queries/build/libs/lucene-queries-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/spatial-extras/build/libs/lucene-spatial-extras-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/misc/build/libs/lucene-misc-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/join/build/libs/lucene-join-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/codecs/build/libs/lucene-codecs-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/memory/build/libs/lucene-memory-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/spatial3d/build/libs/lucene-spatial3d-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/co
re/build/libs/lucene-core-9.0.0-SNAPSHOT.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/org.locationtech.spatial4j/spatial4j/0.7/faa8ba85d503da4ab872d17ba8c00da0098ab2f2/spatial4j-0.7.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/org.apache.commons/commons-compress/1.19/7e65777fb451ddab6a9c054beb879e521b7eab78/commons-compress-1.19.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/com.ibm.icu/icu4j/68.2/76893e6000401ace133a65262254be0ebe556d46/icu4j-68.2.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/net.sourceforge.nekohtml/nekohtml/1.9.17/39a870b0ea4cb0d2a3015c1ab569d17d83122d55/nekohtml-1.9.17.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/com.eaio.uuid/uuid/3.2/77ba5105d949cd589aff75400d9f7d3676691a46/uuid-3.2.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/org.hdrhistogram/HdrHistogram/2.1.12/6eb7552156e0d517ae80cc2247be1427c8d90452/HdrHistogram-2.1.12.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/org.openjdk.jmh/jmh-core/1.32/9a8b69ea08118fd4e5d30a152
d37b7087ee4a720/jmh-core-1.32.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/com.carrotsearch.randomizedtesting/randomizedtesting-runner/2.7.6/17894fe98cce53f9bd994044d9bea7bd7801cafa/randomizedtesting-runner-2.7.6.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/junit/junit/4.13.1/cdd00374f1fee76b11e2a9d127405aa3f6be5b6a/junit-4.13.1.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest/2.2/1820c0968dba3a11a1b30669bb1f01978a91dedc/hamcrest-2.2.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/com.carrotsearch/hppc/0.9.0/fcc952fb6d378266b943bef9f15e67a4d45cfa88/hppc-0.9.0.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/io.sgr/s2-geometry-library-java/1.0.0/f95b25589b40b5b0965deb592445073ff3efa299/s2-geometry-library-java-1.0.0.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/net.sf.jop
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] markrmiller commented on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
markrmiller commented on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-941999570
Yeah, unrelated to anything but the water cooler, another branch makes the
most sense, but I had unusual alterior motives to start using an
organization for a few things.
* my personal repo is a bit of a mess of 10 years of random crap with repos
full of random branches and what not.
* it's a pain to easily just clean up because it's unclear what has no
value and what I might want around and would take some time to make good
progress
I'd like to transition to a more clean, organized space.
An organization let's me jump start a bit to a space like that and slowly
work out the personal space.
That likely would not have been enough to get me to do this alone, but I
also ran into a feature I wanted to trial a bit that I could not. GitHub's
codespaces requires an org unless you got into the Beta for now. I've tried
hosting code-server locally which is cool, but don't like running services
with external access, so perhaps giving codespaces a test tipped me over.
You can turn your personal account into an org, but you have to lose
everything or something.
Mark
On Tue, Oct 12, 2021 at 3:45 AM Uwe Schindler ***@***.***>
wrote:
> I only recently learned that while Apache has unlimited action minutes,
> they do have limited throughput for the whole organization and I don't want
> to eat them here.
>
> I learned about this, too. A simpler trick for this is to use 2 branches
> in your markmiller repo. When I prepare pull requests, I also do this
> often. Start in a branch with some random internal name. Before I open the
> pull request, I create a new branch named after the Lucene issue number and
> create the pull request. Theoretically you can use your first branch for
> further development and just merge into the official
> Lucene-issue-number-branch.
>
> —
> You are receiving this because you authored the thread.
> Reply to this email directly, view it on GitHub
> <https://github.com/apache/lucene/pull/365#issuecomment-940798656>, or
> unsubscribe
> <https://github.com/notifications/unsubscribe-auth/AADNSFD2ZHFVTO2OFAJHWYTUGPYRXANCNFSM5FQRHPMA>
> .
>
--
- MRM
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] markrmiller edited a comment on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
markrmiller edited a comment on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-937960859
The **index**, **line doc file**, and **tasks file** can be generated via the _lucene-util_ benchmark. The only current task is a **SearchPerf** task that roughly emulates a _std lucene-util_ benchmark and consumes a compatible **index**, **line doc file** and **tasks file**.
You can of course create any kind of the lucene jmh benchmark - **jmh** is a fully integrated module. But the only thing here to play with is a **SearchPerf**.
It will, by default look for those 3 files in:
> "lucene/jmh/work/index"
> "lucene/jmh/work/lines.txt"
> "lucene/jmh/work/tasks.txt"
You can override with:
> lucene/lucene/jmh ./jmh.sh SearchPerf.orHighHigh -jvmArgs -Dindex=/mnt/s1/wikimedium5m/index -jvmArgs -Dldfile=/mnt/s1/lucene-bench/data/enwiki-20120502-lines-1k.txt -jvmArgs -DtasksFile=/mnt/s1/wikimedium5m/wikimedium500.tasks
You can adjust or vary all the same parameters as lucene-util (via necessary shorter param names) via **jmh's** -p parameter control:
`lucene/lucene/jmh ./jmh.sh SearchPerf -p nrt=true,false -p analyzer=StandardAnalyzer,WhitespaceAnalyzer -p postfmt=Lucene90`
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] markrmiller commented on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
markrmiller commented on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-937514463
No frills type output possibilities.
`Result "org.apache.lucene.bench.search.SearchPerf.term":
1162.921 ±(99.9%) 215.504 ops/s [Average]
(min, avg, max) = (1101.281, 1162.921, 1231.049), stdev = 55.966
CI (99.9%): [947.416, 1378.425] (assumes normal distribution)
# Run complete. Total time: 00:23:29
REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on
why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial
experiments, perform baseline and negative tests that provide experimental control, make sure
the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts.
Do not assume the numbers tell you what you want them to tell.
Benchmark (analyzer) (cloneDocs) (commit) (defaultPostingsFormat) (dirImpl) (doConcurrentSearches) (doPKLookup) (doStoredLoads) (docsPerSecPerThread) (facets) (fieldName) (hiliteImpl) (idFieldPostingsFormat) (indexPath) (indexThreadCount) (lineDocsFile) (logFile) (mode) (nrt) (printHeap) (randomSeed) (recacheFilterDeletes) (reopenEverySec) (searchThreadCount) (similarity) (storeBody) (tasksFile) (topN) (tvsBody) (useCFS) (vectorFile) (verbose) (verifyCheckSum) Mode Cnt Score Error Units
SearchPerf.andHighMed StandardAnalyzer false multi Lucene90 MMapDirectory true false false 10 taxonomy body FastVectorHighlighter Lucene90 /mnt/d1/lucene-bench/indices/wikimedium5m.lucene_baseline.facets.taxonomy:Date.taxonomy:Month.taxonomy:DayOfYear.sortedset:Month.sortedset:DayOfYear.Lucene90.Lucene90.nd5M/index 1 /mnt/d1/lucene-bench/data/enwiki-20120502-lines-1k.txt search.log update true true 0 false 5 2 BM25Similarity false /mnt/d1/lucene-bench/data/wikimedium500.tasks 10 false false false false thrpt 5 338.716 ± 15.970 ops/s
SearchPerf.fuzzy1 StandardAnalyzer false multi Lucene90 MMapDirectory true false false 10 taxonomy body FastVectorHighlighter Lucene90 /mnt/d1/lucene-bench/indices/wikimedium5m.lucene_baseline.facets.taxonomy:Date.taxonomy:Month.taxonomy:DayOfYear.sortedset:Month.sortedset:DayOfYear.Lucene90.Lucene90.nd5M/index 1 /mnt/d1/lucene-bench/data/enwiki-20120502-lines-1k.txt search.log update true true 0 false 5 2 BM25Similarity false /mnt/d1/lucene-bench/data/wikimedium500.tasks 10 false false false false thrpt 5 97.270 ± 9.759 ops/s
SearchPerf.fuzzy2 StandardAnalyzer false multi Lucene90 MMapDirectory true false false 10 taxonomy body FastVectorHighlighter Lucene90 /mnt/d1/lucene-bench/indices/wikimedium5m.lucene_baseline.facets.taxonomy:Date.taxonomy:Month.taxonomy:DayOfYear.sortedset:Month.sortedset:DayOfYear.Lucene90.Lucene90.nd5M/index 1 /mnt/d1/lucene-bench/data/enwiki-20120502-lines-1k.txt search.log update true true 0 false 5 2 BM25Similarity false /mnt/d1/lucene-bench/data/wikimedium500.tasks 10 false false false false thrpt 5 47.543 ± 5.663 ops/s
SearchPerf.orHighHigh StandardAnalyzer false multi Lucene90 MMapDirectory true false false 10 taxonomy body FastVectorHighlighter Lucene90 /mnt/d1/lucene-bench/indices/wikimedium5m.lucene_baseline.facets.taxonomy:Date.taxonomy:Month.taxonomy:DayOfYear.sortedset:Month.sortedset:DayOfYear.Lucene90.Lucene90.nd5M/index 1 /mnt/d1/lucene-bench/data/enwiki-20120502-lines-1k.txt search.log update true true 0 false 5 2 BM25Similarity false /mnt/d1/lucene-bench/data/wikimedium500.tasks 10 false false false false thrpt 5 49.648 ± 4.934 ops/s
SearchPerf.orHighMed StandardAnalyzer false multi Lucene90 MMapDirectory true false false 10 taxonomy body FastVectorHighlighter Lucene90 /mnt/d1/lucene-bench/indices/wikimedium5m.lucene_baseline.facets.taxonomy:Date.taxonomy:Month.taxonomy:DayOfYear.sortedset:Month.sortedset:DayOfYear.Lucene90.Lucene90.nd5M/index 1 /mnt/d1/lucene-bench/data/enwiki-20120502-lines-1k.txt search.log update true true 0 false 5 2 BM25Similarity false /mnt/d1/lucene-bench/data/wikimedium500.tasks 10 false false false false thrpt 5 235.018 ± 14.977 ops/s
SearchPerf.prefix3 StandardAnalyzer false multi Lucene90 MMapDirectory true false false 10 taxonomy body FastVectorHighlighter Lucene90 /mnt/d1/lucene-bench/indices/wikimedium5m.lucene_baseline.facets.taxonomy:Date.taxonomy:Month.taxonomy:DayOfYear.sortedset:Month.sortedset:DayOfYear.Lucene90.Lucene90.nd5M/index 1 /mnt/d1/lucene-bench/data/enwiki-20120502-lines-1k.txt search.log update true true 0 false 5 2 BM25Similarity false /mnt/d1/lucene-bench/data/wikimedium500.tasks 10 false false false false thrpt 5 933.482 ± 181.382 ops/s
SearchPerf.respell StandardAnalyzer false multi Lucene90 MMapDirectory true false false 10 taxonomy body FastVectorHighlighter Lucene90 /mnt/d1/lucene-bench/indices/wikimedium5m.lucene_baseline.facets.taxonomy:Date.taxonomy:Month.taxonomy:DayOfYear.sortedset:Month.sortedset:DayOfYear.Lucene90.Lucene90.nd5M/index 1 /mnt/d1/lucene-bench/data/enwiki-20120502-lines-1k.txt search.log update true true 0 false 5 2 BM25Similarity false /mnt/d1/lucene-bench/data/wikimedium500.tasks 10 false false false false thrpt 5 82.381 ± 5.456 ops/s
SearchPerf.term StandardAnalyzer false multi Lucene90 MMapDirectory true false false 10 taxonomy body FastVectorHighlighter Lucene90 /mnt/d1/lucene-bench/indices/wikimedium5m.lucene_baseline.facets.taxonomy:Date.taxonomy:Month.taxonomy:DayOfYear.sortedset:Month.sortedset:DayOfYear.Lucene90.Lucene90.nd5M/index 1 /mnt/d1/lucene-bench/data/enwiki-20120502-lines-1k.txt search.log update true true 0 false 5 2 BM25Similarity false /mnt/d1/lucene-bench/data/wikimedium500.tasks 10 false false false false thrpt 5 1162.921 ± 215.504 ops/s
`
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] markrmiller edited a comment on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
markrmiller edited a comment on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-937821168
### Built in Profilers
You can see which are available to you and properly configured via ` ./jmh.sh -lprof`
- Linux perf c2c profiler (shared C2C/HITM analysis. Allows you to track down cache-line contentions)
- DTrace profile provider + PrintAssembly Profiler (OSX)
- async-profiler profiler provider (flamegraphs, jfr output)
- Linux perf + PrintAssembly Profiler (perfasm)
- Simple and naive Java stack profiler
- Linux perf Statistics
- Linux perf statistics, normalized by operation count
- Windows xperf + PrintAssembly Profiler
- Pauses profiler
- JIT compiler profiling via standard MBeans
- Classloader profiling via standard MBeans
- GC profiling via standard MBeans
- Safepoints profiler
- Java Flight Recorder profiler
### External Custom Profilers can be plugged in.
See https://github.com/nicoulaj/jmh-utils/tree/master/jmh-profilers for examples of:
- flight-recorder
- heapaudit
- honest-profiler
- jhiccup
- solaris-studio
- yourkit
Here you might find the following profiler interesting https://github.com/cache2k/cache2k-benchmark/tree/master/jmh-suite/src/main/java/org/cache2k/benchmark/jmh
- ForcedGcMemoryProfiler
### I like to sometimes dump heaps and gc logs and hotspot logs from benchmarks. If you do too, you might find the following interesting.
- https://github.com/mgm3746/garbagecat (cmd line gc log analysis/reccomendation tool)
- https://www.eclipse.org/mat/ (optionally cmd line)
- JOverflow from https://www.oracle.com/java/technologies/jdk-mission-control.html (great GUI option, and if one digs and pulls into the depths, great hidden cmd line option)
- https://jxray.com/ (cmd line heap dump / reccomendation tool)
- https://github.com/AdoptOpenJDK/jitwatch (Log analyser and visualiser for the HotSpot JIT compiler.)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] markrmiller edited a comment on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
markrmiller edited a comment on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-937821168
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] markrmiller commented on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
markrmiller commented on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-937613511
Now we can pull some good clean perfasm:
Result "org.apache.lucene.bench.search.SearchPerf.orHighHigh":
46.523 ±(99.9%) 2.531 ops/s [Average]
(min, avg, max) = (45.641, 46.523, 47.235), stdev = 0.657
CI (99.9%): [43.991, 49.054] (assumes normal distribution)
Secondary result "org.apache.lucene.bench.search.SearchPerf.orHighHigh:·asm":
PrintAssembly processed: 2415656 total address lines.
Perf output processed (skipped 89.475 seconds):
Column 1: cycles (510133 events)
Hottest code regions (>10.00% "cycles" events):
....[Hottest Region 1]..............................................................................
c2, level 4, org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect, version 6116 (637 bytes)
# parm0: rdx = int
# [sp+0x70] (sp of caller)
0x00007fd360d2b560: mov 0x8(%rsi),%r10d ; {no_reloc}
0x00007fd360d2b564: movabs $0x800000000,%r12
0x00007fd360d2b56e: add %r12,%r10
0x00007fd360d2b571: xor %r12,%r12
0x00007fd360d2b574: cmp %r10,%rax
0x00007fd360d2b577: jne 0x00007fd3588aa080 ; {runtime_call ic_miss_stub}
0x00007fd360d2b57d: data16 xchg %ax,%ax
[Verified Entry Point]
0.03% 0x00007fd360d2b580: mov %eax,-0x14000(%rsp)
0.03% 0x00007fd360d2b587: push %rbp
0.00% 0x00007fd360d2b588: sub $0x60,%rsp ;*synchronization entry
; - org.apache.lucene.index.SlowImpactsEnum::freq@-1 (line 97)
; - org.apache.lucene.search.TermScorer::score@38 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.00% 0x00007fd360d2b58c: mov %edx,0x8(%rsp)
0.01% 0x00007fd360d2b590: mov %rsi,0x20(%rsp)
0.03% 0x00007fd360d2b595: mov 0xc(%rsi),%r10d ;*invokevirtual getByte {reexecute=0 rethrow=0 return_oop=0}
; - org.apache.lucene.store.ByteBufferIndexInput::readByte@25 (line 299)
; - org.apache.lucene.store.ByteBufferIndexInput$MultiBufferImpl::readByte@8 (line 656)
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@9 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.03% 0x00007fd360d2b599: mov 0x8(%r12,%r10,8),%r8d ;*invokevirtual score {reexecute=0 rethrow=0 return_oop=0}
; - org.apache.lucene.search.WANDScorer::score@20 (line 525)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
; implicit exception: dispatches to 0x00007fd360d2cac8
0.14% 0x00007fd360d2b59e: lea (%r12,%r10,8),%r11
0.00% 0x00007fd360d2b5a2: cmp $0x255b48,%r8d ; {metadata('org/apache/lucene/search/WANDScorer')}
0.00% 0x00007fd360d2b5a9: jne 0x00007fd360d2bb14
0x00007fd360d2b5af: mov %r11,0x10(%rsp)
0.00% 0x00007fd360d2b5b4: mov 0x38(%r11),%r10d
0.03% 0x00007fd360d2b5b8: dec %r10d
0.00% 0x00007fd360d2b5bb: mov %r10d,0xc(%rsp)
0.03% 0x00007fd360d2b5c0: test %r10d,%r10d
0.01% 0x00007fd360d2b5c3: jge 0x00007fd360d2bac0 ;*invokevirtual advanceExact {reexecute=0 rethrow=0 return_oop=0}
; - org.apache.lucene.search.LeafSimScorer::getNormValue@12 (line 45)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0x00007fd360d2b5c9: mov 0x10(%rsp),%r10
0.09% 0x00007fd360d2b5ce: movq $0x0,0x20(%r10) ;*invokevirtual ix {reexecute=0 rethrow=0 return_oop=0}
; - java.nio.HeapByteBuffer::get@10 (line 169)
; - org.apache.lucene.store.ByteBufferGuard::getByte@6 (line 118)
; - org.apache.lucene.store.ByteBufferIndexInput::readByte@25 (line 299)
; - org.apache.lucene.store.ByteBufferIndexInput$MultiBufferImpl::readByte@8 (line 656)
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@9 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.14% 0x00007fd360d2b5d6: mov 0x48(%r10),%r11d ;*iflt {reexecute=0 rethrow=0 return_oop=0}
; - java.nio.Buffer::checkIndex@1 (line 686)
; - java.nio.HeapByteBuffer::get@7 (line 169)
; - org.apache.lucene.store.ByteBufferGuard::getByte@6 (line 118)
; - org.apache.lucene.store.ByteBufferIndexInput$SingleBufferImpl::readByte@10 (line 557)
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@-1 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.02% 0x00007fd360d2b5da: movl $0x0,0x38(%r10) ;*invokevirtual ix {reexecute=0 rethrow=0 return_oop=0}
; - java.nio.HeapByteBuffer::get@10 (line 169)
; - org.apache.lucene.store.ByteBufferGuard::getByte@6 (line 118)
; - org.apache.lucene.store.ByteBufferIndexInput::readByte@25 (line 299)
; - org.apache.lucene.store.ByteBufferIndexInput$MultiBufferImpl::readByte@8 (line 656)
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@9 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.01% 0x00007fd360d2b5e2: test %r11d,%r11d
0.00% ╭ 0x00007fd360d2b5e5: jne 0x00007fd360d2b5f0 ;*iflt {reexecute=0 rethrow=0 return_oop=0}
│ ; - java.nio.Buffer::checkIndex@1 (line 686)
│ ; - java.nio.HeapByteBuffer::get@7 (line 169)
│ ; - org.apache.lucene.store.ByteBufferGuard::getByte@6 (line 118)
│ ; - org.apache.lucene.store.ByteBufferIndexInput$SingleBufferImpl::readByte@10 (line 557)
│ ; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@-1 (line 388)
│ ; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
│ ; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
│ ; - org.apache.lucene.search.TermScorer::score@42 (line 75)
│ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
│ 0x00007fd360d2b5e7: vxorps %xmm0,%xmm0,%xmm0
│╭ 0x00007fd360d2b5eb: jmpq 0x00007fd360d2b663
↘│ 0x00007fd360d2b5f0: lea (%r12,%r11,8),%rax ;*invokevirtual advanceExact {reexecute=0 rethrow=0 return_oop=0}
│ ; - org.apache.lucene.search.LeafSimScorer::getNormValue@12 (line 45)
│ ; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
│ ; - org.apache.lucene.search.TermScorer::score@42 (line 75)
│ ; - org.apache.lucene.search.WANDScorer::score@20 (line 525)
│ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
0.00% │ 0x00007fd360d2b5f4: vxorpd %xmm0,%xmm0,%xmm0 ;*invokevirtual getNormValue {reexecute=0 rethrow=0 return_oop=0}
│ ; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
│ ; - org.apache.lucene.search.TermScorer::score@42 (line 75)
│ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
│╭ 0x00007fd360d2b5f8: jmpq 0x00007fd360d2b711
││ 0x00007fd360d2b5fd: data16 xchg %ax,%ax ;*synchronization entry
││ ; - org.apache.lucene.search.TermScorer::score@-1 (line 74)
││ ; - org.apache.lucene.search.WANDScorer::score@20 (line 525)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
0.04% ││ 0x00007fd360d2b600: mov 0x10(%rdx),%r10 ;*getfield scorer {reexecute=0 rethrow=0 return_oop=0}
││ ; - org.apache.lucene.search.WANDScorer::score@17 (line 525)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
0.00% ││ 0x00007fd360d2b604: movsbl (%r10,%r8,1),%r11d ;*invokevirtual getByte {reexecute=0 rethrow=0 return_oop=0}
││ ; - jdk.internal.misc.Unsafe::getByte@3 (line 319)
││ ; - java.nio.DirectByteBuffer::get@12 (line 269)
││ ; - org.apache.lucene.store.ByteBufferGuard::getByte@-1 (line 117)
││ ; - org.apache.lucene.store.ByteBufferIndexInput::readByte@25 (line 299)
││ ; - org.apache.lucene.store.ByteBufferIndexInput$MultiBufferImpl::readByte@8 (line 656)
││ ; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@9 (line 388)
││ ; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
││ ; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
││ ; - org.apache.lucene.search.TermScorer::score@42 (line 75)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.28% ││ 0x00007fd360d2b609: mov 0x24(%r12,%r9,8),%r10d ;*invokevirtual getByte {reexecute=0 rethrow=0 return_oop=0}
││ ; - java.nio.DirectByteBuffer::get@12 (line 269)
││ ; - org.apache.lucene.store.ByteBufferGuard::getByte@-1 (line 117)
││ ; - org.apache.lucene.store.ByteBufferIndexInput$SingleBufferImpl::readByte@10 (line 557)
││ ; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@-1 (line 388)
││ ; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
││ ; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
││ ; - org.apache.lucene.search.TermScorer::score@42 (line 75)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
││ ; implicit exception: dispatches to 0x00007fd360d2ca18
0.04% ││ 0x00007fd360d2b60e: movzbl %r11b,%r11d ;*aaload {reexecute=0 rethrow=0 return_oop=0}
││ ; - org.apache.lucene.store.ByteBufferIndexInput::readByte@17 (line 299)
││ ; - org.apache.lucene.store.ByteBufferIndexInput$MultiBufferImpl::readByte@8 (line 656)
││ ; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@9 (line 388)
││ ; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
││ ; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
││ ; - org.apache.lucene.search.TermScorer::score@42 (line 75)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.01% ││ 0x00007fd360d2b612: mov 0xc(%r12,%r10,8),%r8d ; implicit exception: dispatches to 0x00007fd360d2ca2c
0.02% ││ 0x00007fd360d2b617: cmp %r8d,%r11d
0.07% ││ 0x00007fd360d2b61a: jae 0x00007fd360d2bf17 ;*invokevirtual freq {reexecute=0 rethrow=0 return_oop=0}
││ ; - org.apache.lucene.search.TermScorer::score@38 (line 75)
││ ; - org.apache.lucene.search.WANDScorer::score@20 (line 525)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
0.00% ││ 0x00007fd360d2b620: mov 0x108(%r15),%r8
0.00% ││ 0x00007fd360d2b627: mov 0x2c(%rax),%ecx ;*synchronization entry
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
0.00% ││ 0x00007fd360d2b62a: vmovss 0x1c(%r12,%r9,8),%xmm3 ;*ifnull {reexecute=0 rethrow=0 return_oop=0}
││ ; - org.apache.lucene.search.WANDScorer::score@12 (line 524)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
0.00% ││ 0x00007fd360d2b631: shl $0x3,%r10
0.01% ││ 0x00007fd360d2b635: vmulss 0x10(%r10,%r11,4),%xmm2,%xmm2
0.38% ││ 0x00007fd360d2b63c: vaddss -0x104(%rip),%xmm2,%xmm1 # 0x00007fd360d2b540
││ ; {section_word}
0.15% ││ 0x00007fd360d2b644: vdivss %xmm1,%xmm3,%xmm2
0.76% ││ 0x00007fd360d2b648: vsubss %xmm2,%xmm3,%xmm1
0.14% ││ 0x00007fd360d2b64c: vcvtss2sd %xmm1,%xmm1,%xmm1
0.22% ││ 0x00007fd360d2b650: vaddsd %xmm1,%xmm0,%xmm0 ; ImmutableOopMap{rcx=NarrowOop [32]=Oop }
││ ;*goto {reexecute=1 rethrow=0 return_oop=0}
││ ; - org.apache.lucene.search.WANDScorer::score@31 (line 524)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.33% ││ 0x00007fd360d2b654: test %eax,(%r8) ;*ifnull {reexecute=0 rethrow=0 return_oop=0}
││ ; - org.apache.lucene.search.WANDScorer::score@12 (line 524)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
││ ; {poll}
││ 0x00007fd360d2b657: test %ecx,%ecx
0.00% ││╭ 0x00007fd360d2b659: jne 0x00007fd360d2b70d ;*synchronization entry
│││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
0.00% │││ 0x00007fd360d2b65f: vcvtsd2ss %xmm0,%xmm0,%xmm0 ;*laload {reexecute=0 rethrow=0 return_oop=0}
│││ ; - org.apache.lucene.codecs.lucene90.Lucene90PostingsReader$BlockDocsEnum::freq@37 (line 415)
│││ ; - org.apache.lucene.index.SlowImpactsEnum::freq@4 (line 97)
│││ ; - org.apache.lucene.search.TermScorer::score@38 (line 75)
│││ ; - org.apache.lucene.search.WANDScorer::score@20 (line 525)
│││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
0.11% ↘││ 0x00007fd360d2b663: vmovss %xmm0,0x4(%rsp) ;*invokevirtual getByte {reexecute=0 rethrow=0 return_oop=0}
││ ; - org.apache.lucene.store.ByteBufferIndexInput::readByte@25 (line 299)
││ ; - org.apache.lucene.store.ByteBufferIndexInput$MultiBufferImpl::readByte@8 (line 656)
││ ; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@9 (line 388)
││ ; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
││ ; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
││ ; - org.apache.lucene.search.TermScorer::score@42 (line 75)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.03% ││ 0x00007fd360d2b669: mov 0x20(%rsp),%r10
││ 0x00007fd360d2b66e: mov 0x10(%r10),%r10d ;*invokevirtual docID {reexecute=0 rethrow=0 return_oop=0}
││ ; - org.apache.lucene.search.TermScorer::score@31 (line 75)
││ ; - org.apache.lucene.search.WANDScorer::score@20 (line 525)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
0.00% ││ 0x00007fd360d2b672: mov 0x24(%r12,%r10,8),%r8d ;*invokevirtual score {reexecute=0 rethrow=0 return_oop=0}
││ ; - org.apache.lucene.search.TermScorer::score@42 (line 75)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
││ ; implicit exception: dispatches to 0x00007fd360d2cad4
0.07% ││ 0x00007fd360d2b677: incl 0xc(%r12,%r10,8) ;*invokestatic reachabilityFence {reexecute=0 rethrow=0 return_oop=0}
││ ; - java.nio.DirectByteBuffer::get@17 (line 271)
││ ; - org.apache.lucene.store.ByteBufferGuard::getByte@-1 (line 117)
││ ; - org.apache.lucene.store.ByteBufferIndexInput::readByte@25 (line 299)
││ ; - org.apache.lucene.store.ByteBufferIndexInput$MultiBufferImpl::readByte@8 (line 656)
││ ; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@9 (line 388)
││ ; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
││ ; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
││ ; - org.apache.lucene.search.TermScorer::score@42 (line 75)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.15% ││ 0x00007fd360d2b67c: mov 0x8(%r12,%r8,8),%r11d ; implicit exception: dispatches to 0x00007fd360d2cae0
14.36% ││ 0x00007fd360d2b681: lea (%r12,%r8,8),%rsi ;*getfield chunkSizePower {reexecute=0 rethrow=0 return_oop=0}
││ ; - org.apache.lucene.store.ByteBufferIndexInput::readByte@2 (line 298)
││ ; - org.apache.lucene.store.ByteBufferIndexInput$MultiBufferImpl::readByte@8 (line 656)
││ ; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@9 (line 388)
││ ; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
││ ; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
││ ; - org.apache.lucene.search.TermScorer::score@42 (line 75)
││ ; - org.apache.lucene.search.WANDScorer::score@20 (line 525)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
0.04% ││ 0x00007fd360d2b685: cmp $0x23e838,%r11d ; {metadata('org/apache/lucene/search/HitsThresholdChecker$GlobalHitsThresholdChecker')}
0.00% ││ 0x00007fd360d2b68c: jne 0x00007fd360d2bc9a ;*invokevirtual freq {reexecute=0 rethrow=0 return_oop=0}
││ ; - org.apache.lucene.search.TermScorer::score@38 (line 75)
││ ; - org.apache.lucene.search.WANDScorer::score@20 (line 525)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
0.04% ││ 0x00007fd360d2b692: mov 0x10(%rsi),%r10d ;*invokevirtual docID {reexecute=0 rethrow=0 return_oop=0}
││ ; - org.apache.lucene.search.TermScorer::score@31 (line 75)
││ ; - org.apache.lucene.search.WANDScorer::score@20 (line 525)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
3.90% ││ 0x00007fd360d2b696: test %r10d,%r10d
0.01% ││ 0x00007fd360d2b699: je 0x00007fd360d2bfec ;*getfield scorer {reexecute=0 rethrow=0 return_oop=0}
││ ; - org.apache.lucene.search.WANDScorer::score@17 (line 525)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
0.00% ││ 0x00007fd360d2b69f: mov $0x1,%r11d
0.01% ││ 0x00007fd360d2b6a5: lock xadd %r11,0x10(%r12,%r10,8)
││ ;*aaload {reexecute=0 rethrow=0 return_oop=0}
││ ; - org.apache.lucene.store.ByteBufferIndexInput::readByte@17 (line 299)
││ ; - org.apache.lucene.store.ByteBufferIndexInput$MultiBufferImpl::readByte@8 (line 656)
││ ; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@9 (line 388)
││ ; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
││ ; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
││ ; - org.apache.lucene.search.TermScorer::score@42 (line 75)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
37.50% ││ 0x00007fd360d2b6ac: mov 0x20(%rsp),%r10
0.26% ││ 0x00007fd360d2b6b1: mov 0x10(%r10),%ebp ;*invokevirtual score {reexecute=0 rethrow=0 return_oop=0}
││ ; - org.apache.lucene.search.LeafSimScorer::score@10 (line 60)
││ ; - org.apache.lucene.search.TermScorer::score@42 (line 75)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.03% ││ 0x00007fd360d2b6b5: mov 0x28(%r12,%rbp,8),%r10d ;*invokevirtual freq {reexecute=0 rethrow=0 return_oop=0}
││ ; - org.apache.lucene.search.TermScorer::score@38 (line 75)
││ ; - org.apache.lucene.search.WANDScorer::score@20 (line 525)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
││ ; implicit exception: dispatches to 0x00007fd360d2caec
0.12% ││ 0x00007fd360d2b6ba: test %r10d,%r10d
││╭ 0x00007fd360d2b6bd: je 0x00007fd360d2b6cf ;*invokevirtual score {reexecute=0 rethrow=0 return_oop=0}
│││ ; - org.apache.lucene.search.LeafSimScorer::score@10 (line 60)
│││ ; - org.apache.lucene.search.TermScorer::score@42 (line 75)
│││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.01% │││ 0x00007fd360d2b6bf: movslq 0xc(%r12,%rbp,8),%r11
0.59% │││ 0x00007fd360d2b6c4: test %r11,0x10(%r12,%r10,8)
2.17% │││ 0x00007fd360d2b6c9: je 0x00007fd360d2bd45 ;*laload {reexecute=0 rethrow=0 return_oop=0}
│││ ; - org.apache.lucene.codecs.lucene90.Lucene90PostingsReader$BlockDocsEnum::freq@37 (line 415)
│││ ; - org.apache.lucene.index.SlowImpactsEnum::freq@4 (line 97)
│││ ; - org.apache.lucene.search.TermScorer::score@38 (line 75)
│││ ; - org.apache.lucene.search.WANDScorer::score@20 (line 525)
│││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
0.00% ││↘ 0x00007fd360d2b6cf: mov 0x20(%r12,%rbp,8),%r10d ;*invokevirtual docID {reexecute=0 rethrow=0 return_oop=0}
││ ; - org.apache.lucene.search.TermScorer::score@31 (line 75)
││ ; - org.apache.lucene.search.WANDScorer::score@20 (line 525)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
0.01% ││ 0x00007fd360d2b6d4: vmovss 0xc(%r12,%r10,8),%xmm1 ; implicit exception: dispatches to 0x00007fd360d2caf8
0.55% ││ 0x00007fd360d2b6db: lea (%r12,%rbp,8),%rsi ;*aaload {reexecute=0 rethrow=0 return_oop=0}
││ ; - org.apache.lucene.store.ByteBufferIndexInput::readByte@17 (line 299)
││ ; - org.apache.lucene.store.ByteBufferIndexInput$MultiBufferImpl::readByte@8 (line 656)
││ ; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@9 (line 388)
││ ; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
││ ; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
││ ; - org.apache.lucene.search.TermScorer::score@42 (line 75)
││ ; - org.apache.lucene.search.WANDScorer::score@20 (line 525)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
0.00% ││ 0x00007fd360d2b6df: vucomiss 0x4(%rsp),%xmm1
0.01% ││ 0x00007fd360d2b6e5: jb 0x00007fd360d2b8a0 ;*invokevirtual score {reexecute=0 rethrow=0 return_oop=0}
││ ; - org.apache.lucene.search.LeafSimScorer::score@10 (line 60)
││ ; - org.apache.lucene.search.TermScorer::score@42 (line 75)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.02% ││ 0x00007fd360d2b6eb: mov 0x14(%r12,%rbp,8),%r10d
0.01% ││ 0x00007fd360d2b6f0: cmp $0x85e03ea0,%r10d ; {oop(a 'org/apache/lucene/search/TotalHits$Relation'{0x000000042f01f500})}
0.03% ││ 0x00007fd360d2b6f7: je 0x00007fd360d2baa1 ;*invokevirtual docID {reexecute=0 rethrow=0 return_oop=0}
││ ; - org.apache.lucene.search.TermScorer::score@31 (line 75)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.00% ││ 0x00007fd360d2b6fd: add $0x60,%rsp
0.00% ││ 0x00007fd360d2b701: pop %rbp
0.00% ││ 0x00007fd360d2b702: mov 0x108(%r15),%r10
││ 0x00007fd360d2b709: test %eax,(%r10) ; {poll_return}
0.00% ││ 0x00007fd360d2b70c: retq ;*if_icmplt {reexecute=0 rethrow=0 return_oop=0}
││ ; - java.nio.Buffer::checkIndex@9 (line 686)
││ ; - java.nio.HeapByteBuffer::get@7 (line 169)
││ ; - org.apache.lucene.store.ByteBufferGuard::getByte@6 (line 118)
││ ; - org.apache.lucene.store.ByteBufferIndexInput$SingleBufferImpl::readByte@10 (line 557)
││ ; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@-1 (line 388)
││ ; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
││ ; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
││ ; - org.apache.lucene.search.TermScorer::score@42 (line 75)
││ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
│↘ 0x00007fd360d2b70d: lea (%r12,%rcx,8),%rax ;*synchronization entry
│ ; - org.apache.lucene.search.LeafSimScorer::getNormValue@-1 (line 44)
│ ; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
│ ; - org.apache.lucene.search.TermScorer::score@42 (line 75)
│ ; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.00% ↘ 0x00007fd360d2b711: mov 0x28(%rax),%r10d ;*if_icmplt {reexecute=0 rethrow=0 return_oop=0}
; - java.nio.Buffer::checkIndex@9 (line 686)
; - java.nio.HeapByteBuffer::get@7 (line 169)
; - org.apache.lucene.store.ByteBufferGuard::getByte@6 (line 118)
; - org.apache.lucene.store.ByteBufferIndexInput$SingleBufferImpl::readByte@10 (line 557)
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@-1 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.20% 0x00007fd360d2b715: mov 0x8(%r12,%r10,8),%r8d ; implicit exception: dispatches to 0x00007fd360d2c9dc
0.18% 0x00007fd360d2b71a: cmp $0x251118,%r8d ; {metadata('org/apache/lucene/search/TermScorer')}
0.00% 0x00007fd360d2b721: jne 0x00007fd360d2bf88 ;*baload {reexecute=0 rethrow=0 return_oop=0}
; - java.nio.HeapByteBuffer::get@13 (line 169)
; - org.apache.lucene.store.ByteBufferGuard::getByte@6 (line 118)
; - org.apache.lucene.store.ByteBufferIndexInput::readByte@25 (line 299)
; - org.apache.lucene.store.ByteBufferIndexInput$MultiBufferImpl::readByte@8 (line 656)
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@9 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0x00007fd360d2b727: lea (%r12,%r10,8),%r11 ;*ifne {reexecute=0 rethrow=0 return_oop=0}
; - org.apache.lucene.search.LeafSimScorer::getNormValue@19 (line 46)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.04% 0x00007fd360d2b72b: mov 0x10(%r11),%r8d ;*invokevirtual get {reexecute=0 rethrow=0 return_oop=0}
; - org.apache.lucene.store.ByteBufferGuard::getByte@6 (line 118)
; - org.apache.lucene.store.ByteBufferIndexInput$SingleBufferImpl::readByte@10 (line 557)
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@-1 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.04% 0x00007fd360d2b72f: mov 0x8(%r12,%r8,8),%ebx ;*invokevirtual docID {reexecute=0 rethrow=0 return_oop=0}
; - org.apache.lucene.search.TermScorer::score@31 (line 75)
; - org.apache.lucene.search.WANDScorer::score@20 (line 525)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
; implicit exception: dispatches to 0x00007fd360d2c9e8
0.18% 0x00007fd360d2b734: mov 0x1c(%r11),%r10d ;*baload {reexecute=0 rethrow=0 return_oop=0}
; - java.nio.HeapByteBuffer::get@13 (line 169)
; - org.apache.lucene.store.ByteBufferGuard::getByte@6 (line 118)
; - org.apache.lucene.store.ByteBufferIndexInput::readByte@25 (line 299)
; - org.apache.lucene.store.ByteBufferIndexInput$MultiBufferImpl::readByte@8 (line 656)
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@9 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0x00007fd360d2b738: lea (%r12,%r8,8),%rcx
0.00% 0x00007fd360d2b73c: cmp $0x1b9cc8,%ebx ; {metadata('org/apache/lucene/codecs/lucene90/Lucene90PostingsReader$BlockImpactsDocsEnum')}
0.01% 0x00007fd360d2b742: jne 0x00007fd360d2bcb5 ;*synchronization entry
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
0x00007fd360d2b748: mov %rcx,%r11 ;*invokevirtual advanceAllTail {reexecute=0 rethrow=0 return_oop=0}
; - org.apache.lucene.search.WANDScorer::score@1 (line 522)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
0.01% 0x00007fd360d2b74b: mov 0x28(%r11),%r11d
0.10% 0x00007fd360d2b74f: cmp $0x1b9cc8,%ebx ; {metadata('org/apache/lucene/codecs/lucene90/Lucene90PostingsReader$BlockImpactsDocsEnum')}
0.03% 0x00007fd360d2b755: jne 0x00007fd360d2bce7
0x00007fd360d2b75b: movzbl 0x31(%rcx),%r9d ;*invokevirtual longValue {reexecute=0 rethrow=0 return_oop=0}
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.03% 0x00007fd360d2b760: test %r9d,%r9d
0.00% 0x00007fd360d2b763: je 0x00007fd360d2bff8
0x00007fd360d2b769: mov 0xc(%rcx),%edi ;*invokevirtual getByte {reexecute=0 rethrow=0 return_oop=0}
; - org.apache.lucene.store.ByteBufferIndexInput::readByte@25 (line 299)
; - org.apache.lucene.store.ByteBufferIndexInput$MultiBufferImpl::readByte@8 (line 656)
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@9 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.01% 0x00007fd360d2b76c: mov 0x3c(%rcx),%r9d ;*baload {reexecute=0 rethrow=0 return_oop=0}
; - java.nio.HeapByteBuffer::get@13 (line 169)
; - org.apache.lucene.store.ByteBufferGuard::getByte@6 (line 118)
; - org.apache.lucene.store.ByteBufferIndexInput$SingleBufferImpl::readByte@10 (line 557)
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@-1 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.03% 0x00007fd360d2b770: mov %edi,%r8d
0.00% 0x00007fd360d2b773: dec %r8d ;*synchronization entry
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@-1 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.00% 0x00007fd360d2b776: mov 0xc(%r12,%r9,8),%ebx ; implicit exception: dispatches to 0x00007fd360d2ca3c
0.17% 0x00007fd360d2b77b: cmp %ebx,%r8d
0.04% 0x00007fd360d2b77e: jae 0x00007fd360d2bf50 ;*synchronization entry
; - org.apache.lucene.search.LeafSimScorer::getNormValue@-1 (line 44)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.WANDScorer::score@20 (line 525)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
0.00% 0x00007fd360d2b784: lea (%r12,%r9,8),%r8
0.00% 0x00007fd360d2b788: mov 0x8(%r8,%rdi,8),%r8
0.08% 0x00007fd360d2b78d: mov %r8d,%r8d ;*synchronization entry
; - org.apache.lucene.store.ByteBufferGuard::getByte@-1 (line 117)
; - org.apache.lucene.store.ByteBufferIndexInput::readByte@25 (line 299)
; - org.apache.lucene.store.ByteBufferIndexInput$MultiBufferImpl::readByte@8 (line 656)
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@9 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.01% 0x00007fd360d2b790: vmovd %r8d,%xmm2
0.00% 0x00007fd360d2b795: vcvtdq2ps %xmm2,%xmm2 ;*getfield doc {reexecute=0 rethrow=0 return_oop=0}
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@5 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.23% 0x00007fd360d2b799: mov 0x10(%r12,%r10,8),%r8d ; implicit exception: dispatches to 0x00007fd360d2c9f4
0.00% 0x00007fd360d2b79e: mov 0xc(%r12,%r10,8),%r9d ;*synchronization entry
; - java.nio.DirectByteBuffer::get@-1 (line 269)
; - org.apache.lucene.store.ByteBufferGuard::getByte@-1 (line 117)
; - org.apache.lucene.store.ByteBufferIndexInput::readByte@25 (line 299)
; - org.apache.lucene.store.ByteBufferIndexInput$MultiBufferImpl::readByte@8 (line 656)
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@9 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.00% 0x00007fd360d2b7a3: mov 0x8(%r12,%r8,8),%ecx ; implicit exception: dispatches to 0x00007fd360d2cb04
0.06% 0x00007fd360d2b7a8: cmp $0x1bf5d0,%ecx ; {metadata('org/apache/lucene/codecs/lucene90/Lucene90NormsProducer$3')}
0.00% 0x00007fd360d2b7ae: jne 0x00007fd360d2bfb0 ;*invokevirtual checkIndex {reexecute=0 rethrow=0 return_oop=0}
; - java.nio.DirectByteBuffer::get@6 (line 269)
; - org.apache.lucene.store.ByteBufferGuard::getByte@-1 (line 117)
; - org.apache.lucene.store.ByteBufferIndexInput::readByte@25 (line 299)
; - org.apache.lucene.store.ByteBufferIndexInput$MultiBufferImpl::readByte@8 (line 656)
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@9 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.02% 0x00007fd360d2b7b4: lea (%r12,%r8,8),%r10 ;*invokevirtual advanceAllTail {reexecute=0 rethrow=0 return_oop=0}
; - org.apache.lucene.search.WANDScorer::score@1 (line 522)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
0.01% 0x00007fd360d2b7b8: mov %r11d,0x10(%r10) ;*iflt {reexecute=0 rethrow=0 return_oop=0}
; - java.nio.Buffer::checkIndex@1 (line 686)
; - java.nio.DirectByteBuffer::get@6 (line 269)
; - org.apache.lucene.store.ByteBufferGuard::getByte@-1 (line 117)
; - org.apache.lucene.store.ByteBufferIndexInput::readByte@25 (line 299)
; - org.apache.lucene.store.ByteBufferIndexInput$MultiBufferImpl::readByte@8 (line 656)
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@9 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.00% 0x00007fd360d2b7bc: mov 0x14(%r10),%ebx ;*synchronization entry
; - org.apache.lucene.store.ByteBufferGuard::getByte@-1 (line 117)
; - org.apache.lucene.store.ByteBufferIndexInput$SingleBufferImpl::readByte@10 (line 557)
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@-1 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.04% 0x00007fd360d2b7c0: movslq %r11d,%r8 ;*invokeinterface readByte {reexecute=0 rethrow=0 return_oop=0}
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@9 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.02% 0x00007fd360d2b7c3: mov 0x8(%r12,%rbx,8),%edi ;*invokevirtual docID {reexecute=0 rethrow=0 return_oop=0}
; - org.apache.lucene.search.TermScorer::score@31 (line 75)
; - org.apache.lucene.search.WANDScorer::score@20 (line 525)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
; implicit exception: dispatches to 0x00007fd360d2ca08
0.03% 0x00007fd360d2b7c8: lea (%r12,%rbx,8),%r10
0.08% 0x00007fd360d2b7cc: cmp $0x167828,%edi ; {metadata('org/apache/lucene/store/ByteBufferIndexInput$SingleBufferImpl')}
0.00% 0x00007fd360d2b7d2: jne 0x00007fd360d2b9cd ;*invokespecial readByte {reexecute=0 rethrow=0 return_oop=0}
; - org.apache.lucene.store.ByteBufferIndexInput$MultiBufferImpl::readByte@8 (line 656)
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@9 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0x00007fd360d2b7d8: mov 0x2c(%r10),%ecx ;*dload_1 {reexecute=0 rethrow=0 return_oop=0}
; - org.apache.lucene.search.WANDScorer::score@15 (line 525)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
0.01% 0x00007fd360d2b7dc: mov 0x34(%r10),%ebx ;*synchronization entry
; - java.nio.DirectByteBuffer::ix@-1 (line 256)
; - java.nio.DirectByteBuffer::get@9 (line 269)
; - org.apache.lucene.store.ByteBufferGuard::getByte@-1 (line 117)
; - org.apache.lucene.store.ByteBufferIndexInput::readByte@25 (line 299)
; - org.apache.lucene.store.ByteBufferIndexInput$MultiBufferImpl::readByte@8 (line 656)
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@9 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0.02% 0x00007fd360d2b7e0: movzbl 0xc(%r12,%rcx,8),%ecx ;*invokespecial readByte {reexecute=0 rethrow=0 return_oop=0}
; - org.apache.lucene.store.ByteBufferIndexInput$MultiBufferImpl::readByte@8 (line 656)
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@9 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
; implicit exception: dispatches to 0x00007fd360d2ca4c
0.14% 0x00007fd360d2b7e6: test %ecx,%ecx
0.03% 0x00007fd360d2b7e8: jne 0x00007fd360d2c030 ;*invokevirtual ix {reexecute=0 rethrow=0 return_oop=0}
; - java.nio.DirectByteBuffer::get@9 (line 269)
; - org.apache.lucene.store.ByteBufferGuard::getByte@-1 (line 117)
; - org.apache.lucene.store.ByteBufferIndexInput::readByte@25 (line 299)
; - org.apache.lucene.store.ByteBufferIndexInput$MultiBufferImpl::readByte@8 (line 656)
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@9 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0x00007fd360d2b7ee: mov 0x8(%r12,%rbx,8),%ecx ;*invokevirtual docID {reexecute=0 rethrow=0 return_oop=0}
; - org.apache.lucene.search.TermScorer::score@31 (line 75)
; - org.apache.lucene.search.WANDScorer::score@20 (line 525)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@-1 (line 72)
; implicit exception: dispatches to 0x00007fd360d2ca8c
0.01% 0x00007fd360d2b7f3: lea (%r12,%rbx,8),%rdx
0.04% 0x00007fd360d2b7f7: cmp $0x149538,%ecx ; {metadata('java/nio/DirectByteBufferR')}
0.06% 0x00007fd360d2b7fd: je 0x00007fd360d2b844 ;*invokevirtual ix {reexecute=0 rethrow=0 return_oop=0}
; - java.nio.DirectByteBuffer::get@9 (line 269)
; - org.apache.lucene.store.ByteBufferGuard::getByte@-1 (line 117)
; - org.apache.lucene.store.ByteBufferIndexInput$SingleBufferImpl::readByte@10 (line 557)
; - org.apache.lucene.codecs.lucene90.Lucene90NormsProducer$3::longValue@-1 (line 388)
; - org.apache.lucene.search.LeafSimScorer::getNormValue@38 (line 47)
; - org.apache.lucene.search.LeafSimScorer::score@7 (line 60)
; - org.apache.lucene.search.TermScorer::score@42 (line 75)
; - org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect@4 (line 72)
0x00007fd360d2b7ff: cmp $0x20b6c0,%ecx ; {metadata('java/nio/HeapByteBufferR')}
0x00007fd360d2b805: jne 0x00007fd360d2c0b4 ;*lshr {reexecute=0 rethrow=0 return_oop=0}
....................................................................................................
65.10% <total for region 1>
....[Hottest Regions]...............................................................................
65.10% c2, level 4 org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect, version 6116 (637 bytes)
6.94% c2, level 4 org.apache.lucene.codecs.lucene90.Lucene90PostingsReader$BlockImpactsDocsEnum::advance, version 6177 (2340 bytes)
2.98% c2, level 4 org.apache.lucene.search.WANDScorer$2::matches, version 3578 (203 bytes)
2.78% c2, level 4 org.apache.lucene.search.WANDScorer$2::matches, version 3578 (182 bytes)
2.70% c2, level 4 org.apache.lucene.search.Weight$DefaultBulkScorer::scoreAll, version 5480 (371 bytes)
2.24% c2, level 4 org.apache.lucene.search.WANDScorer::pushBackLeads, version 4134 (417 bytes)
1.95% c2, level 4 org.apache.lucene.search.WANDScorer::moveToNextCandidate, version 3466 (256 bytes)
1.46% c2, level 4 org.apache.lucene.search.ImpactsDISI::advance, version 4124 (375 bytes)
1.37% c2, level 4 org.apache.lucene.search.WANDScorer::pushBackLeads, version 4134 (100 bytes)
0.99% c2, level 4 org.apache.lucene.search.WANDScorer$2::matches, version 3578 (122 bytes)
0.81% c2, level 4 org.apache.lucene.search.WANDScorer$2::matches, version 3578 (117 bytes)
0.61% c2, level 4 org.apache.lucene.search.WANDScorer::moveToNextCandidate, version 3466 (82 bytes)
0.46% c2, level 4 org.apache.lucene.store.ByteBufferIndexInput::readLongs, version 5989 (568 bytes)
0.43% c2, level 4 org.apache.lucene.search.WANDScorer::moveToNextCandidate, version 3466 (153 bytes)
0.43% c2, level 4 org.apache.lucene.search.WANDScorer::pushBackLeads, version 4134 (102 bytes)
0.40% c2, level 4 org.apache.lucene.codecs.lucene90.Lucene90ScoreSkipReader::readImpacts, version 4179 (354 bytes)
0.36% c2, level 4 org.apache.lucene.search.WANDScorer::pushBackLeads, version 4134 (100 bytes)
0.36% c2, level 4 org.apache.lucene.store.ByteBufferIndexInput::readBytes, version 3245 (723 bytes)
0.35% c2, level 4 org.apache.lucene.codecs.MultiLevelSkipListReader::skipTo, version 6180 (731 bytes)
0.27% c2, level 4 org.apache.lucene.search.WANDScorer$2::matches, version 3578 (29 bytes)
7.02% <...other 3735 warm regions...>
....................................................................................................
100.00% <totals>
....[Hottest Methods (after inlining)]..............................................................
65.26% c2, level 4 org.apache.lucene.search.TopScoreDocCollector$SimpleTopScoreDocCollector$1::collect, version 6116
7.92% c2, level 4 org.apache.lucene.search.WANDScorer$2::matches, version 3578
6.98% c2, level 4 org.apache.lucene.codecs.lucene90.Lucene90PostingsReader$BlockImpactsDocsEnum::advance, version 6177
4.50% c2, level 4 org.apache.lucene.search.WANDScorer::pushBackLeads, version 4134
3.11% c2, level 4 org.apache.lucene.search.WANDScorer::moveToNextCandidate, version 3466
2.70% c2, level 4 org.apache.lucene.search.Weight$DefaultBulkScorer::scoreAll, version 5480
1.49% c2, level 4 org.apache.lucene.search.ImpactsDISI::advance, version 4124
0.48% c2, level 4 org.apache.lucene.codecs.lucene90.ForUtil::decode, version 6185
0.46% c2, level 4 org.apache.lucene.store.ByteBufferIndexInput::readLongs, version 5989
0.45% c2, level 4 org.apache.lucene.codecs.lucene90.Lucene90SkipReader::readSkipData, version 6191
0.43% c2, level 4 org.apache.lucene.codecs.lucene90.Lucene90ScoreSkipReader::readImpacts, version 4179
0.37% c2, level 4 org.apache.lucene.codecs.MultiLevelSkipListReader::skipTo, version 6180
0.37% c2, level 4 org.apache.lucene.search.TermScorer::getMaxScore, version 4013
0.36% c2, level 4 org.apache.lucene.store.ByteBufferIndexInput::readBytes, version 3245
0.36% c2, level 4 org.apache.lucene.search.MaxScoreCache::getMaxScoreForLevel, version 4016
0.33% c2, level 4 org.apache.lucene.codecs.lucene90.ForUtil::decodeTo32, version 6181
0.21% c2, level 4 org.apache.lucene.codecs.lucene90.PForUtil::innerPrefixSum32, version 3618
0.20% c2, level 4 org.apache.lucene.codecs.lucene90.PForUtil::decode, version 5988
0.20% runtime stub StubRoutines::jbyte_disjoint_arraycopy
0.17% runtime stub StubRoutines::vectorizedMismatch
3.66% <...other 1586 warm methods...>
....................................................................................................
100.00% <totals>
....[Distribution by Source]........................................................................
97.26% c2, level 4
1.08% vmlinux
0.82% libjvm.so
0.58% runtime stub
0.12% libc-2.33.so
0.03% interpreter
0.03% c1, level 3
0.02% libpthread-2.33.so
0.02% hsdis-amd64.so
0.01% nvidia.ko.gz
0.01% ld-2.33.so
0.01% c1, level 1
0.00% Unknown, level 0
0.00% perf-2095276.map
0.00% radeon.ko.xz
0.00%
0.00% ext4.ko.xz
0.00% igb.ko.xz
0.00% kvm.ko.xz
0.00% [vdso]
0.00% usbhid.ko.xz
0.00% libstdc++.so.6.0.29
0.00% jbd2.ko.xz
....................................................................................................
100.00% <totals>
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] markrmiller edited a comment on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
markrmiller edited a comment on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-937514463
No frills type output possibilities.
```
Result "org.apache.lucene.bench.search.SearchPerf.term":
1163.320 ±(99.9%) 262.404 ops/s [Average]
(min, avg, max) = (1090.710, 1163.320, 1242.755), stdev = 68.146
CI (99.9%): [900.915, 1425.724] (assumes normal distribution)
# Run complete. Total time: 00:23:29
REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on
why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial
experiments, perform baseline and negative tests that provide experimental control, make sure
the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts.
Do not assume the numbers tell you what you want them to tell.
Benchmark (analyzer) (cfs) (clonedocs) (commit) (dirimpl) (dpspt) (facets) (fld) (hlimpl) (idpostfmt) (ithrds) (mode) (nrt) (pklu) (postfmt) (pss) (reopnsec) (sim) (sthrds) (storebdy) (storelds) (topn) (tvsbdy) (vecfile) Mode Cnt Score Error Units
SearchPerf.andHighMed StandardAnalyzer false false multi MMapDirectory 10 taxonomy body FastVectorHighlighter Lucene90 1 update true false Lucene90 true 5 BM25Similarity 2 false false 10 false thrpt 5 329.632 ± 19.668 ops/s
SearchPerf.fuzzy1 StandardAnalyzer false false multi MMapDirectory 10 taxonomy body FastVectorHighlighter Lucene90 1 update true false Lucene90 true 5 BM25Similarity 2 false false 10 false thrpt 5 97.606 ± 4.264 ops/s
SearchPerf.fuzzy2 StandardAnalyzer false false multi MMapDirectory 10 taxonomy body FastVectorHighlighter Lucene90 1 update true false Lucene90 true 5 BM25Similarity 2 false false 10 false thrpt 5 45.042 ± 6.211 ops/s
SearchPerf.orHighHigh StandardAnalyzer false false multi MMapDirectory 10 taxonomy body FastVectorHighlighter Lucene90 1 update true false Lucene90 true 5 BM25Similarity 2 false false 10 false thrpt 5 47.736 ± 4.323 ops/s
SearchPerf.orHighMed StandardAnalyzer false false multi MMapDirectory 10 taxonomy body FastVectorHighlighter Lucene90 1 update true false Lucene90 true 5 BM25Similarity 2 false false 10 false thrpt 5 230.178 ± 12.832 ops/s
SearchPerf.prefix3 StandardAnalyzer false false multi MMapDirectory 10 taxonomy body FastVectorHighlighter Lucene90 1 update true false Lucene90 true 5 BM25Similarity 2 false false 10 false thrpt 5 877.469 ± 210.166 ops/s
SearchPerf.respell StandardAnalyzer false false multi MMapDirectory 10 taxonomy body FastVectorHighlighter Lucene90 1 update true false Lucene90 true 5 BM25Similarity 2 false false 10 false thrpt 5 80.543 ± 7.830 ops/s
SearchPerf.term StandardAnalyzer false false multi MMapDirectory 10 taxonomy body FastVectorHighlighter Lucene90 1 update true false Lucene90 true 5 BM25Similarity 2 false false 10 false thrpt 5 1163.320 ± 262.404 ops/s
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] uschindler commented on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
uschindler commented on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-940751666
> It was pretty surprising this issue hid out for so long. I've run it on 5 towers, a mini desktop box, a couple raspberry pi's, across Ubuntu, Arch/Manjaro, x86, arm, bash, zsh, a couple others have ran it. Shell scripts ...
The problem with gradle is that it enables "colorful" output if your console supports it. E.g., if you SSH to a remote machine, gradle often isn't colorful. But on local terminals it often is. Not sure what makes it think that the terminal supports colorful terminal escapes when you pipe the gradle output to somewhere else.
I tend to agree and with @dweiss: Just print the classpath to a file.
Don't forget to also fix the same issue in Solr's benchmark module!
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] markrmiller commented on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
markrmiller commented on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-939167876
`
git clone -b JMH --single-branch https://github.com/markrmiller/lucene.git
cd lucene/lucene/jmh
./jmh.sh FuzzyQuery
`
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] rmuir commented on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
rmuir commented on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-939370346
Everything works for me if we add `--console plain` to the echoCp line, then it won't add all this terminal-escaped nonsense:
```
--- a/lucene/jmh/jmh.sh
+++ b/lucene/jmh/jmh.sh
@@ -36,7 +36,7 @@ else
gradleCmd="${gradlew_dir}/gradlew"
$gradleCmd -q -p ../../ jar
echo "gradle build done"
- classpath=$($gradleCmd -q echoCp)
+ classpath=$($gradleCmd -q --console plain echoCp)
fi
# shellcheck disable=SC2145
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] markrmiller edited a comment on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
markrmiller edited a comment on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-939167876
>
> git clone -b JMH --single-branch https://github.com/markrmiller/lucene.git
> cd lucene/lucene/jmh
> ./jmh.sh FuzzyQuery
>
> // async-profiler flame graphs to lucene/lucene/jmh/work/*, 1 warm up iteration, 1 iteration, 1 second each, measure throughput
https://github.com/markrmiller/lucene/blob/JMH/lucene/jmh/README.md#using-jmh-with-async-profiler
> ./jmh.sh FuzzyQuery -w 1 -wi 1 -r 1 -i 1 -prof async:dir=work\;output=flamegraph
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] markrmiller commented on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
markrmiller commented on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-940786135
On Tue, Oct 12, 2021 at 2:45 AM Uwe Schindler ***@***.***>
wrote:
> It was pretty surprising this issue hid out for so long. I've run it on 5
> towers, a mini desktop box, a couple raspberry pi's, across Ubuntu,
> Arch/Manjaro, x86, arm, bash, zsh, a couple others have ran it. Shell
> scripts ...
>
> The problem with gradle is that it enables "colorful" output if your
> console supports it. E.g., if you SSH to a remote machine, gradle often
> isn't colorful. But on local terminals it often is. Not sure what makes it
> think that the terminal supports colorful terminal escapes when you pipe
> the gradle output to somewhere else.
>
That sounds reasonable, my runs on other machines are usually driven by
Zeppelin using Java to call out to to a shell ssh command.
It's still seems strange I had no problem on my primary machine, nor did
Mike D seem to, but perhaps easier for 2 cases to have an env that
circumvents it.
Also, I occasionally do run it over ssh in colorful mode over the last
couple months because I use WezTerm these days. No problem, just curious
I tend to agree and with @dweiss <https://github.com/dweiss>: Just print
> the classpath to a file.
>
> Don't forget to also fix the same issue in Solr's benchmark module!
>
I'm actually moving to cheating to do this for Lucene at this point.
Initially, I just intended to hack together something that could resemble
the Luceneutil standard search benchmark, so that I could easily make some
observations. But I realized that if I properly structure this, the similar
experience and environment will benefit Solr, and the Lucene end will cost
me very little.
That does end up meaning that everything I do that is or can be common will
be in sync, even if one might step forward before the other.
Even just using one part of the newer data gen API in the silly sample
benchmark I added here led me to do a much-needed, comprehensive clean up
and improvement pass on that data gen API. That will all go into Solr.
I am putting in the nonembryonic documentation needed for Solr this week as
well, and also structuring that so I can hit both, get some advantage out
of that, and eat the minimal additional cost.
FYI, I also am likely to rework this pull request setup a bit soon. I will
have a repo that I update more frequently that will less often merge to my
markrmiller repo, which will update this pr.
I only recently learned that while Apache has unlimited action minutes,
they do have limited throughput for the whole organization and I don't want
to eat them here.
Mark
> --
- Mark
http://about.me/markrmiller
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] markrmiller commented on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
markrmiller commented on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-939371611
Done, thanks!
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org
[GitHub] [lucene] rmuir commented on pull request #365: GameGenie:1990JMH
Posted by GitBox <gi...@apache.org>.
rmuir commented on pull request #365:
URL: https://github.com/apache/lucene/pull/365#issuecomment-939369650
The problem for me is that the shellscript pulls its `$classpath` variable from the output of `gradlew echoCp`. The issue is, this contains a lot more than the classpath, it also contains *terminal-escaped* crap from gradle itself.
You can see this by echoing to a file, and then opening it up in the editor. attempting to debug it directly with `-x` or adding prints to the shellscript will only confuse you, because the terminal escapes will wipe away all the evidence.
Run it yourself, but redirect to a tmp file then open it with vim.
```console
jmh[JMH]$ ../../gradlew -q echoCp > /tmp/out.txt
think:jmh[JMH]$ vi /tmp/out.txt
```
You'll see it looks something like this. We are passing all this stuff to the java via `-classpath` and in my case its not parsing correctly.
```
^[[1A^[[1m> Starting Daemon^[[m^[[17D^[[1B^[[1A> IDLE^[[0K^[[6D^[[1B^[[2A^[[1m<^[[0;1m-------------> 0% INITIALIZING [89ms]^[[m^[[38D^[[2B^[[2A^[[1m<^[[0;1m-------------> 0% INITIALIZING [189ms]^[[m^[[39D^[[2B^[[2A^[[1m<^[[0;1m-------------> 0% INITIALIZING [289ms]^[[m^[[39D^[[2B^[[2A^[[1m<^[[0;1m-------------> 0% INITIALIZING [389ms]^[[m^[[39D^[[2B^[[2A^[[1m<^[[0;1m-------------> 0% INITIALIZING [489ms]^[[m^[[39D^[[1B^[[1m> Evaluating settings^[[m^[[21D^[[1B^[[2A^[[1m<^[[0;1m-------------> 0% INITIALIZING [589ms]^[[m^[[39D^[[2B^[[2A^[[1m<^[[0;1m-------------> 0% INITIALIZING [689ms]^[[m^[[39D^[[2B^[[2A^[[1m<^[[0;1m-------------> 0% INITIALIZING [789ms]^[[m^[[39D^[[2B^[[2A^[[1m<^[[0;1m-------------> 0% INITIALIZING [889ms]^[[m^[[39D^[[2B^[[2A^[[1m<^[[0;1m-------------> 0% INITIALIZING [989ms]^[[m^[[39D^[[2B^[[2A^[[1m<^[[0;1m-------------> 0% INITIALIZING [1s]^[[m^[[0K^[[36D^[[2B^[[2A^[[1m<^[[0;1m-------------> 0% CONFIGURING [1s]^[[m^[[0K^[[35D^[[1B^[[1m> Loading projects^[[m^[[0K
^[[18D^[[1B^[[1A^[[1m> :missing-doclet^[[m^[[0K^[[17D^[[1B^[[2A^[[1m<^[[0;1m-------------> 2% CONFIGURING [2s]^[[m^[[35D^[[1B^[[1m> Building buildSrc^[[m^[[19D^[[1B^[[1A^[[1m> Building buildSrc > :buildSrc^[[m^[[31D^[[1B^[[2A^[[1m<^[[0;1m-------------> 4% CONFIGURING [2s]^[[m^[[35D^[[1B^[[1m> Building buildSrc^[[m^[[0K^[[19D^[[1B^[[1A^[[1m> Building buildSrc > Resolve dependencies of :buildSrc:compileClasspath^[[m^[[72D^[[1B^[[1A^[[1m> Building buildSrc^[[m^[[0K^[[19D^[[1B^[[1A^[[1m> Building buildSrc > :buildSrc:compileJava^[[m^[[43D^[[1B^[[1A^[[1m> root project > Resolve dependencies of detachedConfiguration4^[[m^[[63D^[[1B^[[1A^[[1m> root project > Resolve dependencies of :classpath^[[m^[[0K^[[51D^[[1B^[[1A^[[1m> root project^[[m^[[0K^[[14D^[[1B^[[2A^[[1m<^[[0;1m-------------> 4% CONFIGURING [3s]^[[m^[[35D^[[2B^[[2A^[[1m<^[[0;1m-------------> 4% CONFIGURING [4s]^[[m^[[35D^[[2B^[[2A^[[1m<^[[0;1m-------------> 4% CONFIGURING [5s]^[[m^[[35D^[[2B^[[2A^[[1m<^[[0;1m-------------> 4% CO
NFIGURING [6s]^[[m^[[35D^[[2B^[[1A^[[1m> root project > Resolve dependencies of classpath^[[m^[[50D^[[1B^[[1A^[[1m> root project^[[m^[[0K^[[14D^[[1B^[[2A^[[1m<^[[0;32;1m=^[[0;39;1m------------> 9% CONFIGURING [6s]^[[m^[[35D^[[1B^[[1m> root project > :lucene:backward-codecs^[[m^[[40D^[[1B^[[2A^[[1m<^[[0;32;1m=^[[0;39;1m------------> 12% CONFIGURING [6s]^[[m^[[36D^[[1B^[[1m> root project > :lucene:benchmark^[[m^[[0K^[[34D^[[1B^[[2A^[[1m<^[[0;32;1m==^[[0;39;1m-----------> 17% CONFIGURING [7s]^[[m^[[36D^[[1B^[[1m> root project > :lucene:codecs^[[m^[[0K^[[31D^[[1B^[[2A^[[1m<^[[0;32;1m===^[[0;39;1m----------> 24% CONFIGURING [7s]^[[m^[[36D^[[1B^[[1m> root project > :lucene:documentation^[[m^[[38D^[[1B^[[2A^[[1m<^[[0;32;1m====^[[0;39;1m---------> 31% CONFIGURING [7s]^[[m^[[36D^[[1B^[[1m> root project > :lucene:grouping^[[m^[[0K^[[33D^[[1B^[[2A^[[1m<^[[0;32;1m=====^[[0;39;1m--------> 39% CONFIGURING [7s]^[[m^[[36D^[[1B^[[1m> root project > :lucene:join^[[m^[[0K^[[29D^[[1B^[[2A^[[1m<^[[0;32;
1m=====^[[0;39;1m--------> 41% CONFIGURING [7s]^[[m^[[36D^[[1B^[[1m> root project > :lucene:luke^[[m^[[29D^[[1B^[[2A^[[1m<^[[0;32;1m======^[[0;39;1m-------> 48% CONFIGURING [7s]^[[m^[[36D^[[1B^[[1m> root project > :lucene:monitor^[[m^[[32D^[[1B^[[2A^[[1m<^[[0;32;1m======^[[0;39;1m-------> 51% CONFIGURING [7s]^[[m^[[36D^[[1B^[[1m> root project > :lucene:packaging^[[m^[[34D^[[1B^[[2A^[[1m<^[[0;32;1m=======^[[0;39;1m------> 56% CONFIGURING [7s]^[[m^[[36D^[[1B^[[1m> root project > :lucene:queryparser^[[m^[[36D^[[1B^[[2A^[[1m<^[[0;32;1m=======^[[0;39;1m------> 60% CONFIGURING [7s]^[[m^[[36D^[[1B^[[1m> root project > :lucene:sandbox^[[m^[[0K^[[32D^[[1B^[[2A^[[1m<^[[0;32;1m========^[[0;39;1m-----> 68% CONFIGURING [7s]^[[m^[[36D^[[1B^[[1m> root project > :lucene:suggest^[[m^[[32D^[[1B^[[2A^[[1m<^[[0;32;1m=========^[[0;39;1m----> 73% CONFIGURING [8s]^[[m^[[36D^[[1B^[[1m> root project > :lucene:analysis:common^[[m^[[40D^[[1B^[[2A^[[1m<^[[0;32;1m==========^[[0;39;1m---> 80% CONFIGURING [8s]^[[
m^[[36D^[[1B^[[1m> root project > :lucene:analysis:morfologik^[[m^[[44D^[[1B^[[2A^[[1m<^[[0;32;1m===========^[[0;39;1m--> 85% CONFIGURING [8s]^[[m^[[36D^[[1B^[[1m> root project > :lucene:analysis:opennlp^[[m^[[0K^[[41D^[[1B^[[2A^[[1m<^[[0;32;1m============^[[0;39;1m-> 95% CONFIGURING [8s]^[[m^[[36D^[[1B^[[1m> root project > :lucene:misc:native^[[m^[[0K^[[36D^[[1B^[[2A^[[1m<^[[0;32;1m============^[[0;39;1m-> 97% CONFIGURING [8s]^[[m^[[36D^[[1B^[[1m> root project^[[m^[[0K^[[14D^[[1B^[[2A^[[1m<^[[0;32;1m=============^[[0;39;1m> 100% CONFIGURING [9s]^[[m^[[37D^[[1B> IDLE^[[0K^[[6D^[[1B^[[2A^[[1m<^[[0;1m-------------> 0% EXECUTING [9s]^[[m^[[0K^[[33D^[[1B^[[1m> :lucene:jmh:echoCp > Resolve dependencies of :lucene:jmh:runtimeClasspath^[[m^[[75D^[[1B^[[2A/home/rmuir/workspace/lucene-test/lucene/lucene/jmh/build/classes/java/main:/home/rmuir/workspace/lucene-test/lucene/lucene/jmh/build/resources/main:/home/rmuir/workspace/lucene-test/lucene/lucene/test-framework/build/libs/lucene-test-fram
ework-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/suggest/build/libs/lucene-suggest-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/analysis/kuromoji/build/libs/lucene-analysis-kuromoji-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/analysis/icu/build/libs/lucene-analysis-icu-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/analysis/common/build/libs/lucene-analysis-common-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/facet/build/libs/lucene-facet-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/highlighter/build/libs/lucene-highlighter-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/queryparser/build/libs/lucene-queryparser-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/grouping/build/libs/lucene-grouping-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/sandbox/build/libs/lucene-sandbox-9.0.0-SNAPSHOT.jar:/ho
me/rmuir/workspace/lucene-test/lucene/lucene/queries/build/libs/lucene-queries-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/spatial-extras/build/libs/lucene-spatial-extras-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/misc/build/libs/lucene-misc-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/join/build/libs/lucene-join-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/codecs/build/libs/lucene-codecs-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/memory/build/libs/lucene-memory-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/spatial3d/build/libs/lucene-spatial3d-9.0.0-SNAPSHOT.jar:/home/rmuir/workspace/lucene-test/lucene/lucene/core/build/libs/lucene-core-9.0.0-SNAPSHOT.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/org.locationtech.spatial4j/spatial4j/0.7/faa8ba85d503da4ab872d17ba8c00da0098ab2f2/spatial4j-0.7.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/or
g.apache.commons/commons-compress/1.19/7e65777fb451ddab6a9c054beb879e521b7eab78/commons-compress-1.19.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/com.ibm.icu/icu4j/68.2/76893e6000401ace133a65262254be0ebe556d46/icu4j-68.2.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/net.sourceforge.nekohtml/nekohtml/1.9.17/39a870b0ea4cb0d2a3015c1ab569d17d83122d55/nekohtml-1.9.17.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/com.eaio.uuid/uuid/3.2/77ba5105d949cd589aff75400d9f7d3676691a46/uuid-3.2.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/org.hdrhistogram/HdrHistogram/2.1.12/6eb7552156e0d517ae80cc2247be1427c8d90452/HdrHistogram-2.1.12.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/org.openjdk.jmh/jmh-core/1.32/9a8b69ea08118fd4e5d30a152d37b7087ee4a720/jmh-core-1.32.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/com.carrotsearch.randomizedtesting/randomizedtesting-runner/2.7.6/17894fe98cce53f9bd994044d9bea7bd7801cafa/randomizedtesting-runner-2.7.6.jar:/home/rmuir/.gradl
e/caches/modules-2/files-2.1/junit/junit/4.13.1/cdd00374f1fee76b11e2a9d127405aa3f6be5b6a/junit-4.13.1.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest/2.2/1820c0968dba3a11a1b30669bb1f01978a91dedc/hamcrest-2.2.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/com.carrotsearch/hppc/0.9.0/fcc952fb6d378266b943bef9f15e67a4d45cfa88/hppc-0.9.0.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/io.sgr/s2-geometry-library-java/1.0.0/f95b25589b40b5b0965deb592445073ff3efa299/s2-geometry-library-java-1.0.0.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/net.sf.jopt-simple/jopt-simple/4.6/306816fb57cf94f108a43c95731b08934dcae15c/jopt-simple-4.6.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/org.apache.commons/commons-math3/3.2/ec2544ab27e110d2d431bdad7d538ed509b21e62/commons-math3-3.2.jar:/home/rmuir/.gradle/caches/modules-2/files-2.1/xerces/xercesImpl/2.12.0/f02c844149fd306601f20e0b34853a670bef7fa2/xercesImpl-2.12.0.jar:/home/rmuir/workspace/lucene-test/lucene/lu
cene/jmh/src/resources/words.txt^[[4259D
^[[0K
^[[0K
^[[2A^[[1m<^[[0;32;1m=============^[[0;39;1m> 100% EXECUTING [9s]^[[m^[[35D^[[1B> IDLE^[[6D^[[1B^[[2A^[[1m<^[[0;1m-------------> 0% WAITING^[[m^[[0K^[[26D^[[2B^[[2A^[[2K^[[1B^[[2K^[[1A^[[1A^[[4259C
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org