- 22 Jul, 2020 1 commit
-
-
FritzFlorian committed
-
- 30 Jun, 2020 1 commit
-
-
FritzFlorian committed
-
- 11 Jun, 2020 1 commit
-
-
FritzFlorian committed
-
- 09 Jun, 2020 2 commits
-
-
This avoids issues with doubling the measurement vector sizes influencing memory measures.
FritzFlorian committed -
FritzFlorian committed
-
- 04 Jun, 2020 1 commit
-
-
FritzFlorian committed
-
- 03 Jun, 2020 1 commit
-
-
The strain_local resources can be used to get unique IDs for resources that would, in a serial execution, only be used once in the call chain. This is a first prototype implementation and needs further tesitng. The current implementation adds linear overhead to each steal proportional to the number of used resources. We might be able to reduce it, but for a first version it is fine.
FritzFlorian committed
-
- 29 May, 2020 1 commit
-
-
The flag can be used to run code annotated with PLS outside of a scheduler environment, i.e. the app does not crash if the code is called without context. The compile option allows to omit all spawn and sync calls during compilation, creating the equivalent serial code.
FritzFlorian committed
-
- 27 May, 2020 1 commit
-
-
FritzFlorian committed
-
- 19 May, 2020 1 commit
-
-
FritzFlorian committed
-
- 16 May, 2020 1 commit
-
-
Remove easy profiler for now. It might be useful for later on to get a grasp of general behaviour, but because of its issues with coroutines it is not worth profiling code with it right now.
FritzFlorian committed
-
- 30 Mar, 2020 1 commit
-
-
FritzFlorian committed
-
- 24 Mar, 2020 1 commit
-
-
It is now possible to use a memory mapped stack that throws a SIGSEV if thes coroutine stacks are exhausted.
FritzFlorian committed
-
- 09 Feb, 2020 2 commits
-
-
FritzFlorian committed
-
FritzFlorian committed
-
- 05 Feb, 2020 1 commit
-
-
FritzFlorian committed
-
- 03 Feb, 2020 1 commit
-
-
FritzFlorian committed
-
- 30 Jan, 2020 1 commit
-
-
We still see very sporadic crashes, however the current version is at least a starting point for refactoring and debugging. Next steps have to be to re-enable tooling support (i.e. add code to let sanitizers do their work).
FritzFlorian committed
-
- 29 Jan, 2020 1 commit
-
-
The current version has race conditions and is hard to debug (especially because of the fibers, if a wrong thread executes on a fiber we get segfalts very fast). To combat this mess we now refactor the code bit by bit while also adding tests where it can be done with reasonably effort).
FritzFlorian committed
-
- 27 Jan, 2020 2 commits
-
-
The project is currently really messy and there are sporadic sigsevs. This indicates that we still have a race in our code. Thread Sanitizer does not work with our current implementation, as it needs annotations for fibers. The next step is to clean up the project and maybe add thread sanitizer support to our fiber implementation. This should help finding the remaining bugs.
FritzFlorian committed -
FritzFlorian committed
-
- 26 Jan, 2020 1 commit
-
-
FritzFlorian committed
-
- 24 Jan, 2020 2 commits
-
-
The deque trades tasks when stealing. Right now only the fast local path is tested and implemented. For the next step to work we also need to add the resource stack and resource tarding to the system.
FritzFlorian committed -
The current state shows the minimum actions taken to execute a parallel call: get the thread local, find the active frame, execute on the next frame and return to the active frame.
FritzFlorian committed
-
- 23 Jan, 2020 1 commit
-
-
FritzFlorian committed
-
- 04 Jan, 2020 1 commit
-
-
FritzFlorian committed
-
- 20 Dec, 2019 1 commit
-
-
FritzFlorian committed
-
- 05 Dec, 2019 1 commit
-
-
The idea is to exclude as many sources as possible that could lead to issues with contention and cache misses. After some experimentation, we think that hyperthreading is simply not working very well with our kind of workload. In the future we might simply test on other hardware.
FritzFlorian committed
-
- 04 Dec, 2019 1 commit
-
-
FritzFlorian committed
-
- 29 Nov, 2019 2 commits
-
-
This version runs through our initial fft and fib tests. However, it is not tested further in any way. Additionally, we added a locking deque, potentially hurting performance and moving away from our initial goal.
FritzFlorian committed -
The main issue seems to still be the fact that we have a lock free protocol where a steal can be pending. We plan to remove this fact next by introducing a protocol that works on a single atomic update.
FritzFlorian committed
-
- 25 Nov, 2019 1 commit
-
-
We changed up some of the memory constraints in the lock free deque and will need to see if this is ok. If so, the single threaded performance looks very good.
FritzFlorian committed
-
- 01 Aug, 2019 1 commit
-
-
This allows the stack and deque class to use the same offset, making it work better with each other.
FritzFlorian committed
-
- 20 Jun, 2019 1 commit
-
-
Florian Fritz committed
-
- 12 Jun, 2019 1 commit
-
-
Now all algorithms are used without the parallel pre-/suffix and the for_each method has an specialization for integer ranges.
FritzFlorian committed
-
- 16 May, 2019 1 commit
-
-
FritzFlorian committed
-
- 02 May, 2019 1 commit
-
-
FritzFlorian committed
-
- 30 Apr, 2019 1 commit
-
-
FritzFlorian committed
-
- 17 Apr, 2019 1 commit
-
-
FritzFlorian committed
-
- 09 Apr, 2019 1 commit
-
-
We do this to properly separate the cache alginment logic in the next step, allowing us to port all cache aligned objects without worrying about portability.
FritzFlorian committed
-