# # ChangeLog for libcfa/src/concurrency # # Generated by Trac 1.2.1 # Nov 2, 2024, 6:22:27 PM Thu, 09 Jul 2020 19:37:03 GMT Thierry Delisle [732b406] * libcfa/src/concurrency/io.cfa (modified) Added missing lock around __release_consumed_submission Wed, 08 Jul 2020 22:05:11 GMT Thierry Delisle [34b61882] * libcfa/src/concurrency/io.cfa (modified) Submission release is now based on previous seen head rather than the ... Wed, 08 Jul 2020 20:30:14 GMT Thierry Delisle [1d5e4711] * libcfa/src/concurrency/io.cfa (modified) Optim: No longer call io_uring_enter to poll for events if - We ... Wed, 08 Jul 2020 18:01:05 GMT Thierry Delisle [47746a2] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) Added stats macro to reduce typing when using stats Added new macros ... Fri, 03 Jul 2020 17:21:03 GMT Thierry Delisle [b9237fe] * libcfa/src/concurrency/io.cfa (modified) Removed unnecessary/incorrect assert Thu, 02 Jul 2020 20:38:58 GMT Thierry Delisle [8bb239d] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) Added statistic for number of busies when eager submitting. Thu, 02 Jul 2020 20:17:51 GMT Thierry Delisle [e46c753] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) Added new io algorithm that eagerly submits while still helping Thu, 02 Jul 2020 20:06:04 GMT Thierry Delisle [8e9e9a2] * libcfa/src/concurrency/preemption.cfa (modified) Added assert to check for non-processors enabling preemption. Wed, 01 Jul 2020 19:56:37 GMT Thierry Delisle [5877b3e] * libcfa/src/concurrency/iocall.cfa (modified) Added missing include Wed, 01 Jul 2020 19:27:59 GMT Thierry Delisle [4b84e35] * libcfa/src/concurrency/iocall.cfa (modified) Fixed iocall Wed, 01 Jul 2020 19:15:24 GMT Thierry Delisle [4ec028d] * libcfa/src/Makefile.am (modified) * libcfa/src/Makefile.in (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/iocall.cfa (added) * libcfa/src/concurrency/kernel_private.hfa (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Wed, 01 Jul 2020 19:06:46 GMT Thierry Delisle [df40a56] * libcfa/src/concurrency/io.cfa (modified) minor improvements to io Wed, 01 Jul 2020 19:05:08 GMT Thierry Delisle [31bb2e1] * libcfa/src/Makefile.am (modified) * libcfa/src/Makefile.in (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/iocall.cfa (added) * libcfa/src/concurrency/kernel_private.hfa (modified) Moved implementations of cfa_[io call] to iocall.cfa Wed, 01 Jul 2020 16:13:30 GMT Thierry Delisle [398e8e9] * libcfa/src/concurrency/kernel.cfa (modified) Tentative deadlock fix Tue, 30 Jun 2020 17:21:39 GMT Thierry Delisle [7812a7b5] * libcfa/src/bits/random.hfa (modified) * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/stats.cfa (modified) Fixed errors and warning with x86 build Tue, 30 Jun 2020 16:43:03 GMT Thierry Delisle [bdce852] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) Switched RNG from __lehmer64 to __wyhash64 for 32-bit builts Fri, 26 Jun 2020 17:08:36 GMT Thierry Delisle [f2b18d01] * libcfa/src/concurrency/kernel.cfa (modified) * tools/perf/process_halts.sh (added) * tools/perf/view_halts.py (added) First version of tools to view halts Thu, 25 Jun 2020 18:30:46 GMT Thierry Delisle [69fbc61] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) Clusters/Processors can now select which stats to print. Instead of ... Thu, 25 Jun 2020 17:34:34 GMT Thierry Delisle [c34ebf2] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) Processors now have their own print stats flag Wed, 24 Jun 2020 21:00:59 GMT Thierry Delisle [8b58bae] * doc/papers/concurrency/Paper.tex (modified) * doc/papers/concurrency/figures/RunTimeStructure.fig (modified) * doc/papers/concurrency/mail2 (modified) * doc/papers/concurrency/response2 (modified) * examples/hashtable.cfa (modified) * examples/hashtable2.cfa (added) * libcfa/src/bits/debug.cfa (modified) * libcfa/src/bits/signal.hfa (modified) * libcfa/src/concurrency/alarm.cfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/containers/stackLockFree.hfa (modified) * libcfa/src/containers/vector.hfa (modified) * libcfa/src/fstream.cfa (modified) * libcfa/src/fstream.hfa (modified) * libcfa/src/heap.cfa (modified) * libcfa/src/iostream.cfa (modified) * libcfa/src/iostream.hfa (modified) * libcfa/src/stdhdr/sys/time.h (added) * libcfa/src/time.hfa (modified) * src/ControlStruct/ExceptTranslate.cc (modified) * src/Parser/DeclarationNode.cc (modified) * tests/.expect/copyfile.txt (modified) * tests/.expect/time.txt (modified) * tests/.in/copyfile.txt (modified) * tests/copyfile.cfa (modified) * tests/exceptions/.expect/resume.txt (modified) * tests/exceptions/.expect/terminate.txt (modified) * tests/exceptions/resume.cfa (modified) * tests/exceptions/terminate.cfa (modified) * tests/time.cfa (modified) Merge branch 'master' into relaxed_ready Wed, 24 Jun 2020 20:36:20 GMT Thierry Delisle [d72c074] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Added option to bias threads to queues, instead of processors to queues Wed, 24 Jun 2020 19:37:32 GMT Thierry Delisle [29cb302] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) cfa stats now count number of migrations Wed, 24 Jun 2020 19:36:50 GMT Thierry Delisle [7bfc849] * libcfa/src/concurrency/io.cfa (modified) Fixed livelock in io.cfa without submit thread Wed, 24 Jun 2020 18:52:49 GMT Thierry Delisle [8ae4165] * libcfa/src/concurrency/io.cfa (modified) Moved interrupts in io.cfa to be more localized Wed, 24 Jun 2020 17:40:35 GMT Thierry Delisle [52769ba] * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) Added statistics for local success when biased Wed, 24 Jun 2020 17:39:35 GMT Thierry Delisle [de917da3] * libcfa/src/concurrency/io.cfa (modified) Removed flaky verify in io Tue, 23 Jun 2020 20:42:58 GMT Thierry Delisle [13c5e19] * libcfa/src/bits/random.hfa (added) * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/ready_subqueue.hfa (added) * libcfa/src/concurrency/snzi.hfa (added) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) - Moved snzi and subqueues outside of ready_queue.cfa. - Added ... Fri, 19 Jun 2020 21:30:16 GMT Thierry Delisle [0f89d4f] * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/containers/stackLockFree.hfa (modified) * libcfa/src/heap.cfa (modified) Modified StackLF to use `next instead of getNext Fri, 19 Jun 2020 20:59:19 GMT Thierry Delisle [68f36f4] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) Added Idle Sleep stats and removed extra call to unsafe_remove Fri, 19 Jun 2020 19:49:43 GMT Thierry Delisle [64a7146] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/containers/stackLockFree.hfa (modified) Fixed idle sleep to no-longer use a spinlock, broke registration and ... Fri, 19 Jun 2020 15:22:32 GMT Thierry Delisle [04b5cef] * benchmark/readyQ/yield.cfa (modified) * benchmark/readyQ/yield.cpp (added) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/containers/stackLockFree.hfa (modified) Added BIAS option to ready_queue Added yield test for LibFibre ... Thu, 18 Jun 2020 22:56:13 GMT Peter A. Buhr [c1ee231] * libcfa/src/bits/debug.cfa (modified) * libcfa/src/bits/signal.hfa (modified) * libcfa/src/concurrency/alarm.cfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/containers/vector.hfa (modified) remove extern "C" from include files protected in CFA stdhdr directory Tue, 16 Jun 2020 19:32:00 GMT Thierry Delisle [37ba662] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) Minor improvements to alignments and memory layout Tue, 16 Jun 2020 16:53:58 GMT Thierry Delisle [8834751] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (added) Moved statistics to stats.cfa to combine ready Q stats and IO stats Mon, 15 Jun 2020 17:45:37 GMT Thierry Delisle [d29255c] * libcfa/src/Makefile.am (modified) * libcfa/src/Makefile.in (modified) * libcfa/src/concurrency/stats.cfa (added) Added stats file for concurrent stats Fri, 12 Jun 2020 21:01:21 GMT Thierry Delisle [ff79d5e] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) * tools/gdb/utils-gdb.py (modified) Fixed park unpark to support park as first step of main() [[Fixes #170]] Fri, 12 Jun 2020 17:49:17 GMT Thierry Delisle [9b1dcc2] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) Changed scheduling API to adapt to non-Processors scheduling threads. Thu, 11 Jun 2020 22:47:27 GMT Thierry Delisle [b388ee81] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Changed ready RW-Lock to be a single global lock instead of per ... Thu, 11 Jun 2020 19:15:13 GMT Thierry Delisle [61d7bec] * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Replaced the bitmask approached for the ready-queue with a SNZI Wed, 10 Jun 2020 20:19:30 GMT Thierry Delisle [97392b69] * benchmark/creation/node_cor.js (modified) * benchmark/creation/rust_tokio_thrd.rs (added) * benchmark/ctxswitch/node_cor.js (modified) * benchmark/ctxswitch/rust_await.rs (added) * benchmark/ctxswitch/rust_tokio_thrd.rs (added) * benchmark/exclude (modified) * doc/bibliography/pl.bib (modified) * doc/papers/AMA/AMA-stix/ama/WileyNJD-v2.cls (modified) * doc/papers/concurrency/Paper.tex (modified) * doc/papers/concurrency/mail2 (modified) * doc/papers/concurrency/response2 (added) * driver/cc1.cc (modified) * driver/cfa.cc (modified) * examples/hashtable.cfa (added) * libcfa/src/Makefile.am (modified) * libcfa/src/Makefile.in (modified) * libcfa/src/bitmanip.hfa (modified) * libcfa/src/concurrency/coroutine.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/containers/list.hfa (modified) * libcfa/src/executor.cfa (modified) * libcfa/src/heap.cfa (modified) * libcfa/src/heap.hfa (added) * libcfa/src/memory.cfa (added) * libcfa/src/memory.hfa (added) * libcfa/src/stdhdr/malloc.h (modified) * libcfa/src/stdhdr/sys/mman.h (added) * libcfa/src/stdhdr/sys/ucontext.h (deleted) * libcfa/src/stdlib.cfa (modified) * libcfa/src/stdlib.hfa (modified) * src/ControlStruct/ExceptTranslate.cc (modified) * src/ControlStruct/ExceptTranslate.h (modified) * src/Parser/parser.yy (modified) * src/Virtual/ExpandCasts.cc (modified) * tests/.expect/copyfile.txt (modified) * tests/.expect/smart-pointers.txt (added) * tests/.in/copyfile.txt (modified) * tests/copyfile.cfa (modified) * tests/exceptions/.expect/type-check.txt (added) * tests/exceptions/type-check.cfa (added) * tests/smart-pointers.cfa (added) Merge branch 'master' into relaxed_ready Wed, 27 May 2020 19:14:50 GMT Peter A. Buhr [ada0246d] * libcfa/src/Makefile.am (modified) * libcfa/src/concurrency/coroutine.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/heap.cfa (modified) * libcfa/src/heap.hfa (added) * libcfa/src/stdhdr/malloc.h (modified) * libcfa/src/stdhdr/sys/mman.h (added) * libcfa/src/stdhdr/sys/ucontext.h (deleted) * libcfa/src/stdlib.hfa (modified) create heap.hfa, use it in malloc.h, and cleanup includes with ... Fri, 22 May 2020 15:49:29 GMT Thierry Delisle [0e4df2e] * driver/cfa.cc (modified) * libcfa/src/Makefile.am (modified) * libcfa/src/Makefile.in (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/containers/list.hfa (modified) * libcfa/src/containers/stackLockFree.hfa (added) * libcfa/src/exception.c (modified) * libcfa/src/exception.h (modified) * libcfa/src/exception.hfa (modified) * libcfa/src/executor.cfa (modified) * libcfa/src/heap.cfa (modified) * libcfa/src/stdlib.hfa (modified) * src/ControlStruct/ExceptTranslate.cc (modified) * src/ControlStruct/ExceptTranslate.h (modified) * src/main.cc (modified) * tests/errors/.expect/completeType.txt (modified) * tests/exceptions/.expect/defaults.txt (added) * tests/exceptions/conditional.cfa (modified) * tests/exceptions/data-except.cfa (modified) * tests/exceptions/defaults.cfa (added) * tests/exceptions/finally.cfa (modified) * tests/exceptions/interact.cfa (modified) * tests/exceptions/resume.cfa (modified) * tests/exceptions/terminate.cfa (modified) * tests/list/.expect/dlist-insert-remove.txt (modified) * tests/list/dlist-insert-remove.cfa (modified) Merge branch 'master' into relaxed_ready Thu, 21 May 2020 21:06:14 GMT Thierry Delisle [6f121b8] * libcfa/src/concurrency/io.cfa (modified) Wrote proper allocator for SQEs Thu, 21 May 2020 20:33:22 GMT Thierry Delisle [d47349b] * libcfa/src/concurrency/kernel.cfa (modified) Added a little bit more debug information for parking Tue, 12 May 2020 20:58:53 GMT Thierry Delisle [2f1cb37] * benchmark/io/readv.cfa (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) Merge branch 'master' into relaxed_ready Tue, 12 May 2020 20:56:45 GMT Thierry Delisle [068a202] * libcfa/src/concurrency/io.cfa (modified) Cluster io stats now print to STDOUT Tue, 12 May 2020 20:55:42 GMT Thierry Delisle [70ac8d0] * configure (modified) * configure.ac (modified) * doc/proposals/vtable.md (modified) * libcfa/Makefile.in (modified) * libcfa/configure (modified) * libcfa/configure.ac (modified) * libcfa/prelude/Makefile.am (modified) * libcfa/prelude/Makefile.in (modified) * libcfa/src/Makefile.in (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/exception.c (modified) * tests/exceptions/.expect/resume.txt (modified) * tests/exceptions/.expect/terminate.txt (modified) * tests/exceptions/data-except.cfa (modified) * tests/exceptions/resume.cfa (modified) * tests/exceptions/terminate.cfa (modified) * tools/build/push2dist.sh (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Tue, 12 May 2020 20:26:07 GMT Thierry Delisle [1b143de] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/monitor.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Several fixes to relaxed_ready queue Tue, 12 May 2020 17:32:45 GMT Thierry Delisle [504a7dc] * libcfa/src/bits/debug.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/monitor.cfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Some fixes after the merge, compiles but still has livelocks Mon, 11 May 2020 19:33:21 GMT Thierry Delisle [5c581cc] * libcfa/src/concurrency/io.cfa (modified) Fixed spinning of slow poller and added random offset to __submit to ... Mon, 11 May 2020 17:53:29 GMT Thierry Delisle [6a490b2] * Jenkinsfile (modified) * benchmark/Makefile.am (modified) * benchmark/Makefile.in (modified) * benchmark/creation/cfa_gen.cfa (modified) * benchmark/ctxswitch/cfa_cor.cfa (modified) * benchmark/ctxswitch/cfa_gen.cfa (modified) * benchmark/io/readv.cfa (added) * benchmark/size/size.cfa (added) * configure (modified) * configure.ac (modified) * doc/bibliography/pl.bib (modified) * doc/papers/concurrency/Paper.tex (modified) * doc/papers/concurrency/examples/DatingServiceThread.cfa (added) * doc/papers/concurrency/examples/Fib.js (added) * doc/papers/concurrency/examples/Fib.py (modified) * doc/papers/concurrency/examples/Fib2.c (modified) * doc/papers/concurrency/examples/Fib2.py (modified) * doc/papers/concurrency/examples/Fib3.c (modified) * doc/papers/concurrency/examples/FibRefactor.py (modified) * doc/papers/concurrency/examples/Format.c (modified) * doc/papers/concurrency/examples/Format.cc (modified) * doc/papers/concurrency/examples/Format.cfa (modified) * doc/papers/concurrency/examples/Format.data (modified) * doc/papers/concurrency/examples/Format.js (added) * doc/papers/concurrency/examples/Format.py (modified) * doc/papers/concurrency/examples/Format1.c (modified) * doc/papers/concurrency/examples/PingPong.c (modified) * doc/papers/concurrency/examples/Pingpong.py (modified) * doc/papers/concurrency/examples/ProdCons.py (modified) * doc/papers/concurrency/examples/RWMonitorEXT.cfa (moved) * doc/papers/concurrency/examples/RWMonitorINT.cfa (added) * doc/papers/concurrency/examples/Refactor.py (modified) * doc/papers/concurrency/examples/channels.go (added) * doc/papers/concurrency/examples/channels.rs (added) * doc/papers/concurrency/examples/future.rs (added) * doc/papers/concurrency/figures/FullCoroutinePhases.fig (modified) * doc/papers/concurrency/figures/RunTimeStructure.fig (modified) * doc/papers/concurrency/mail2 (modified) * doc/papers/concurrency/response (added) * doc/proposals/vtable.md (modified) * doc/theses/andrew_beach_MMath/.gitignore (added) * doc/theses/andrew_beach_MMath/Makefile (added) * doc/theses/andrew_beach_MMath/cfalab.sty (added) * doc/theses/andrew_beach_MMath/thesis-frontpgs.tex (added) * doc/theses/andrew_beach_MMath/thesis.bib (added) * doc/theses/andrew_beach_MMath/thesis.tex (added) * doc/theses/andrew_beach_MMath/unwinding.tex (added) * doc/theses/andrew_beach_MMath/uw-ethesis.cls (added) * doc/theses/thierry_delisle_PhD/.gitignore (modified) * doc/theses/thierry_delisle_PhD/code/bts.cpp (added) * doc/theses/thierry_delisle_PhD/comp_II/Makefile (modified) * doc/theses/thierry_delisle_PhD/comp_II/comp_II.tex (modified) * doc/theses/thierry_delisle_PhD/comp_II/comp_II_PAB.tex (added) * doc/theses/thierry_delisle_PhD/comp_II/img/base.fig (added) * doc/theses/thierry_delisle_PhD/comp_II/img/empty.fig (added) * doc/theses/thierry_delisle_PhD/comp_II/img/emptybit.fig (added) * doc/theses/thierry_delisle_PhD/comp_II/img/emptytls.fig (added) * doc/theses/thierry_delisle_PhD/comp_II/img/emptytree.fig (added) * doc/theses/thierry_delisle_PhD/comp_II/img/resize.fig (added) * doc/theses/thierry_delisle_PhD/comp_II/img/system.fig (added) * doc/theses/thierry_delisle_PhD/comp_II/local.bib (modified) * doc/user/user.tex (modified) * driver/cfa.cc (modified) * examples/io/filereader.c (added) * examples/io/simple/client.c (added) * examples/io/simple/server.c (added) * examples/io/simple/server.cfa (added) * examples/io_uring.c (added) * examples/io_uring.txt (added) * libcfa/Makefile.in (modified) * libcfa/configure (modified) * libcfa/configure.ac (modified) * libcfa/prelude/Makefile.am (modified) * libcfa/prelude/Makefile.in (modified) * libcfa/prelude/builtins.c (modified) * libcfa/prelude/defines.hfa.in (added) * libcfa/src/Makefile.am (modified) * libcfa/src/Makefile.in (modified) * libcfa/src/bitmanip.hfa (added) * libcfa/src/bits/containers.hfa (modified) * libcfa/src/bits/debug.hfa (modified) * libcfa/src/bits/locks.hfa (modified) * libcfa/src/bits/signal.hfa (modified) * libcfa/src/concurrency/CtxSwitch-arm.S (modified) * libcfa/src/concurrency/CtxSwitch-i386.S (modified) * libcfa/src/concurrency/CtxSwitch-x86_64.S (modified) * libcfa/src/concurrency/alarm.cfa (modified) * libcfa/src/concurrency/alarm.hfa (modified) * libcfa/src/concurrency/asyncio.hfa (added) * libcfa/src/concurrency/coroutine.cfa (modified) * libcfa/src/concurrency/coroutine.hfa (modified) * libcfa/src/concurrency/invoke.c (modified) * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/io.cfa (added) * libcfa/src/concurrency/iofwd.hfa (added) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.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/thread.cfa (modified) * libcfa/src/concurrency/thread.hfa (modified) * libcfa/src/containers/list.hfa (added) * libcfa/src/exception.c (modified) * libcfa/src/exception.h (modified) * libcfa/src/exception.hfa (added) * libcfa/src/heap.cfa (modified) * libcfa/src/interpose.cfa (modified) * libcfa/src/iostream.cfa (modified) * libcfa/src/startup.cfa (modified) * libcfa/src/stdhdr/malloc.h (modified) * libcfa/src/stdlib.cfa (modified) * libcfa/src/stdlib.hfa (modified) * src/AST/Convert.cpp (modified) * src/AST/Decl.hpp (modified) * src/AST/Fwd.hpp (modified) * src/AST/Pass.hpp (modified) * src/AST/Pass.impl.hpp (modified) * src/AST/Print.cpp (modified) * src/AST/Stmt.hpp (modified) * src/AST/Visitor.hpp (modified) * src/Common/PassVisitor.h (modified) * src/Common/PassVisitor.impl.h (modified) * src/CompilationState.cc (modified) * src/CompilationState.h (modified) * src/Concurrency/Keywords.cc (modified) * src/Concurrency/Waitfor.cc (modified) * src/ControlStruct/ExceptTranslate.cc (modified) * src/Parser/ParseNode.h (modified) * src/Parser/StatementNode.cc (modified) * src/Parser/TypeData.cc (modified) * src/Parser/lex.ll (modified) * src/Parser/parser.yy (modified) * src/ResolvExpr/AlternativeFinder.cc (modified) * src/ResolvExpr/Resolver.cc (modified) * src/ResolvExpr/TypeEnvironment.cc (modified) * src/SynTree/Declaration.h (modified) * src/SynTree/LinkageSpec.cc (modified) * src/SynTree/LinkageSpec.h (modified) * src/SynTree/Mutator.h (modified) * src/SynTree/Statement.cc (modified) * src/SynTree/Statement.h (modified) * src/SynTree/SynTree.h (modified) * src/SynTree/Visitor.h (modified) * src/main.cc (modified) * tests/.expect/alloc-ERROR.txt (modified) * tests/.expect/alloc.txt (modified) * tests/.expect/bitmanip1.x64.txt (added) * tests/.expect/bitmanip1.x86.txt (added) * tests/.expect/bitmanip2.x64.txt (added) * tests/.expect/bitmanip2.x86.txt (added) * tests/.expect/bitmanip3.x64.txt (added) * tests/.expect/bitmanip3.x86.txt (added) * tests/Makefile.am (modified) * tests/Makefile.in (modified) * tests/alloc.cfa (modified) * tests/bitmanip1.cfa (added) * tests/bitmanip2.cfa (added) * tests/bitmanip3.cfa (added) * tests/concurrent/.expect/monitor.txt (modified) * tests/concurrent/.expect/suspend_then.txt (added) * tests/concurrent/coroutineYield.cfa (modified) * tests/concurrent/monitor.cfa (modified) * tests/concurrent/multi-monitor.cfa (modified) * tests/concurrent/park/.expect/contention.txt (added) * tests/concurrent/park/.expect/force_preempt.txt (added) * tests/concurrent/park/contention.cfa (added) * tests/concurrent/park/force_preempt.cfa (added) * tests/concurrent/signal/block.cfa (modified) * tests/concurrent/suspend_then.cfa (moved) * tests/coroutine/.expect/fmtLines.txt (modified) * tests/coroutine/.in/fmtLines.txt (modified) * tests/coroutine/cntparens.cfa (modified) * tests/coroutine/devicedriver.cfa (modified) * tests/coroutine/fibonacci.cfa (modified) * tests/coroutine/fibonacci_1.cfa (modified) * tests/coroutine/fmtLines.cfa (modified) * tests/coroutine/raii.cfa (modified) * tests/coroutine/runningTotal.cfa (modified) * tests/coroutine/suspend_then.cfa (modified) * tests/errors/.expect/completeType.txt (modified) * tests/errors/suspend.cfa (added) * tests/exceptions/.expect/conditional.txt (added) * tests/exceptions/.expect/data-except.txt (added) * tests/exceptions/.expect/except-0.txt (deleted) * tests/exceptions/.expect/except-1.txt (deleted) * tests/exceptions/.expect/except-2.txt (deleted) * tests/exceptions/.expect/except-3.txt (deleted) * tests/exceptions/.expect/finally.txt (added) * tests/exceptions/.expect/interact.txt (added) * tests/exceptions/.expect/resume.txt (added) * tests/exceptions/.expect/terminate.txt (added) * tests/exceptions/conditional.cfa (added) * tests/exceptions/data-except.cfa (added) * tests/exceptions/except-0.cfa (deleted) * tests/exceptions/except-1.cfa (deleted) * tests/exceptions/except-2.cfa (deleted) * tests/exceptions/except-3.cfa (deleted) * tests/exceptions/except-io.hfa (added) * tests/exceptions/except-mac.hfa (deleted) * tests/exceptions/finally.cfa (added) * tests/exceptions/interact.cfa (added) * tests/exceptions/resume.cfa (added) * tests/exceptions/terminate.cfa (added) * tests/generator/.expect/fibonacci.txt (added) * tests/generator/.expect/fmtLines.txt (added) * tests/generator/.expect/suspend_then.txt (added) * tests/generator/.in/fmtLines.txt (added) * tests/generator/fibonacci.cfa (added) * tests/generator/fmtLines.cfa (added) * tests/generator/suspend_then.cfa (added) * tests/list/.expect/dlist-insert-remove.txt (added) * tests/list/dlist-insert-remove.cfa (added) * tests/manipulatorsOutput1.cfa (modified) * tests/manipulatorsOutput3.cfa (added) * tests/pybin/settings.py (modified) * tests/pybin/test_run.py (modified) * tests/pybin/tools.py (modified) * tests/test.py (modified) * tests/vector.cfa (modified) * tools/auto-complete.md (added) * tools/build/push2dist.sh (modified) * tools/cfa.nanorc (modified) * tools/gdb/.gdbinit (added) * tools/gdb/README (added) * tools/gdb/utils-gdb.gdb (added) * tools/gdb/utils-gdb.py (added) * tools/langserver/cfa-ls (added) * tools/langserver/src/json.hpp (added) * tools/langserver/src/log.cpp (added) * tools/langserver/src/log.hpp (added) * tools/langserver/src/main.cpp (added) * tools/langserver/src/server.cpp (added) * tools/langserver/src/server.hpp (added) * tools/vscode/uwaterloo.cforall-0.1.0/client/main.js (added) * tools/vscode/uwaterloo.cforall-0.1.0/images/icon.png (added) * tools/vscode/uwaterloo.cforall-0.1.0/package.json (modified) * tools/vscode/uwaterloo.cforall-0.1.0/server/out/server (added) * tools/vscode/uwaterloo.cforall-0.1.0/syntaxes/cfa.tmLanguage.json (added) Merge branch 'master' into relaxed_ready Mon, 11 May 2020 17:31:00 GMT Thierry Delisle [a7b486b] * libcfa/src/concurrency/kernel.cfa (modified) Added verify to __run_thread, which would inexplicably have failed in ... Fri, 08 May 2020 18:42:45 GMT Thierry Delisle [6c12fd28] * doc/bibliography/pl.bib (modified) * libcfa/configure (modified) * libcfa/configure.ac (modified) * libcfa/src/bits/locks.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/exception.hfa (added) * libcfa/src/heap.cfa (modified) * libcfa/src/iostream.cfa (modified) * src/Parser/parser.yy (modified) * tests/exceptions/.expect/data-except.txt (added) * tests/exceptions/conditional.cfa (modified) * tests/exceptions/data-except.cfa (added) * tests/exceptions/except-mac.hfa (deleted) * tests/exceptions/finally.cfa (modified) * tests/exceptions/interact.cfa (modified) * tests/exceptions/resume.cfa (modified) * tests/exceptions/terminate.cfa (modified) * tests/manipulatorsOutput1.cfa (modified) * tests/manipulatorsOutput3.cfa (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Fri, 08 May 2020 18:42:15 GMT Thierry Delisle [dd4e2d7] * benchmark/io/readv.cfa (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) Added option to change the length of the array of ready sqe Fri, 08 May 2020 18:14:48 GMT Thierry Delisle [8e16177] * libcfa/src/concurrency/kernel.cfa (modified) Turn off interrupts when signalling a halted processor Thu, 07 May 2020 21:12:47 GMT Thierry Delisle [0335620] * benchmark/io/readv.cfa (modified) * libcfa/src/concurrency/io.cfa (modified) Some minor tweaking to increase performance Thu, 07 May 2020 18:01:21 GMT Thierry Delisle [5dadc9b] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) First attempt at having the I/O thread submit Wed, 06 May 2020 18:25:16 GMT Thierry Delisle [87e0b015] * libcfa/src/bits/locks.hfa (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Wed, 06 May 2020 18:24:42 GMT Thierry Delisle [cb870e0] * libcfa/src/concurrency/io.cfa (modified) Small fixes to printing io stats Wed, 06 May 2020 18:04:01 GMT Thierry Delisle [171ca0d] * libcfa/src/concurrency/io.cfa (modified) Fixed miss-matched check for preadv2/pwritev2 Wed, 06 May 2020 18:03:13 GMT Thierry Delisle [c66f6cb] * libcfa/src/bits/locks.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) Added pthread error checking to the terminating semaphore. Tue, 05 May 2020 20:58:23 GMT Thierry Delisle [4385e8b] * libcfa/configure (modified) * libcfa/configure.ac (modified) * libcfa/prelude/defines.hfa.in (modified) * libcfa/src/Makefile.in (modified) * libcfa/src/concurrency/io.cfa (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Tue, 05 May 2020 20:53:14 GMT Thierry Delisle [05cfa4d] * libcfa/src/concurrency/io.cfa (modified) - Added 'fix' of the deadlock on cluster destruction by taking ... Tue, 05 May 2020 20:45:52 GMT Thierry Delisle [71c8b7e] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) Semaphore P() now returned whether or not it block Tue, 05 May 2020 20:23:46 GMT Thierry Delisle [08a994e] * libcfa/configure (modified) * libcfa/configure.ac (modified) * libcfa/prelude/defines.hfa.in (modified) * libcfa/src/Makefile.in (modified) * libcfa/src/concurrency/io.cfa (modified) Added automatic detection of support for preadv2 and pwritev2 Tue, 05 May 2020 16:12:47 GMT Thierry Delisle [4e74466] * libcfa/src/concurrency/io.cfa (modified) Fast poller thread now polls a few times before baton-passing to the ... Tue, 05 May 2020 15:35:45 GMT Thierry Delisle [b6f2b213] * benchmark/io/readv.cfa (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) Added the option to dynamically (at cluster creation time) ... Tue, 05 May 2020 14:51:15 GMT Thierry Delisle [f90d10f] * libcfa/src/concurrency/alarm.cfa (modified) * libcfa/src/concurrency/alarm.hfa (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/containers/list.hfa (modified) * tests/list/dlist-insert-remove.cfa (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Tue, 05 May 2020 14:45:18 GMT Thierry Delisle [61dd73d] * benchmark/io/readv.cfa (modified) * libcfa/prelude/defines.hfa.in (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) Moved io_uring data to io.cfa and create it using dynamic allocation. Tue, 05 May 2020 00:59:09 GMT Michael Brooks [d3ab183] * libcfa/src/concurrency/alarm.cfa (modified) * libcfa/src/concurrency/alarm.hfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) Using dlist in alarm. Minimal interface changes in alarm.hfa ... Mon, 04 May 2020 20:20:31 GMT Thierry Delisle [3c039b0] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) Split Complete I/O statistics into fast and slow Mon, 04 May 2020 17:01:58 GMT Thierry Delisle [3f7d0b4] * libcfa/src/concurrency/io.cfa (modified) Fixed io prototypes without io_uring Mon, 04 May 2020 16:54:56 GMT Thierry Delisle [6502a2b] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) Tentative fix to the deadlock in cluster shutdown Sat, 02 May 2020 18:41:36 GMT Thierry Delisle [927a918] * libcfa/src/concurrency/io.cfa (modified) Removed support for statx which caused only problems and is barely ... Fri, 01 May 2020 19:13:25 GMT Thierry Delisle [1539bbd] * libcfa/src/concurrency/io.cfa (modified) Added some debugging prints for fast poller Fri, 01 May 2020 17:41:16 GMT Thierry Delisle [1268ad8] * libcfa/src/concurrency/io.cfa (modified) More fixes to compile this elsewhere then Jax Fri, 01 May 2020 17:27:56 GMT Thierry Delisle [2292067] * libcfa/src/concurrency/io.cfa (modified) Fix copy-paste error in io.cfa Fri, 01 May 2020 17:12:50 GMT Thierry Delisle [6136ecc] * libcfa/src/concurrency/io.cfa (modified) Apparently, "standard headers" have way more diversity then I expected. Fri, 01 May 2020 17:10:58 GMT Thierry Delisle [0a805f2] * libcfa/src/bits/debug.hfa (modified) * libcfa/src/concurrency/io.cfa (modified) Added second io printing group with less verbose prints. Fri, 01 May 2020 16:54:43 GMT Thierry Delisle [93f7c001] * libcfa/src/concurrency/io.cfa (modified) Minor compilation fixes Fri, 01 May 2020 16:37:30 GMT Thierry Delisle [4069faad] * benchmark/io/readv.cfa (modified) * libcfa/prelude/defines.hfa.in (modified) * libcfa/src/bits/locks.hfa (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) Fix error in benchmark where the wrong fd was used. Changed ... Thu, 30 Apr 2020 19:27:11 GMT Thierry Delisle [f6660520] * benchmark/io/readv.cfa (modified) * libcfa/prelude/defines.hfa.in (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) Added new implementation of io_uring that uses user-thread Wed, 29 Apr 2020 19:49:30 GMT Thierry Delisle [c59a346] * libcfa/src/bits/signal.hfa (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) Minor fixes to I/O Fri, 24 Apr 2020 20:17:33 GMT Thierry Delisle [038be32] * benchmark/io/readv.cfa (modified) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) added defines and bool for whether or not to print statistics Fri, 24 Apr 2020 18:44:44 GMT Thierry Delisle [0ea6c5a] * libcfa/src/concurrency/io.cfa (modified) Replaced some headers with forward declarations to speed-up build Fri, 24 Apr 2020 17:54:29 GMT Thierry Delisle [d384787] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/iofwd.hfa (added) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) Added basic statistics to io.cfa Thu, 23 Apr 2020 20:46:15 GMT Thierry Delisle [ecf6b46] * libcfa/src/concurrency/io.cfa (modified) some clean-up in io.cfa Thu, 23 Apr 2020 20:21:49 GMT Thierry Delisle [2489d31] * benchmark/io/readv.cfa (modified) * examples/io/simple/server.cfa (modified) * libcfa/src/concurrency/io.cfa (modified) Removed the async_ prefix of I/O functions Wed, 22 Apr 2020 22:04:31 GMT Thierry Delisle [8962722] * libcfa/src/concurrency/io.cfa (modified) Replace statx call with syscall since it is not on all machines Wed, 22 Apr 2020 21:29:20 GMT Thierry Delisle [185efe6] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) Some small fixes for the io code Thu, 16 Apr 2020 16:56:07 GMT Thierry Delisle [9a7c88f] * libcfa/src/concurrency/io.cfa (modified) Removed unconditionnal print in I/O Tue, 14 Apr 2020 15:53:25 GMT Thierry Delisle [2d8f7b0] * libcfa/src/concurrency/alarm.cfa (modified) * libcfa/src/concurrency/asyncio.hfa (added) * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/thread.hfa (modified) Implemented basic non-blocking io Fri, 10 Apr 2020 15:20:31 GMT Thierry Delisle [92976d9] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) Implemented basic io_uring setup and poller Wed, 08 Apr 2020 16:42:30 GMT Thierry Delisle [27273f9] * libcfa/configure (modified) * libcfa/configure.ac (modified) * libcfa/src/Makefile.am (modified) * libcfa/src/Makefile.in (modified) * libcfa/src/concurrency/io.cfa (added) Added configure check for IO_URING Tue, 31 Mar 2020 22:21:44 GMT Thierry Delisle [f586539] * libcfa/src/concurrency/kernel.cfa (modified) Fixed incorrect check reporting the main thread has corrupted stack Fri, 27 Mar 2020 23:28:06 GMT Thierry Delisle [92e7631] * libcfa/src/bits/containers.hfa (modified) * libcfa/src/bits/locks.hfa (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) Fixed ready state. Fixed race condition between __halt and __wake_* Fri, 27 Mar 2020 16:41:19 GMT Thierry Delisle [f0ce5f4] * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) V-ing a semaphore now returns wether or not a thread was woken up. ... Fri, 27 Mar 2020 16:05:49 GMT Thierry Delisle [ae7be7a] * libcfa/src/concurrency/coroutine.hfa (modified) * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/kernel.cfa (modified) Fixed incorrect setting of ready state and added result to previous ... Wed, 25 Mar 2020 14:16:25 GMT Thierry Delisle [276ae57e] * libcfa/src/concurrency/kernel.cfa (modified) Fix yesterday's checks where the stale flag was wrong Tue, 24 Mar 2020 17:39:31 GMT Thierry Delisle [ae66348] * libcfa/src/bits/debug.hfa (modified) * libcfa/src/bits/locks.hfa (modified) * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/kernel.cfa (modified) * libcfa/src/concurrency/monitor.cfa (modified) * libcfa/src/concurrency/mutex.cfa (modified) * libcfa/src/concurrency/thread.hfa (modified) * libcfa/src/startup.cfa (modified) * tests/concurrent/park/contention.cfa (modified) * tests/concurrent/park/force_preempt.cfa (modified) Threads in debug now keep track of last function to park/unpark it