Commit Graph

23 Commits

Author SHA1 Message Date
Ciro Santilli
56738a1c70 lkmc v2-rc
Unsquashed version at v2-rc-unsquashed, but that cannot be merged as it
breaks bisects at several points. All bugs will not bisect to this
humongous change.

It all started with a conversion of the Bash scripts to Python, mainly
because I couldn't stand not being able to properly use --options for
run which has a million options.

Then since that required a full testing, I decided to do all the
refactorings that I had in mind at once, and so I did and it became
v2-rc.

This is the largest patch I have ever done! OMG a few weeks of extra time.
I'm never writing a Bash script for anything that starts getting big again.

Some of the features are:

* separate build-qemu and build-gem5 commands
* common: convert scripts to python. Add --option for everything
* rename build to build-buildroot now that we are splitting all the build
  commands, Linux kernel to follow
* move all git submodules to submodules/ and all buildroot packages to
  packages/
* refactor the out/ structure. Keep projects on toplevel, because guest
  projects separate archs and host ones don't, making a toplevel arch wrong
* do-release: rename to just release
  https://stackoverflow.com/questions/16174992/cant-get-argparse-to-read-quoted-string-with-dashes-in-it
* run: add --terminal and explain gem5 pdb
* just track the lvimrc
* store CLI kernel config fragment inside buildlroot to avoid conflicts
* gem5: document m5 initparam
* readme: make a bunch of things awesomer
* readme: fix broken refs
* parsec-benchmark: update to 75d55ac446a43c47efb1044844a108c6c330184c
  Could not fetch otherwise.
* gem5: M5_OVERRIDE_PY_SOURCE
2018-09-14 07:42:31 +01:00
Ciro Santilli
f10ef3a467 bench-all: add build benchmarks and make all benchmarks options
run: fix ./run -gu broken behaviour. Document ./tmu window switch failure.

readme: move travis failed attempt to readme.
2018-04-22 21:09:17 +01:00
Ciro Santilli
330edbe8eb Reorganize the benchmark section.
Automate Linux kernel measures and move them into that new section.
2018-04-05 22:36:46 +01:00
Ciro Santilli
ccc3a32581 parsec: update submodule 2018-04-02 19:51:41 +01:00
Ciro Santilli
1f5baf5371 gem5: m5 execfile 2018-04-01 22:47:55 +01:00
Ciro Santilli
bf7f801706 parsec: export env outside of loop and before . env.sh, update submodule 2018-04-01 13:57:04 +01:00
Ciro Santilli
7ab4191bec parsec: update 2018-04-01 12:14:54 +01:00
Ciro Santilli
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
Ciro Santilli
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
Ciro Santilli
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
Ciro Santilli
00bce69784 parsec: fix build undefined $(D) to $(@D) 2018-03-26 10:27:22 +01:00
Ciro Santilli
29908dffb2 Disable networking at runtime with lkmc_nonet cli instead of build
This is necessary because qemu and gem5 now use the same build folder.

Separate ./run -e and -f for kernel options before and after the ' - '.
This was already the better thing to do when -E was introduced,
but lkmc_nonet prompted me to do it nicer now.

Use the common script to find the out_dir on every toplevel script.

Include usage man pages on README.
2018-03-22 02:47:14 +00:00
Ciro Santilli
a033e6444c parsec: move test.sh into the parsec repo 2018-03-21 16:44:19 +00:00
Ciro Santilli
7b08433840 9p mount the output directory.
This is in preparation for moving parsec to 9p once we get it working on gem5.

We'll document it then when everything is working.
2018-03-11 22:00:55 +00:00
Ciro Santilli
4ccf3784cf parsec: clean up Config.in help 2018-03-10 18:45:45 +00:00
Ciro Santilli
efb9c5458e parsec: more details, fix errors, more tests 2018-03-10 18:22:09 +00:00
Ciro Santilli
7630a62b44 update parsec bench 2018-03-09 19:07:21 +00:00
Ciro Santilli
32a543c5db parsec: test must be run with test input size 2018-03-09 04:22:30 +00:00
Ciro Santilli
03b1a720c4 parsec: test.sh with many raw run commands 2018-03-08 09:04:17 +00:00
Ciro Santilli
9cbade209b parsec: remove parsec.sh leftover 2018-03-08 08:48:30 +00:00
Ciro Santilli
a5eda22ac1 Organize benchmarks for this repo 2018-03-08 08:14:35 +00:00
Ciro Santilli
ad3c48dfee Rename parsec to parsec_benchmark 2018-03-07 23:57:17 +00:00
Ciro Santilli
6e15dcb60e Start sketching parsec buildroot package 2018-03-03 13:45:58 +00:00