at15 / hadoop-spark-perf

(Deprecated) Hadoop and Spark CPU performance Benchmark
MIT License
0 stars 0 forks source link

Ref #1

Closed at15 closed 7 years ago

at15 commented 7 years ago

Existing benchmark result and benchmark tools

Benchmark frameworks

Perf

If the overhead is a problem, these tools can be improved. If a tool doesn't already, it could be rewritten in C to use perf_events_open() and mmap() for the trace buffer. It could also implement frequency counts in C, and operate on mmap() directly, rather than using awk/Perl/Python. Additional improvements are possible for ftrace-based tools, such as use of snapshots and per-instance buffers.

Some of these tools are intended as short-term workarounds until more kernel capabilities exist, at which point they can be substantially rewritten. Older versions of these tools will be kept in this repository, for older kernel versions.

Extra Profiling tools

PMU

at15 commented 7 years ago

Fedora's perf does not include tips.txt result in warning when using perf report, the line should be at https://apps.fedoraproject.org/packages/perf/sources/

L1907 %doc linux-%{KVERREL}/tools/perf/Documentation/examples.txt

at15 commented 7 years ago

perf has a flame graph https://github.com/brendangregg/FlameGraph

at15 commented 7 years ago

golang has a tool that can be used with perf https://github.com/google/pprof

at15 commented 7 years ago

linux jvm perf, flame graph http://batey.info/docker-jvm-flamegraphs.html

at15 commented 7 years ago

redhat, also suggest a lot of performance monitoring stuff http://www.breakage.org/2014/06/06/getting-started-with-performance-analysis-of-docker/

at15 commented 7 years ago

you can also run Spark on Mesos http://spark.apache.org/docs/latest/running-on-mesos.html

at15 commented 7 years ago

a talk mentioned by java docker flame graph https://www.youtube.com/watch?v=7PkkxDaFDj8

at15 commented 7 years ago

for monitoring a long running process, you can add sleep ... though I don't understand why

https://perf.wiki.kernel.org/index.php/Tutorial Attaching to a running process

ps ax | fgrep sshd

 2262 ?        Ss     0:00 /usr/sbin/sshd -D
 2787 pts/0    S+     0:00 fgrep --color=auto sshd

perf stat -e cycles -p 2262 sleep 2

 Performance counter stats for process id '2262':

    <not counted> cycles

       2.001263149  seconds time elapsed

TODO: but why the result it not counted ...

because the time is too short

sudo perf stat -p 17025 sleep 100 make the sleep longer and it will work, though I don't know if the sleep is the shell's sleep or something built into perf

at15 commented 7 years ago

google has pprof