Open Elocien opened 3 years ago
Thanks! This is strange indeed. Since you are running this on a Mac Book: Do you have an x86 or an ARM-based processor (M1)? The C++ runtime isn't tested on ARM and there could be issues with incorrect usage of atomic variables (this is a lot trickier on ARM).
I'm running this on an x86 processor
Just did a fresh installation of lfc and did multiple reruns of the benchmarks CigraretteSmoker and FilterBank.
On the first run of FilterBank I got a Segmentation Error: [INFO] Starting the execution Benchmark: FilterBankBenchmark Arguments: numIterations = 12 numSimulations = 34816 numColumns = 16384 numChannels = 8 System information: O/S Name = Mac OSX Iteration 1 - 1561.76 ms Iteration 2 - 1376.66 ms Iteration 3 - 1278.81 ms Iteration 4 - 1267.52 ms Iteration 5 - 1274.12 ms Iteration 6 - 1255.24 ms Iteration 7 - 1261.75 ms Iteration 8 - 1252.3 ms Iteration 9 - 1260.98 ms Iteration 10 - 1271.17 ms Iteration 11 - 1264.25 ms Iteration 12 - 1265.94 ms
Execution - Summary: [1] 13283 segmentation fault benchmark/Cpp/Savina/src/bin/FilterBank
The second and third run resulted in the same errors as above.
CigaretteSmoker, on the other hand, ran without problem multiple times.
There must be some concurrency bug in the handling of shutdown. So far I haven't seen segmentation faults, but some programs occasionally deadlock. I will have another close look at this and see if I can spot the bug.
I didn't experience any problems running lingua-franca / reactor-cpp on arm. I tested my little project on armv6, armv6 and aarch64.
@cmnrd I think a good test would be to apply the strict memory orders (sequentially consistent ordering) and let him re-run the tests and see if the issue persists.
@Elocien You really encountered this problem only with FilterBank and the CigraretteSmokers Tests right ?
There must be some concurrency bug in the handling of shutdown. So far I haven't seen segmentation faults, but some programs occasionally deadlock.
I reproduced this twice with FilterBank and once with Throughput today (e.g., here). In my experience, the bug is common enough to make it challenging to get complete benchmark results.
Cigarette Smoker Benchmark