Commit Graph

487 Commits

Author SHA1 Message Date
ecaccfd8d0 sample-package: hack to use host clang
-static is required, otherwise the dynamic linker is wrong.

There is no clang support in Buildroot it seems:
https://elinux.org/Buildroot:GSoC2017Ideas#Support_for_LLVM

Initially done for:
https://github.com/cirosantilli/linux-kernel-module-cheat/issues/22
2018-04-08 12:59:04 +01:00
105c506ac6 sample-package: create 2018-04-08 12:49:12 +01:00
c5f4d2289e readme: -monitor is what is killing out ctrl-c 2018-04-08 11:41:34 +01:00
294a8c2424 docker: crate docker host setup
readme: standardize keyboard input notation to the format: Ctrl-C
2018-04-08 10:27:26 +01:00
ecf2f3b29e build: use nproc instead of nproc - 2
Someone was trying to build on a 1 core machine and it broke the build.

The rationale for the -2 was to leave 2 cores for your to use your computer still,
but let us trust the OS scheduler a bit more.
2018-04-07 19:57:41 +01:00
d5950cb499 readme: benchmark initial build is on p51 2018-04-07 18:50:40 +01:00
cc190fd355 readme: fix all broken asciidoctor links.
Add the -v flag to build-doc to help catch them later.
2018-04-07 18:46:26 +01:00
10348beeff bench-boot and trace-boot: make keys more pareseable and meaningful 2018-04-07 18:31:55 +01:00
5285af405e build-all: create 2018-04-06 02:16:50 +01:00
4827ba037d gem5-bench-cache: fix removal of existing checkpoints 2018-04-06 02:12:48 +01:00
6a745855d7 Merge commit '7d9102373d60bd159920abfe96d636420afedd67' 2018-04-06 01:35:24 +01:00
9405b35ad2 Create data/ dir, move cli, 9p and readfile there. 2018-04-06 01:02:41 +01:00
d23e7ee183 Use cleaner version of the linux kernel fork, no functional changes. 2018-04-05 23:44:10 +01:00
92fec4b748 bench-boot: add script, had forgotten previously 2018-04-05 22:53:39 +01:00
6692ec03f7 Linux v4.16 2018-04-05 22:37:08 +01:00
330edbe8eb Reorganize the benchmark section.
Automate Linux kernel measures and move them into that new section.
2018-04-05 22:36:46 +01:00
7d9102373d gem5-bench-cache: allow bench without regenerating checkpoints
Print Dhrystone size on the output as well.
2018-04-05 14:06:17 +01:00
8a68375b2e Merge branch 'master' of github.com:cirosantilli/linux-kernel-module-cheat 2018-04-05 09:59:56 +01:00
8a6e4bcd35 readme: document gem5 kvm failure error message 2018-04-05 09:59:45 +01:00
32920fd25d Reorganize the benchmark section.
Automate Linux kernel measures and move them into that new section.
2018-04-05 08:53:50 +01:00
e38a1dea92 Linux v4.16 2018-04-04 10:09:17 +01:00
f482f24f87 readme: explain how to run benchmarks with readfile straight out
gem5 cache automate benchmarks, and remove results that were scattered all over.

Move console fun under linux kernel section, since not important enough
for getting started.

Set arch x86_64 by default through common on all scripts.
2018-04-03 22:28:53 +01:00
0dd444d8eb readme: start update and automate gem5 cache benchmarks
Missing HPI.
2018-04-03 18:03:38 +01:00
f3503b4cc8 readme: link to gem5 perf so answer 2018-04-02 22:49:17 +01:00
12083ec1fa readme: console fun, arm /dev/fb0 works 2018-04-02 20:36:33 +01:00
ccc3a32581 parsec: update submodule 2018-04-02 19:51:41 +01:00
4462aa75ac gem5 readme: document failed restores on aarch64 2018-04-02 19:51:31 +01:00
1f5baf5371 gem5: m5 execfile 2018-04-01 22:47:55 +01:00
bf7f801706 parsec: export env outside of loop and before . env.sh, update submodule 2018-04-01 13:57:04 +01:00
7ab4191bec parsec: update 2018-04-01 12:14:54 +01:00
e6c8d2bfc3 parsec: export CC, CPP and CXX to try and make -p all work
It didn't, but we documented all remaining failures one by one.
2018-03-31 14:07:33 +01:00
56fd3975d6 gem5: benchmark x86 after gcc 7 2018-03-31 07:58:20 +01:00
4cb8a543ee gem5 build benchmark 2018-03-31 07:41:04 +01:00
af476687e1 gem5: x86_64 gcc 7 compilation was fixed after latest pull
So get rid of the specific gcc-6 and gcc-6 install.
2018-03-31 07:38:37 +01:00
5f2a6fbd8b readme: gem5 checkpoint restore and run another script 2018-03-31 07:20:57 +01:00
5235854384 Create the cli.gitignore mechanism to pass extra default cli options
Document that X11 mouse is not moving.

Convert x='' to x= on all scripts, and also fix case ;; indentations.

Add dummy value to QEMU's -trace enable= to prevent warning.

Expand built-in package choice rationale.
2018-03-30 17:03:17 +01:00
9076c1d9bc parsec: general cleanup, retest everything
Get rid of br2_parsec, since there are just too many possible variations on that file.

Blow up the gem5 vs qemu table to make it saner, add missing aarch64 entries.

Make sections titles describing number of cores and memory size emulator agnostic.
2018-03-29 21:16:50 +01:00
9afaecec87 readme: gem5 tracing.
Fix some parsec readme errors after missed ./run flag updates.
2018-03-29 18:24:25 +01:00
b6e8a7d1d1 parsec: fix aarch64 build
The error was:

[PARSEC] Error: Binary '/home/ciro/bak/git/linux-kernel-module-cheat/out/aarch64/buildroot/build/parsec-benchmark-custom/ext/splash2x/apps/barnes/inst/"aarch64"-linux.gcc/bin/run.sh' of package 'splash2x.barnes'
 cannot be found.

due to some quoting madness.
2018-03-29 11:41:05 +01:00
9fd72c786f Move all build and run output to out/$arch/
Most of it was present inside buildroot/output.* and the rest scattered
on top level.

This came about for the n-th time when we were reviewing QEMU trace file
locations.

On one hand, it would be cool to have per arch traces.

This made buildroot/output.${arch}~/ a natural choice.

But on the other, those traces have nothing to do with Buildroot,
and could potentially interfere with Buildroot build files.

It also feels nicer to have buildroot/ pristine source code only,
and keep all output under a single directory out/
2018-03-29 02:08:18 +01:00
01a84e7f79 OK, direct the annoying traces to the output folder
Otherwise it was getting messy to distinguish between trace-events
and trace-<pid> in the .gitignore.

Now only the latest trace will be kept, with a fixed name.
2018-03-28 23:09:01 +01:00
f74e001789 readme: m5 readfile
gitignore: trace-
2018-03-28 22:17:00 +01:00
f5065183a8 tracing: create trace2line
This lead to a re-factoring of count boot instructions, since trace2line
relies on the same tracing mechanism.

Also, now that we have common factored, I've decided to put the traces on
the out dir, to concentrate all outputs in a single place, and allow
easy switching between archs.
2018-03-28 14:12:03 +01:00
8f64af7303 readme: bibliography link to rwmj 2018-03-27 16:16:49 +01:00
dda6ec956c readme: m5 writefile
Document that we couldn't step debug m5.
2018-03-27 16:06:12 +01:00
1c3f16797a readme: more failed attempts at ttys! 2018-03-27 14:00:32 +01:00
ac67ce3643 Login without asking for the username
We have wanted to do this since forever, but the last straw was gem5 aarch64,
which runs too fast, and makes it very hard to write "root" withing 60 seconds!

Another possibility to solve that would have been to find an answer for:
https://unix.stackexchange.com/questions/340333/how-can-i-get-bin-login-to-not-timeout
which we didn't, but not typing root at all is even better.

Take this opportunity to document how to login into user0.

sshd: automate and document further

gdbserver: automatically startup internet on /gdbserver.sh
2018-03-26 13:19:54 +01:00
00bce69784 parsec: fix build undefined $(D) to $(@D) 2018-03-26 10:27:22 +01:00
bcbc7b4c5c doc: remove forgotten references to ./run -n 2018-03-26 10:19:51 +01:00
1a0330c942 readme: text mode reproducibility and interrupts 2018-03-25 22:56:42 +01:00