xref: /aosp_15_r20/external/pffft/bench_all.sh (revision 3f1979aa0d7ad34fcf3763de7b7b8f8cd67e5bdd)
1*3f1979aaSAndroid Build Coastguard Worker#!/bin/bash
2*3f1979aaSAndroid Build Coastguard Worker
3*3f1979aaSAndroid Build Coastguard WorkerFFTW="ON"
4*3f1979aaSAndroid Build Coastguard WorkerCMAKEOPT=""
5*3f1979aaSAndroid Build Coastguard Worker# CMAKEOPT="-DUSE_NEON=ON"
6*3f1979aaSAndroid Build Coastguard Worker
7*3f1979aaSAndroid Build Coastguard Workerif [ ! -z "$1" ]; then
8*3f1979aaSAndroid Build Coastguard Worker  FFTW="$1"
9*3f1979aaSAndroid Build Coastguard Workerfi
10*3f1979aaSAndroid Build Coastguard Worker
11*3f1979aaSAndroid Build Coastguard Workerif [ ! -d build ]; then
12*3f1979aaSAndroid Build Coastguard Worker  mkdir build
13*3f1979aaSAndroid Build Coastguard Worker  cd build
14*3f1979aaSAndroid Build Coastguard Workerelse
15*3f1979aaSAndroid Build Coastguard Worker  cd build
16*3f1979aaSAndroid Build Coastguard Worker  make clean
17*3f1979aaSAndroid Build Coastguard Worker  rm *.csv *.txt *.png
18*3f1979aaSAndroid Build Coastguard Workerfi
19*3f1979aaSAndroid Build Coastguard Worker
20*3f1979aaSAndroid Build Coastguard Workerecho "" >ToolChain.cmake
21*3f1979aaSAndroid Build Coastguard Workerif [ -z "${GCC_WITH_CMAKE}" ]; then
22*3f1979aaSAndroid Build Coastguard Worker  GCC_WITH_CMAKE="gcc"
23*3f1979aaSAndroid Build Coastguard Workerelse
24*3f1979aaSAndroid Build Coastguard Worker  GCCPATH=$(basename "${GCC_WITH_CMAKE}")
25*3f1979aaSAndroid Build Coastguard Worker  echo "SET(CMAKE_C_COMPILER     ${GCCPATH})" >>ToolChain.cmake
26*3f1979aaSAndroid Build Coastguard Workerfi
27*3f1979aaSAndroid Build Coastguard Workerif [ -z "${GPP_WITH_CMAKE}" ]; then
28*3f1979aaSAndroid Build Coastguard Worker  GPP_WITH_CMAKE="g++"
29*3f1979aaSAndroid Build Coastguard Workerelse
30*3f1979aaSAndroid Build Coastguard Worker  GPPPATH=$(basename "${GPP_WITH_CMAKE}")
31*3f1979aaSAndroid Build Coastguard Worker  echo "SET(CMAKE_CXX_COMPILER   ${GPPPATH})" >>ToolChain.cmake
32*3f1979aaSAndroid Build Coastguard Workerfi
33*3f1979aaSAndroid Build Coastguard Worker
34*3f1979aaSAndroid Build Coastguard Worker
35*3f1979aaSAndroid Build Coastguard Worker#cmake -DCMAKE_TOOLCHAIN_FILE=ToolChain.cmake -DUSE_BENCH_FFTW=${FFTW} -DUSE_SIMD=OFF ${CMAKEOPT} ../
36*3f1979aaSAndroid Build Coastguard Worker#make clean
37*3f1979aaSAndroid Build Coastguard Worker#make
38*3f1979aaSAndroid Build Coastguard Worker#echo -e "\n\nrunning without simd (==scalar) .."
39*3f1979aaSAndroid Build Coastguard Worker#time ctest -V
40*3f1979aaSAndroid Build Coastguard Worker
41*3f1979aaSAndroid Build Coastguard Workercmake -DCMAKE_TOOLCHAIN_FILE=ToolChain.cmake -DUSE_BENCH_FFTW=${FFTW} -DUSE_SIMD=ON ${CMAKEOPT} ../
42*3f1979aaSAndroid Build Coastguard Worker#make clean
43*3f1979aaSAndroid Build Coastguard Workermake
44*3f1979aaSAndroid Build Coastguard Workerecho -e "\n\nrunning with simd .."
45*3f1979aaSAndroid Build Coastguard Workertime ctest -V
46*3f1979aaSAndroid Build Coastguard Worker
47*3f1979aaSAndroid Build Coastguard Worker
48*3f1979aaSAndroid Build Coastguard Workerecho "$@" >infos.txt
49*3f1979aaSAndroid Build Coastguard Workerecho "FFTW=${FFTW}" >>infos.txt
50*3f1979aaSAndroid Build Coastguard Workerecho "CMAKEOPT=${CMAKEOPT}" >>infos.txt
51*3f1979aaSAndroid Build Coastguard Worker
52*3f1979aaSAndroid Build Coastguard Worker
53*3f1979aaSAndroid Build Coastguard Workerecho "" >>infos.txt
54*3f1979aaSAndroid Build Coastguard Workerecho "${GCC_WITH_CMAKE} --version:" >>infos.txt
55*3f1979aaSAndroid Build Coastguard Worker${GCC_WITH_CMAKE} --version &>>infos.txt
56*3f1979aaSAndroid Build Coastguard Worker
57*3f1979aaSAndroid Build Coastguard Workerecho "" >>infos.txt
58*3f1979aaSAndroid Build Coastguard Workerecho "${GPP_WITH_CMAKE} --version:" >>infos.txt
59*3f1979aaSAndroid Build Coastguard Worker${GPP_WITH_CMAKE} --version &>>infos.txt
60*3f1979aaSAndroid Build Coastguard Worker
61*3f1979aaSAndroid Build Coastguard Worker
62*3f1979aaSAndroid Build Coastguard Workerecho "" >>infos.txt
63*3f1979aaSAndroid Build Coastguard Workerecho "lscpu:" >>infos.txt
64*3f1979aaSAndroid Build Coastguard Workerlscpu >>infos.txt
65*3f1979aaSAndroid Build Coastguard Worker
66*3f1979aaSAndroid Build Coastguard Workerecho "" >>infos.txt
67*3f1979aaSAndroid Build Coastguard Workerecho "lsb_release -a" >>infos.txt
68*3f1979aaSAndroid Build Coastguard Workerlsb_release -a &>>infos.txt
69*3f1979aaSAndroid Build Coastguard Worker
70*3f1979aaSAndroid Build Coastguard Workerecho "" >>infos.txt
71*3f1979aaSAndroid Build Coastguard Workerecho "cat /etc/*-release" >>infos.txt
72*3f1979aaSAndroid Build Coastguard Workercat /etc/*-release &>>infos.txt
73*3f1979aaSAndroid Build Coastguard Worker
74*3f1979aaSAndroid Build Coastguard Worker
75*3f1979aaSAndroid Build Coastguard Workerecho "" >>infos.txt
76*3f1979aaSAndroid Build Coastguard Workerecho "cat /proc/cpuinfo:" >>infos.txt
77*3f1979aaSAndroid Build Coastguard Workercat /proc/cpuinfo >>infos.txt
78*3f1979aaSAndroid Build Coastguard Worker
79*3f1979aaSAndroid Build Coastguard Worker
80*3f1979aaSAndroid Build Coastguard Workertar zcvf ../pffft_bench_${GCCPATH}_${HOSTNAME}.tar.gz --exclude=CMakeCache.txt *.csv *.txt *.png
81*3f1979aaSAndroid Build Coastguard Workerecho "all benchmark results in pffft_bench_${GCCPATH}_${HOSTNAME}.tar.gz"
82