Open xjtuwxg opened 5 years ago
We should try to get the tests to cover entire popcorn protocol, which may mean sharing threads between three different machines and ensuring the pages are fetched from the correct machines. It would be useful to first enumerate all possible protocol states.
Article on linux kernel testing philosophy: https://www.linuxjournal.com/content/linux-kernel-testing-and-debugging Possibly related: http://linux-test-project.github.io/
Linux test scripts can be found in https://github.com/ssrg-vt/popcorn-kernel/tree/master/tools/testing/selftests Here are the virtual memory tests they created: https://github.com/ssrg-vt/popcorn-kernel/tree/master/tools/testing/selftests/vm
In particular, we may want to take a look at https://github.com/ssrg-vt/popcorn-kernel/blob/master/tools/testing/selftests/vm/userfaultfd.c
Collect a set of test applications for popcorn. It would be useful for popcorn upgrade and future dev. Use this issue to track the collected applications. -------------Updated-------------- For x86 vanilla popcorn: popcorn-kernel-lib:
echo 0 > /tmp/ping
,echo 1 > /tmp/ping on two nodes
)./kmeans -c 10 -n 2 -t 1 -p 5000
)For arm64 vanilla popcorn: popcorn-kernel-lib:
echo 0 > /tmp/ping
,echo 1 > /tmp/ping on two nodes
)./kmeans -c 10 -n 2 -t 1 -p 5000
)The top-of-tree x86 popcorn Linux: popcorn-kernel-lib:
echo 0 > /tmp/ping
,echo 1 > /tmp/ping on two nodes
)./kmeans -c 10 -n 2 -t 1 -p 5000
)The top-of-tree arm64 popcorn Linux:
71 #72 #69