- Mar 14, 2022
-
-
Florian Schmaus authored
Improve terminology See merge request i4/manycore/emper!363
-
- Mar 05, 2022
-
-
Florian Schmaus authored
To avoid confusing the fork with a heavyweight (Unix) fork(), we use spawn/sync instead of fork/join in Fibril.
-
Florian Schmaus authored
While extensibility is still a feature of EMPER, a more important aspect is its efficiency.
-
- Mar 04, 2022
-
-
Florian Schmaus authored
Introduce EMPER_ASSERT_MSG See merge request i4/manycore/emper!361
-
Florian Schmaus authored
[log] Improve timestamp format: HHMM.SS mmmuuunnn See merge request i4/manycore/emper!360
-
- Mar 02, 2022
-
-
Florian Schmaus authored
-
Florian Schmaus authored
-
- Feb 28, 2022
-
-
Florian Schmaus authored
print blocked context FromAnywhere stats when STATS_BLOCKED_CONTEXT is set See merge request i4/manycore/emper!359
-
Florian Fischer authored
This is analogue to what we do in emper/stats/worker.cpp since 46302a0f.
-
Florian Schmaus authored
Add worker sleep stats, rework stats machinery See merge request i4/manycore/emper!358
-
Florian Schmaus authored
This further split up the stats machinery into smaller parts.
-
Florian Schmaus authored
The idea of the new stats machinery is that 'stats' becomes an option that enables the basic stats gathering infrastructure in EMPER. At some point, it should become a non-user option, i.e., it should be remove from meson_options.txt. Then comes a layer of fine-grained stats control switches, which default to 'auto'. Third, a new option called 'stats_all' is added, which, if enabled, activates all fine-graind stats knobs that are set to 'auto'.
-
- Feb 27, 2022
-
-
Florian Schmaus authored
fix lockless io-stealing See merge request i4/manycore/emper!357
-
Florian Schmaus authored
-
- Feb 26, 2022
-
-
Florian Schmaus authored
-
Florian Fischer authored
The uninitialized continuation pointer may be returned without being written resulting in dispatching a not valid fiber pointer. If a CQE is stolen but no fiber is blocked on the corresponding future IoContext::getContinuationsFromCompletions will call future->completeAndGetContinuation which will set the future's completion but will not return a continuation. If no continuation is returned from Future::completeAndGetContinuation the continuation buffer is not advanced by IoContext::getContinuationsFromCompletions (emper/io/IoContext.hpp:259). IoContext::reapSingleCompletion does not check if a continuation was created and assumed that continuation contains a valid Fiber* if a CQE was successfully stolen. Initialize continuation with nullptr, which is a valid Fiber*.
-
Florian Fischer authored
-
Florian Schmaus authored
Minor changes of top-level files See merge request i4/manycore/emper!356
-
Florian Schmaus authored
-
Florian Schmaus authored
-
Florian Schmaus authored
Extend emper::printInfo() See merge request !355
-
Florian Schmaus authored
Add more CL Queue implementations See merge request i4/manycore/emper!354
-
Florian Schmaus authored
Work-Stealing queue fill-size stats See merge request i4/manycore/emper!353
-
- Feb 25, 2022
-
-
Florian Schmaus authored
-
Florian Schmaus authored
-
Florian Schmaus authored
-
Florian Schmaus authored
The calculation was previously done using integers, this lead to MEMORY_MANAGER_VICTIM_PERCENTAGE to become 0.
-
Florian Schmaus authored
The MemoryManager uses lib::adt::wsqueue::Default as work-stealing queue implementation. The reference to WsClQueue would break if e.g., ws_queue_default=cl4, since the type would not exist.
-
- Feb 24, 2022
-
-
Florian Schmaus authored
-
Florian Schmaus authored
In case pushing to the local work-stealing queue fails because the queue is full, and that failure is not fatal as it is in Fibril, emit a warning once.
-
Florian Schmaus authored
-
Florian Schmaus authored
This result also contains the observed queue size at the moment of the push.
-
- Feb 23, 2022
-
-
Florian Fischer authored
Fix fsearch by using a sharded file buffer See merge request i4/manycore/emper!352
-
- Feb 22, 2022
-
-
Florian Schmaus authored
Also rename 'res' to 'pushed' and only notify about new work if there was work pushed.
-
Florian Schmaus authored
-
Florian Schmaus authored
-
Florian Fischer authored
Each worker thread has it own stringstream per ShardedFileBuffer. All streams are joined and flushed to the file when a ShardedFileBuffer is destructed. Flushing a ShardedFileBuffer is not thread-safe and must not be called concurrently to any modifications to the ShardedFileBuffer. Use a ShardedFileBuffer to accumulate and print all paths during fsearch.
-
- Feb 21, 2022
-
-
Florian Fischer authored
-
Florian Schmaus authored
[StealingResult] Improve docstring See merge request i4/manycore/emper!349
-
Florian Fischer authored
fsearch: write only found files to stdout and use implicit file offset See merge request i4/manycore/emper!350
-