# # ChangeLog for libcfa/src/concurrency/kernel.cfa # # Generated by Trac 1.2.1 # Apr 28, 2024, 9:37:15 AM Thu, 01 Dec 2022 03:36:25 GMT Peter A. Buhr [dd46fd3] * libcfa/src/bits/random.hfa (modified) * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) * libcfa/src/startup.cfa (modified) * libcfa/src/stdlib.cfa (modified) * libcfa/src/stdlib.hfa (modified) * tests/.expect/nested_function.x64.txt (modified) generalization of PRNG Thu, 10 Nov 2022 17:17:20 GMT Thierry Delisle [a757ba1] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/private.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) Removed wait-with-io_uring feature which was slow, broken and ifdefed ... Fri, 28 Oct 2022 21:30:57 GMT Thierry Delisle [15c93d8] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/cluster.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/ready_subqueue.hfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Renamed ready-queue link fields to rdy_link Fri, 28 Oct 2022 18:57:20 GMT Thierry Delisle [28372f7] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/private.hfa (modified) Changed to park/unpark permit/ticketing to make sure no one unparks a ... Thu, 27 Oct 2022 14:55:20 GMT Thierry Delisle [878cfcc] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Added extra check to make sure threads is never double executed Mon, 15 Aug 2022 15:19:28 GMT Thierry Delisle [8bee858] * benchmark/io/http/protocol.cfa (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/call.cfa.in (modified) * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/io/types.hfa (modified) * libcfa/src/concurrency/iofwd.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/cluster.cfa (modified) * libcfa/src/concurrency/kernel/private.hfa (modified) * tests/io/away_fair.cfa (modified) Changed io types to have trailing $ instead of leading Wed, 08 Jun 2022 20:22:24 GMT caparsons [ced5e2a] * libcfa/src/bits/locks.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/startup.cfa (modified) removed debug fields from spinlock_t Mon, 16 May 2022 16:08:36 GMT Thierry Delisle [c18bf9e] * libcfa/src/bits/weakso_locks.cfa (modified) * libcfa/src/concurrency/alarm.cfa (modified) * libcfa/src/concurrency/clib/cfathread.cfa (modified) * libcfa/src/concurrency/coroutine.cfa (modified) * libcfa/src/concurrency/coroutine.hfa (modified) * libcfa/src/concurrency/exception.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/cluster.cfa (modified) * libcfa/src/concurrency/kernel/private.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/locks.cfa (modified) * libcfa/src/concurrency/monitor.cfa (modified) * libcfa/src/concurrency/monitor.hfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Visibility concurrency Wed, 30 Mar 2022 20:51:07 GMT Thierry Delisle [4ccc150] * libcfa/src/concurrency/kernel.cfa (modified) Fix the verifys I just added. Wed, 30 Mar 2022 20:40:11 GMT Thierry Delisle [77adaee] * libcfa/src/concurrency/kernel.cfa (modified) Added more verifys to eventfd_write Wed, 30 Mar 2022 17:37:06 GMT Thierry Delisle [efa28d5] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) Change wake_time to be as long as other timestamps to ease debugging. Tue, 29 Mar 2022 21:19:11 GMT Thierry Delisle [d080549] * libcfa/src/concurrency/kernel.cfa (modified) Added a verify for the result of wake_proc Tue, 29 Mar 2022 20:27:52 GMT Thierry Delisle [262fafd9] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) Added debugging information to help find deadlock. Mon, 28 Mar 2022 20:00:32 GMT Thierry Delisle [18f7858] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) Refactored io to allow holding the lock duirng idle sleep Fri, 25 Mar 2022 17:48:46 GMT Thierry Delisle [202c80b] * libcfa/src/concurrency/kernel.cfa (modified) Added verify and changed print_now to not ignore flags. Tue, 22 Mar 2022 20:59:53 GMT Thierry Delisle [4479890] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/types.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/cluster.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Implemented helping for io drain based on timestamps. Tue, 22 Mar 2022 19:28:29 GMT Thierry Delisle [78a580d] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/io/types.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/cluster.cfa (modified) * libcfa/src/concurrency/kernel/cluster.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) I/O now updates the timestamps when draining. Timestamps are not ... Mon, 21 Mar 2022 17:28:59 GMT Thierry Delisle [4ecc35a] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/io/types.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) Added spin lock to io drain. last step before completion fairness Fri, 18 Mar 2022 16:42:39 GMT Thierry Delisle [22226e4] * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) Tentative fix for spurious deadlock in some concurrency tests Tue, 15 Mar 2022 21:11:50 GMT Thierry Delisle [708ae38] * libcfa/src/Makefile.am (modified) * libcfa/src/concurrency/coroutine.cfa (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/cluster.cfa (modified) * libcfa/src/concurrency/kernel/cluster.hfa (added) * libcfa/src/concurrency/kernel/private.hfa (moved) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/locks.cfa (modified) * libcfa/src/concurrency/monitor.cfa (modified) * libcfa/src/concurrency/mutex.cfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Some more cleanup and grow/shrink now readjusts io timestamps. (They ... Mon, 14 Mar 2022 19:00:06 GMT Thierry Delisle [bfb9bf5] * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/cluster.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Fixed some warnings Thu, 03 Mar 2022 20:17:05 GMT Thierry Delisle [d529ad0] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) Pending/Dirty flags now use relaxed atomics since they can be set ... Sun, 30 Jan 2022 18:16:50 GMT Thierry Delisle [c9c1c1c] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (modified) Minor changes to kernel main loop and fixed stats. Thu, 27 Jan 2022 18:16:42 GMT Thierry Delisle [040334e] * libcfa/src/concurrency/kernel.cfa (modified) Removed so-called 'new proc main' which wasn't useful. Wed, 26 Jan 2022 23:15:08 GMT Thierry Delisle [70b4aeb9] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) Commit last changes before moving off plg7a Tue, 25 Jan 2022 21:16:00 GMT Thierry Delisle [7cf3b1d] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) Added level of indirection to idle sleeps which helps statistics. Tue, 11 Jan 2022 00:11:25 GMT Thierry Delisle [5b7a3662] * libcfa/src/concurrency/kernel.cfa (modified) Tentative optimization for wake-one Mon, 10 Jan 2022 21:12:19 GMT Thierry Delisle [078fb05] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Fixed a few warnings Fri, 07 Jan 2022 18:20:50 GMT Thierry Delisle [7d0ebd0] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) Processors should now correctly be unconditionnaly woken-up on ... Mon, 29 Nov 2021 21:58:54 GMT Thierry Delisle [d3605f8] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) Reworked io_uring idle sleep to work with either read or readv ... Mon, 29 Nov 2021 21:05:43 GMT Thierry Delisle [3bb4f85] * libcfa/src/concurrency/kernel.cfa (modified) Kernel now waits for eventfd read to flush before terminating. Mon, 29 Nov 2021 17:52:14 GMT Thierry Delisle [a1f3d93] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * src/AST/Decl.hpp (modified) * src/AST/Print.cpp (modified) * src/AST/Print.hpp (modified) * src/Concurrency/Keywords.cc (modified) * src/InitTweak/InitTweak.cc (modified) * src/InitTweak/InitTweak.h (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Mon, 29 Nov 2021 17:50:31 GMT Thierry Delisle [c7b2215] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) Fix implementation of io_uring_enter instead of eventfds. Mon, 22 Nov 2021 19:18:56 GMT Thierry Delisle [6ddef36] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) No longer define __kernel_read when not needed. Mon, 22 Nov 2021 18:07:05 GMT Thierry Delisle [7ef162b2] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/io/types.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) First attempt at using io_uring_enter for idle sleep. Fri, 19 Nov 2021 20:53:47 GMT Thierry Delisle [059ad16] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) Flush now supports blocking until at least one I/O op terminates. Fri, 19 Nov 2021 20:03:54 GMT Thierry Delisle [1757f98] * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) Refactoring idle sleep to try and help the change from idle on read ... Fri, 19 Nov 2021 16:39:35 GMT Thierry Delisle [a633f6f] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) Fix the new FD change. Fri, 19 Nov 2021 16:23:24 GMT Thierry Delisle [b14ec5f] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Fri, 19 Nov 2021 16:23:17 GMT Thierry Delisle [34b8cb7] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) Step 1 of a new scheme to simplify wake_one. Wed, 17 Nov 2021 16:17:59 GMT Thierry Delisle [5f5a729] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) Mark idle now uses try_lock semantics Wed, 29 Sep 2021 22:37:12 GMT Thierry Delisle [c33c2af] * libcfa/src/concurrency/kernel.cfa (modified) Made some of the schedule locking more fine grain. Thu, 23 Sep 2021 18:18:01 GMT Thierry Delisle [24e321c] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Unpark now takes a hint on locality. Thu, 23 Sep 2021 16:29:35 GMT Thierry Delisle [abcae55] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Removed last_cpu (and small spacing changes) Thu, 23 Sep 2021 16:25:57 GMT Thierry Delisle [ec421636] * libcfa/src/concurrency/kernel.cfa (modified) No longer using eventfd_read to avoid the poor interrupt handling. Mon, 13 Sep 2021 20:56:13 GMT Thierry Delisle [445f984] * libcfa/src/concurrency/kernel.cfa (modified) Forgot to commit changes to include. Mon, 13 Sep 2021 17:41:57 GMT Thierry Delisle [56e5b24] * libcfa/src/concurrency/kernel.cfa (modified) Manually read from event fd instead of calling eventfd_read, which ... Wed, 07 Jul 2021 22:24:42 GMT Thierry Delisle [c86ee4c] * benchmark/readyQ/rq_bench.hfa (modified) * benchmark/readyQ/transfer.cfa (modified) * benchmark/size/size.cfa (modified) * doc/theses/andrew_beach_MMath/code/CondCatch.java (moved) * doc/theses/andrew_beach_MMath/code/CrossCatch.java (modified) * doc/theses/andrew_beach_MMath/code/CrossFinally.java (modified) * doc/theses/andrew_beach_MMath/code/ThrowEmpty.java (modified) * doc/theses/andrew_beach_MMath/code/ThrowFinally.java (modified) * doc/theses/andrew_beach_MMath/code/ThrowOther.java (modified) * doc/theses/andrew_beach_MMath/code/cond-catch.cfa (moved) * doc/theses/andrew_beach_MMath/code/cond-catch.cpp (moved) * doc/theses/andrew_beach_MMath/code/cond-fixup.cfa (moved) * doc/theses/andrew_beach_MMath/code/cross-catch.cfa (modified) * doc/theses/andrew_beach_MMath/code/cross-catch.cpp (modified) * doc/theses/andrew_beach_MMath/code/cross-finally.cfa (modified) * doc/theses/andrew_beach_MMath/code/cross-resume.cfa (modified) * doc/theses/andrew_beach_MMath/code/resume-detor.cfa (modified) * doc/theses/andrew_beach_MMath/code/resume-empty.cfa (modified) * doc/theses/andrew_beach_MMath/code/resume-finally.cfa (modified) * doc/theses/andrew_beach_MMath/code/resume-other.cfa (modified) * doc/theses/andrew_beach_MMath/code/test.sh (added) * doc/theses/andrew_beach_MMath/code/throw-detor.cfa (modified) * doc/theses/andrew_beach_MMath/code/throw-detor.cpp (modified) * doc/theses/andrew_beach_MMath/code/throw-empty.cfa (modified) * doc/theses/andrew_beach_MMath/code/throw-empty.cpp (modified) * doc/theses/andrew_beach_MMath/code/throw-finally.cfa (modified) * doc/theses/andrew_beach_MMath/code/throw-other.cfa (modified) * doc/theses/andrew_beach_MMath/code/throw-other.cpp (modified) * libcfa/prelude/builtins.c (modified) * libcfa/src/bits/weakso_locks.cfa (modified) * libcfa/src/bits/weakso_locks.hfa (modified) * libcfa/src/concurrency/alarm.cfa (modified) * libcfa/src/concurrency/alarm.hfa (modified) * libcfa/src/concurrency/clib/cfathread.cfa (modified) * libcfa/src/concurrency/coroutine.cfa (modified) * libcfa/src/concurrency/coroutine.hfa (modified) * libcfa/src/concurrency/exception.cfa (modified) * libcfa/src/concurrency/future.hfa (modified) * libcfa/src/concurrency/invoke.c (modified) * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/types.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/locks.cfa (modified) * libcfa/src/concurrency/locks.hfa (modified) * libcfa/src/concurrency/monitor.cfa (modified) * libcfa/src/concurrency/monitor.hfa (modified) * libcfa/src/concurrency/mutex.cfa (modified) * libcfa/src/concurrency/mutex.hfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/ready_subqueue.hfa (modified) * libcfa/src/concurrency/thread.cfa (modified) * libcfa/src/concurrency/thread.hfa (modified) * src/Concurrency/Keywords.cc (modified) * src/Concurrency/Waitfor.cc (modified) * src/ResolvExpr/AlternativeFinder.cc (modified) * src/ResolvExpr/CandidateFinder.cpp (modified) * tests/concurrent/semaphore.cfa (modified) * tests/concurrent/signal/block.cfa (modified) * tests/concurrent/spinaphore.cfa (modified) * tests/unified_locking/fast.cfa (modified) * tests/unified_locking/mcs.cfa (modified) * tests/unified_locking/thread_test.cfa (added) * tools/gdb/utils-gdb.py (modified) * tools/perf/process_stat_array.py (modified) * tools/vscode/uwaterloo.cforall-0.1.0/syntaxes/cfa.tmLanguage.json (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Wed, 07 Jul 2021 22:24:22 GMT Thierry Delisle [1f45c7d] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Now tracking cpu migrations using push_stat. Some minor fixes to the ... Mon, 05 Jul 2021 20:44:20 GMT Thierry Delisle [e84ab3d] * libcfa/prelude/builtins.c (modified) * libcfa/src/bits/weakso_locks.cfa (modified) * libcfa/src/bits/weakso_locks.hfa (modified) * libcfa/src/concurrency/alarm.cfa (modified) * libcfa/src/concurrency/alarm.hfa (modified) * libcfa/src/concurrency/clib/cfathread.cfa (modified) * libcfa/src/concurrency/coroutine.cfa (modified) * libcfa/src/concurrency/coroutine.hfa (modified) * libcfa/src/concurrency/exception.cfa (modified) * libcfa/src/concurrency/invoke.c (modified) * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/types.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/locks.cfa (modified) * libcfa/src/concurrency/locks.hfa (modified) * libcfa/src/concurrency/monitor.cfa (modified) * libcfa/src/concurrency/monitor.hfa (modified) * libcfa/src/concurrency/mutex.cfa (modified) * libcfa/src/concurrency/mutex.hfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/ready_subqueue.hfa (modified) * libcfa/src/concurrency/thread.cfa (modified) * libcfa/src/concurrency/thread.hfa (modified) * src/Concurrency/Keywords.cc (modified) Step 1 of changing $thread to thread$ Thu, 17 Jun 2021 19:05:54 GMT Thierry Delisle [12daa43] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Added a define switch for using cpu workstealing. Not Fully implemented. Tue, 15 Jun 2021 21:00:28 GMT Thierry Delisle [43784ac] * benchmark/io/io_uring.h (modified) * libcfa/prelude/defines.hfa.in (modified) * libcfa/src/bits/signal.hfa (modified) * libcfa/src/concurrency/coroutine.cfa (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/locks.cfa (modified) * libcfa/src/concurrency/monitor.cfa (modified) * libcfa/src/concurrency/mutex.cfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Changed libcfathread to consistently define _GNU_SOURCE Mon, 14 Jun 2021 18:55:08 GMT Thierry Delisle [733fd3d] * libcfa/src/concurrency/kernel.cfa (modified) Added missing corctx_flag in assertion Mon, 14 Jun 2021 18:01:38 GMT Thierry Delisle [50871b4] * libcfa/src/concurrency/kernel.cfa (modified) Whitespace clean-up Wed, 02 Jun 2021 22:22:47 GMT Thierry Delisle [96bfdde7] * libcfa/src/concurrency/kernel.cfa (modified) Forgot to add symmetric change to last verify change Wed, 02 Jun 2021 21:22:57 GMT Thierry Delisle [ab5baab] * libcfa/src/concurrency/coroutine.cfa (modified) * libcfa/src/concurrency/coroutine.hfa (modified) * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Attempt to fix the stack checker for when coroutines are interrupted ... Wed, 19 May 2021 17:37:49 GMT Thierry Delisle [b808625] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Added option to ready-queue to push ignoring locality. Thu, 13 May 2021 19:49:30 GMT Thierry Delisle [e2f601f] * libcfa/src/Makefile.am (modified) * libcfa/src/concurrency/alarm.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/containers/list.hfa (modified) * libcfa/src/containers/list2.hfa (deleted) * libcfa/src/executor.baseline.txt (added) * libcfa/src/executor.cfa (modified) * src/Concurrency/Keywords.cc (modified) * tests/list/.expect/dlist-insert-remove-2.txt (deleted) * tests/list/.expect/dlist-insert-remove.txt (modified) * tests/list/dlist-insert-remove-2.cfa (deleted) * tests/list/dlist-insert-remove.cfa (modified) * tests/zombies/linked-list-perf/experiment.koad (modified) * tests/zombies/linked-list-perf/mike-old.hfa (added) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Thu, 13 May 2021 19:47:26 GMT Thierry Delisle [57f70ab] * libcfa/src/concurrency/kernel.cfa (modified) New main now uses proper define. + tweak to loop count Thu, 13 May 2021 19:46:03 GMT Thierry Delisle [a9172b5] * libcfa/src/concurrency/kernel.cfa (modified) Removed push stats in alternate main Thu, 13 May 2021 19:45:35 GMT Thierry Delisle [fb4ccdf] * libcfa/src/concurrency/kernel.cfa (modified) Updated alternate main for processors Wed, 12 May 2021 20:30:27 GMT Michael Brooks [69914cbc] * libcfa/src/Makefile.am (modified) * libcfa/src/concurrency/alarm.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/containers/list.hfa (modified) * libcfa/src/containers/list2.hfa (deleted) * libcfa/src/executor.baseline.txt (added) * libcfa/src/executor.cfa (modified) * tests/list/.expect/dlist-insert-remove-2.txt (deleted) * tests/list/.expect/dlist-insert-remove.txt (modified) * tests/list/dlist-insert-remove-2.cfa (deleted) * tests/list/dlist-insert-remove.cfa (modified) * tests/zombies/linked-list-perf/experiment.koad (modified) * tests/zombies/linked-list-perf/mike-old.hfa (added) Replacing "Mike's old linked list" with "Mike's new linked list," ... Wed, 05 May 2021 20:53:25 GMT Thierry Delisle [8464edf] * libcfa/src/concurrency/kernel.cfa (modified) 'print_stats_now' now pulls stats from processors. Thu, 29 Apr 2021 20:44:09 GMT Thierry Delisle [34b2796] * libcfa/src/concurrency/kernel.cfa (modified) Changed comments to ifdef Thu, 29 Apr 2021 20:26:25 GMT Thierry Delisle [c993b15] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Changed RW lock to avoid hitting the global array on schedule. Wed, 28 Apr 2021 20:00:03 GMT Thierry Delisle [b7fd2db6] * libcfa/src/concurrency/kernel.cfa (modified) Pushing changed to RWlock with io_drain. I forget a few lines of the ... Sun, 25 Apr 2021 01:05:30 GMT Thierry Delisle [e9c0b4c] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) I/O drain now keeps the schedlock for the duration of the call. ... Sat, 24 Apr 2021 23:45:02 GMT Thierry Delisle [cfff639] * libcfa/src/bits/locks.hfa (modified) * libcfa/src/concurrency/alarm.cfa (modified) * libcfa/src/concurrency/clib/cfathread.cfa (modified) * libcfa/src/concurrency/invoke.c (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) * libcfa/src/startup.cfa (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Sat, 24 Apr 2021 23:44:52 GMT Thierry Delisle [89eff25] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Some changes to stats and added back preferred Sat, 24 Apr 2021 23:36:42 GMT Thierry Delisle [fc59df78] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Split ready-queue routines in 3 instead of 2. Sat, 24 Apr 2021 23:24:09 GMT Thierry Delisle [254ad1b] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Separate schedule_thread from the scheduler lock Sat, 24 Apr 2021 23:20:49 GMT Thierry Delisle [734908c] * libcfa/src/concurrency/kernel.cfa (modified) Fudge variable in __schedule_thread so it's not accidently used. Sat, 24 Apr 2021 23:03:47 GMT Thierry Delisle [a3821fa] * libcfa/src/bits/locks.hfa (modified) * libcfa/src/concurrency/alarm.cfa (modified) * libcfa/src/concurrency/clib/cfathread.cfa (modified) * libcfa/src/concurrency/invoke.c (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) * libcfa/src/startup.cfa (modified) Changed enable interrupts: - no longer save the caller for ... Sat, 24 Apr 2021 22:35:43 GMT Thierry Delisle [c6c7e6c] * libcfa/src/concurrency/kernel.cfa (modified) Seperated semphore and scheduling logic in unpark Sat, 24 Apr 2021 22:07:42 GMT Thierry Delisle [c1c95b1] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) io_drain now returns true if anything was unparked Fri, 16 Apr 2021 16:40:27 GMT Thierry Delisle [431cd4f] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Added alternative to relaxed-fifo scheduler. Disabled by default Wed, 14 Apr 2021 20:40:19 GMT Thierry Delisle [fc59b580] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) Clusters now keep track of the active processors as well Wed, 14 Apr 2021 20:28:55 GMT Thierry Delisle [6a9b12b] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) Incremental change towards having the cluster keep a list of active ... Mon, 12 Apr 2021 19:52:49 GMT Thierry Delisle [73f4d08] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) Added stats implementation for dumping a big array of timestamped ... Mon, 05 Apr 2021 23:06:37 GMT Thierry Delisle [ec43cf9] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) Kernel now keeps track of the how many threads each processor has ... Mon, 05 Apr 2021 20:04:46 GMT Thierry Delisle [b0904bf] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) Removed alarm stats, they are now tallied directly into the cluster Mon, 05 Apr 2021 19:18:12 GMT Thierry Delisle [5cb51502] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Fix stats so they are correctly tallied when called from outside the ... Wed, 17 Mar 2021 17:56:12 GMT Thierry Delisle [a5e7233] * libcfa/src/concurrency/clib/cfathread.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * tests/concurrent/.expect/clib_tls.txt (added) * tests/concurrent/clib.c (modified) * tests/concurrent/clib_tls.c (added) C interface now runs worker init routine in dedicated thread. Also ... Fri, 12 Mar 2021 21:30:39 GMT Thierry Delisle [a1538cd] * libcfa/src/concurrency/clib/cfathread.cfa (modified) * libcfa/src/concurrency/clib/cfathread.h (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) Implemented part of the same C api for threads as libfibre. Tue, 02 Mar 2021 19:41:03 GMT Thierry Delisle [55d6affb] * libcfa/src/concurrency/kernel.cfa (modified) Fixed stupid copy past mistake where I used eventfd_read (wait) ... Tue, 02 Mar 2021 18:58:12 GMT Thierry Delisle [dddb3dd0] * libcfa/src/bits/defs.hfa (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/call.cfa.in (modified) * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/io/types.hfa (modified) * libcfa/src/concurrency/iofwd.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) Changed io to use ring per kernel threads. Fri, 12 Feb 2021 17:27:08 GMT Thierry Delisle [da3963a] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) Moved __bin_sem_t out of kernel.hfa since it's not needed. Wed, 20 Jan 2021 22:35:39 GMT Thierry Delisle [454f478] * libcfa/src/bits/defs.hfa (modified) * libcfa/src/bits/locks.hfa (modified) * libcfa/src/concurrency/io/types.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/locks.cfa (modified) * libcfa/src/concurrency/locks.hfa (modified) * tests/concurrent/thread.cfa (modified) Re-arranged and commented low-level headers. Main goal was for ... Wed, 20 Jan 2021 21:40:28 GMT Thierry Delisle [92bfda0] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/interpose.cfa (modified) Revisited abort again to be more streamlined and simple. Fri, 15 Jan 2021 20:18:37 GMT Thierry Delisle [4f449d2] * libcfa/src/concurrency/kernel.cfa (modified) Fixed interted abort condition. Fri, 15 Jan 2021 19:23:08 GMT Thierry Delisle [804c0ff] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/interpose.cfa (modified) Simplified abort handling in the case of concurrent abort. I used to ... Thu, 14 Jan 2021 19:55:49 GMT Thierry Delisle [325e6ea] * libcfa/src/concurrency/kernel.cfa (modified) Kernel now tallies stats regularly Thu, 03 Dec 2020 20:15:55 GMT Thierry Delisle [6011658] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/interpose.cfa (modified) Fixed abort to no longer deadlock when calling itself recursively. ... Mon, 23 Nov 2020 22:10:23 GMT Thierry Delisle [32a8b61] * libcfa/src/concurrency/kernel.cfa (modified) Tentative fix for the recurring crash, caching the current cluster to ... Wed, 18 Nov 2020 19:28:02 GMT Thierry Delisle [3ea8ad1] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/monitor.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Added more checks for thread termination synchronization Tue, 17 Nov 2020 21:29:51 GMT Thierry Delisle [9d6e1b8a] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/monitor.cfa (modified) Minor improvments to assertions and comments Fri, 13 Nov 2020 16:37:11 GMT Thierry Delisle [ac12f1f] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) canary is now a void * so it prints in hexa in gdb Fri, 13 Nov 2020 16:32:15 GMT Thierry Delisle [1b033b8] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) Alarm loop now has it's own stats block Fri, 06 Nov 2020 16:22:57 GMT Thierry Delisle [8fc652e0] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/setup.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/monitor.cfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Change usage of TLS to more strongly segregate in kernel and out of ... Tue, 03 Nov 2020 18:16:38 GMT Thierry Delisle [58688bf] * libcfa/src/concurrency/kernel.cfa (modified) Added assertion to check there aren't pending unparks