rmuir commented on PR #12737:
URL: https://github.com/apache/lucene/pull/12737#issuecomment-1793549914
for transparency, this was my testing procedure. I did lots of other things
such as poking around and running experiments too, but for the basics of
"running benchmark across different instance types", it can all be easily
automated with tools like ansible and run all in parallel. the question is, how
to visualize the data?
```
# login
ssh -i robkeypair.pem ec2-user@<ip>
# disable system slowdowns
sudo grubby --remove-args="selinux=1 security=selinux quiet"
--args="mitigations=0 random.trust_cpu=1 loglevel=7 selinux=0"
--update-kernel=ALL && sudo reboot
# login again
ssh -i robkeypair.pem ec2-user@<ip>
-if x86
# install packages for testing
sudo yum install -y git g++ make
# clone avx-turbo
git clone [email protected]:travisdowns/avx-turbo.git
# build avx-turbo
cd avx-turbo; make
# load msr module
sudo modprobe msr
# run avx-turbo
sudo ./avx-turbo
# examine results, look for any oddities
# look at avx*_imul, avx*_fma, and avx*_fma_t.
# check ratio of avx512_imul to avx256_imul and look at clock difference
# check ratio of avx512_fma_t to avx256_fma_t and look at clock
difference
# check ratio of avx*_fma_t to avx*_fma (divided by 2 for HT)
cd ..
curl -f
https://download.java.net/java/GA/jdk21.0.1/415e3f918a1f4062a0074a2794853d0d/12/GPL/openjdk-21.0.1_linux-x64_bin.tar.gz
| tar -zxvf -
-else aarch64
sudo yum install -y git
curl -f
https://download.java.net/java/GA/jdk21.0.1/415e3f918a1f4062a0074a2794853d0d/12/GPL/openjdk-21.0.1_linux-aarch64_bin.tar.gz
| tar -zxvf -
-endif
# download java
# configure java (also in case i get disconnected)
echo 'export JAVA_HOME=/home/ec2-user/jdk-21.0.1' >> ~/.bashrc
echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
# prevent benchmark interference from daemon
mkdir ~/.gradle
echo 'org.gradle.daemon=false' > ~/.gradle/gradle.properties
# clone lucene
git clone [email protected]:rmuir/lucene.git; cd lucene
# run benchmark (main)
./gradlew -p lucene/benchmark-jmh assemble
java -jar
lucene/benchmark-jmh/build/benchmarks/lucene-benchmark-jmh-10.0.0-SNAPSHOT.jar
float -p size=1024
# run benchmark (patch)
git checkout float_scalar_fma_unroll
./gradlew -p lucene/benchmark-jmh assemble
java -jar
lucene/benchmark-jmh/build/benchmarks/lucene-benchmark-jmh-10.0.0-SNAPSHOT.jar
float -p size=1024
```
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]