From a7a3dc9be3723a3dd2316bd1102c8247d9be036b Mon Sep 17 00:00:00 2001 From: FritzFlorian Date: Wed, 17 Apr 2019 09:55:13 +0200 Subject: [PATCH] Add further notes on our findings on preformance issues. --- PERFORMANCE.md | 36 ++++++++++++++++++++++++++++++++++++ README.md | 4 ++++ media/b9bb90a4-banana-pi-average-case.png | Bin 0 -> 219279 bytes media/b9bb90a4-banana-pi-best-case.png | Bin 0 -> 205003 bytes media/b9bb90a4-laptop-average-case.png | Bin 0 -> 201049 bytes media/b9bb90a4-laptop-best-case.png | Bin 0 -> 198276 bytes 6 files changed, 40 insertions(+) create mode 100644 media/b9bb90a4-banana-pi-average-case.png create mode 100644 media/b9bb90a4-banana-pi-best-case.png create mode 100644 media/b9bb90a4-laptop-average-case.png create mode 100644 media/b9bb90a4-laptop-best-case.png diff --git a/PERFORMANCE.md b/PERFORMANCE.md index 2372c66..c19cc1c 100644 --- a/PERFORMANCE.md +++ b/PERFORMANCE.md @@ -3,6 +3,10 @@ #### Commit 52fcb51f - Add basic random stealing Slight improvement, needs further measurement after removing more important bottlenecks. +Below are three individual measurements of the difference. +Overall the trend (sum of all numbers/last number), +go down (98.7%, 96.9% and 100.6%), but with the one measurement +above 100% we think the improvements are minor. | | | | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | @@ -27,3 +31,35 @@ change | 98.96 %| 100.93 %| 96.13 %| 104.21 %| 103.86 %| Big improvements of about 6% in our test. This seems like a little, but 6% from the scheduler is a lot, as the 'main work' is the tasks itself, not the scheduler. + +This change unsurprisingly yields the biggest improvement yet. + +#### Commit b9bb90a4 - Try to figure out the 'high thread bottleneck' + +We are currently seeing good performance on low core counts +(up to 1/2 of the machines cores), but after that performance +plumishes: + +Bana-Pi Best-Case: + + + +Bana-Pi Average-Case: + + + +Laptop Best-Case: + + + +Laptop Average-Case: + + + + +As we can see, in average the performance of PLS starts getting +way worse than TBB and EMBB after 4 cores. We suspect this is due +to contemption, but could not resolve it with any combination +of `tas_spinlock` vs `ttas_spinlock` and `lock` vs `try_lock`. + +This issue clearly needs further investigation. diff --git a/README.md b/README.md index 8ec38b4..16565fa 100644 --- a/README.md +++ b/README.md @@ -8,6 +8,10 @@ This section will give a brief introduction on how to get a minimal project setup that uses the PLS library. +Further notes on [performance](PERFORMANCE.md) and general +[notes](NOTES.md) on the development progress can be found in +the linked documents. + ### Installation Clone the repository and open a terminal session in its folder. diff --git a/media/b9bb90a4-banana-pi-average-case.png b/media/b9bb90a4-banana-pi-average-case.png new file mode 100644 index 0000000..0d414cb Binary files /dev/null and b/media/b9bb90a4-banana-pi-average-case.png differ diff --git a/media/b9bb90a4-banana-pi-best-case.png b/media/b9bb90a4-banana-pi-best-case.png new file mode 100644 index 0000000..b090449 Binary files /dev/null and b/media/b9bb90a4-banana-pi-best-case.png differ diff --git a/media/b9bb90a4-laptop-average-case.png b/media/b9bb90a4-laptop-average-case.png new file mode 100644 index 0000000..8153ac1 Binary files /dev/null and b/media/b9bb90a4-laptop-average-case.png differ diff --git a/media/b9bb90a4-laptop-best-case.png b/media/b9bb90a4-laptop-best-case.png new file mode 100644 index 0000000..57bb039 Binary files /dev/null and b/media/b9bb90a4-laptop-best-case.png differ -- libgit2 0.26.0