# # ChangeLog for libcfa/src/concurrency # # Generated by Trac 1.2.1 # Aug 30, 2024, 2:25:31 PM Wed, 08 Jun 2022 20:23:08 GMT caparsons [ae06e0b] * libcfa/src/concurrency/locks.cfa (modified) * libcfa/src/concurrency/locks.hfa (modified) added pthread_cond_var 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 Thu, 02 Jun 2022 19:11:21 GMT caparsons [e5d9274] * benchmark/plot.py (modified) * doc/theses/mubeen_zulfiqar_MMath/allocator.tex (modified) * doc/theses/mubeen_zulfiqar_MMath/background.tex (modified) * doc/theses/mubeen_zulfiqar_MMath/benchmarks.tex (modified) * doc/theses/mubeen_zulfiqar_MMath/conclusion.tex (modified) * doc/theses/mubeen_zulfiqar_MMath/figures/Header.fig (modified) * doc/theses/mubeen_zulfiqar_MMath/figures/MultipleHeapsNoOwnership.fig (modified) * doc/theses/mubeen_zulfiqar_MMath/figures/MultipleHeapsOwnership.fig (modified) * doc/theses/mubeen_zulfiqar_MMath/figures/PerThreadHeap.fig (modified) * doc/theses/mubeen_zulfiqar_MMath/figures/SharedHeaps.fig (modified) * doc/theses/mubeen_zulfiqar_MMath/figures/SingleHeap.fig (modified) * doc/theses/mubeen_zulfiqar_MMath/figures/UserKernelHeaps.fig (modified) * doc/theses/mubeen_zulfiqar_MMath/intro.tex (modified) * doc/theses/mubeen_zulfiqar_MMath/performance.tex (modified) * doc/theses/mubeen_zulfiqar_MMath/uw-ethesis-frontpgs.tex (modified) * doc/theses/mubeen_zulfiqar_MMath/uw-ethesis.tex (modified) * doc/theses/thierry_delisle_PhD/thesis/Makefile (modified) * doc/theses/thierry_delisle_PhD/thesis/data/churn.jax (added) * doc/theses/thierry_delisle_PhD/thesis/data/churn.low.jax (added) * doc/theses/thierry_delisle_PhD/thesis/data/cycle.jax (modified) * doc/theses/thierry_delisle_PhD/thesis/data/cycle.low.jax (added) * doc/theses/thierry_delisle_PhD/thesis/data/memcd.rate (added) * doc/theses/thierry_delisle_PhD/thesis/data/memcd.updt (added) * doc/theses/thierry_delisle_PhD/thesis/data/yield.jax (added) * doc/theses/thierry_delisle_PhD/thesis/data/yield.low.jax (added) * doc/theses/thierry_delisle_PhD/thesis/fig/SAVE.fig (added) * doc/theses/thierry_delisle_PhD/thesis/fig/idle.fig (added) * doc/theses/thierry_delisle_PhD/thesis/fig/idle1.fig (added) * doc/theses/thierry_delisle_PhD/thesis/fig/idle2.fig (added) * doc/theses/thierry_delisle_PhD/thesis/fig/idle_state.fig (added) * doc/theses/thierry_delisle_PhD/thesis/local.bib (modified) * doc/theses/thierry_delisle_PhD/thesis/test.svg (added) * doc/theses/thierry_delisle_PhD/thesis/text/eval_macro.tex (modified) * doc/theses/thierry_delisle_PhD/thesis/text/eval_micro.tex (modified) * doc/theses/thierry_delisle_PhD/thesis/text/intro.tex (modified) * doc/theses/thierry_delisle_PhD/thesis/text/practice.tex (modified) * doc/theses/thierry_delisle_PhD/thesis/thesis.tex (modified) * libcfa/src/Makefile.am (modified) * libcfa/src/algorithms/range_iterator.cfa (modified) * libcfa/src/assert.cfa (modified) * libcfa/src/bits/debug.cfa (modified) * libcfa/src/bits/defs.hfa (modified) * libcfa/src/bits/weakso_locks.cfa (modified) * libcfa/src/common.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/invoke.c (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/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/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/ready_queue.cfa (modified) * libcfa/src/concurrency/ready_subqueue.hfa (modified) * libcfa/src/concurrency/thread.cfa (modified) * libcfa/src/concurrency/thread.hfa (modified) * libcfa/src/containers/maybe.cfa (modified) * libcfa/src/containers/result.cfa (modified) * libcfa/src/containers/string.cfa (modified) * libcfa/src/containers/string_sharectx.hfa (modified) * libcfa/src/containers/vector.cfa (modified) * libcfa/src/device/cpu.cfa (modified) * libcfa/src/exception.c (modified) * libcfa/src/exception.hfa (modified) * libcfa/src/fstream.cfa (modified) * libcfa/src/fstream.hfa (modified) * libcfa/src/heap.cfa (modified) * libcfa/src/interpose.cfa (modified) * libcfa/src/iostream.cfa (modified) * libcfa/src/limits.cfa (modified) * libcfa/src/memory.cfa (modified) * libcfa/src/parseargs.cfa (modified) * libcfa/src/parseconfig.cfa (modified) * libcfa/src/rational.cfa (modified) * libcfa/src/startup.cfa (modified) * libcfa/src/stdlib.cfa (modified) * libcfa/src/strstream.cfa (modified) * libcfa/src/time.cfa (modified) * libcfa/src/virtual.c (modified) * src/AST/Eval.hpp (deleted) * src/AST/Expr.cpp (modified) * src/AST/Expr.hpp (modified) * src/AST/module.mk (modified) * src/CodeGen/CodeGenerator.cc (modified) * src/CodeGen/FixMain.cc (modified) * src/CodeGen/FixMain2.cc (added) * src/CodeGen/GenType.cc (modified) * src/CodeGen/LinkOnce.cc (modified) * src/CodeGen/module.mk (modified) * src/CodeTools/ResolvProtoDump.cc (modified) * src/Common/Indenter.cc (added) * src/Common/Indenter.h (modified) * src/Common/ResolvProtoDump.cpp (modified) * src/Common/module.mk (modified) * src/Concurrency/module.mk (modified) * src/ControlStruct/ExceptDecl.cc (modified) * src/ControlStruct/module.mk (modified) * src/GenPoly/Lvalue.cc (modified) * src/GenPoly/Lvalue2.cc (added) * src/GenPoly/module.mk (modified) * src/InitTweak/FixInitNew.cpp (modified) * src/InitTweak/GenInit.cc (modified) * src/InitTweak/module.mk (modified) * src/Parser/parser.yy (modified) * src/ResolvExpr/AlternativeFinder.cc (modified) * src/ResolvExpr/CandidateFinder.cpp (modified) * src/ResolvExpr/CommonType.cc (modified) * src/ResolvExpr/ConversionCost.cc (modified) * src/ResolvExpr/ConversionCost.h (modified) * src/SymTab/Autogen.h (modified) * src/SymTab/Demangle.cc (modified) * src/SymTab/Demangle.h (added) * src/SymTab/Mangler.h (modified) * src/SymTab/Validate.cc (modified) * src/SymTab/Validate.h (modified) * src/SymTab/ValidateType.cc (added) * src/SymTab/ValidateType.h (added) * src/SymTab/demangler.cc (modified) * src/SymTab/module.mk (modified) * src/SynTree/BaseSyntaxNode.cc (added) * src/SynTree/module.mk (modified) * src/Tuples/TupleExpansion.cc (modified) * src/Tuples/Tuples.cc (modified) * src/Tuples/module.mk (modified) * src/Validate/Autogen.cpp (modified) * src/Validate/module.mk (modified) * src/Virtual/module.mk (modified) * src/main.cc (modified) * tests/.expect/attributes.nast.x64.txt (modified) * tests/.expect/attributes.nast.x86.txt (modified) * tests/.expect/attributes.oast.x64.txt (modified) * tests/.expect/attributes.oast.x86.txt (modified) * tests/.expect/nested_function.txt (added) * tests/.expect/quasiKeyword.txt (modified) * tests/concurrent/examples/multiSort.cfa (added) * tests/enum_tests/.expect/structEnum.txt (added) * tests/enum_tests/structEnum.cfa (added) * tests/exceptions/defaults.cfa (modified) * tests/include/.expect/includes.nast.txt (modified) * tests/include/includes.cfa (modified) * tests/linking/exception-nothreads.cfa (modified) * tests/linking/exception-withthreads.cfa (modified) * tests/nested_function.cfa (added) * tests/pybin/settings.py (modified) * tests/pybin/test_run.py (modified) * tests/quasiKeyword.cfa (modified) * tests/test.py (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Thu, 02 Jun 2022 19:11:17 GMT caparsons [015925a] * libcfa/src/concurrency/thread.cfa (modified) fixed new/delete issue by switching to malloc/free Thu, 02 Jun 2022 19:10:40 GMT caparsons [305aaef] * libcfa/src/concurrency/locks.cfa (modified) fixed multiple def issue Thu, 02 Jun 2022 19:10:17 GMT caparsons [490d17e0] * libcfa/src/concurrency/locks.hfa (modified) fixed multiple def issue Thu, 02 Jun 2022 18:39:11 GMT caparsons [f835806] * libcfa/src/concurrency/invoke.h (modified) * libcfa/src/concurrency/locks.hfa (modified) * libcfa/src/concurrency/thread.cfa (modified) added some locks and cleaned up unused seqable field in thread block Thu, 26 May 2022 14:21:17 GMT Andrew Beach [c3b9d639] * libcfa/src/concurrency/coroutine.cfa (modified) * libcfa/src/concurrency/coroutine.hfa (modified) * libcfa/src/concurrency/thread.cfa (modified) * libcfa/src/concurrency/thread.hfa (modified) * libcfa/src/exception.hfa (modified) * tests/exceptions/defaults.cfa (modified) Clean-up the exception interface. It should be slightly more like the ... Wed, 25 May 2022 21:51:24 GMT Andrew Beach [c715e5f] * libcfa/src/concurrency/clib/cfathread.cfa (modified) * libcfa/src/concurrency/coroutine.hfa (modified) * libcfa/src/concurrency/thread.hfa (modified) * libcfa/src/exception.hfa (modified) * src/CodeGen/GenType.cc (modified) * src/ControlStruct/ExceptDecl.cc (modified) * tests/.expect/quasiKeyword.txt (modified) * tests/exceptions/defaults.cfa (modified) * tests/linking/exception-nothreads.cfa (modified) * tests/linking/exception-withthreads.cfa (modified) * tests/quasiKeyword.cfa (modified) Removed most of the exception macros (EHM_ group). Made changes to ... Wed, 25 May 2022 19:41:58 GMT Thierry Delisle [5024df4] * libcfa/src/concurrency/kernel/cluster.cfa (modified) * libcfa/src/concurrency/ready_subqueue.hfa (modified) Changed ready-queue to atomically read/write timestamps, no effect on ... Wed, 25 May 2022 19:18:21 GMT Thierry Delisle [b035046] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/types.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) * libcfa/src/concurrency/ready_subqueue.hfa (modified) * libcfa/src/concurrency/thread.cfa (modified) changed some MAX to ULLONG_MAX to avoid the memory access where ... 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 Mon, 16 May 2022 16:08:01 GMT Thierry Delisle [108345a] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/io/call.cfa.in (modified) * libcfa/src/concurrency/io/setup.cfa (modified) visbility for io Fri, 13 May 2022 16:12:20 GMT Thierry Delisle [8108ba8] * libcfa/src/bits/defs.hfa (modified) * libcfa/src/concurrency/invoke.c (modified) * libcfa/src/exception.c (modified) * libcfa/src/virtual.c (modified) Started to add basic visibility control to libcfa Thu, 05 May 2022 14:59:09 GMT Thierry Delisle [8a5e357] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/ready_subqueue.hfa (modified) Trivial changes to libcfa concurrency Wed, 04 May 2022 19:28:00 GMT caparsons [7f958c4] * libcfa/src/concurrency/locks.cfa (modified) * libcfa/src/concurrency/locks.hfa (modified) added fast lock/cond var Tue, 05 Apr 2022 18:47:10 GMT Thierry Delisle [0c3aa67] * libcfa/src/concurrency/kernel/startup.cfa (modified) Fixed missing initialization. Fri, 01 Apr 2022 18:46:28 GMT Thierry Delisle [a18373a] * libcfa/src/concurrency/barrier.hfa (modified) * tests/concurrent/barrier/.expect/last.txt (added) * tests/concurrent/barrier/last.cfa (added) Added a hook for the barrier's last block. Added testing to go with it. Fri, 01 Apr 2022 17:47:47 GMT Thierry Delisle [e71e94a] * libcfa/src/concurrency/io/types.hfa (modified) * libcfa/src/concurrency/ready_subqueue.hfa (modified) Some clean-up of ready queue usage of -1llu. io types ts now returns ... Fri, 01 Apr 2022 16:40:35 GMT Thierry Delisle [31ef267] * libcfa/src/concurrency/barrier.hfa (modified) * tests/concurrent/barrier/generation.cfa (modified) * tests/concurrent/barrier/order.cfa (modified) Added comments. Fri, 01 Apr 2022 16:17:21 GMT Thierry Delisle [93b8cf4] * libcfa/src/Makefile.am (modified) * libcfa/src/concurrency/barrier.hfa (added) * tests/concurrent/barrier/.expect/generation.txt (added) * tests/concurrent/barrier/.expect/order.txt (added) * tests/concurrent/barrier/gen_generation_expect.cfa (added) * tests/concurrent/barrier/generation.cfa (added) * tests/concurrent/barrier/order.cfa (added) Added a simple barrier and accompagnying tests. Thu, 31 Mar 2022 19:57:48 GMT Thierry Delisle [f870e257] * libcfa/src/concurrency/kernel/private.hfa (modified) Disable waiting on io_uring for idle (maybe temporary). Wed, 30 Mar 2022 20:55:07 GMT Thierry Delisle [bdfd0bd] * libcfa/src/concurrency/io.cfa (modified) EINTR will no longer wakeup the idle_sleep. 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. Wed, 30 Mar 2022 01:44:36 GMT Thierry Delisle [729df21] * libcfa/src/concurrency/io.cfa (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Wed, 30 Mar 2022 01:44:32 GMT Thierry Delisle [d28b70a] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/kernel.hfa (modified) Now also keep track of last drain time Tue, 29 Mar 2022 21:19:51 GMT Thierry Delisle [4598e03] * libcfa/src/concurrency/kernel.cfa (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc 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:41:30 GMT Thierry Delisle [d4da1535] * 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) * src/AST/Convert.cpp (modified) * src/AST/Decl.cpp (modified) * src/AST/Type.cpp (modified) * src/AST/Type.hpp (modified) * src/Concurrency/KeywordsNew.cpp (modified) * src/ResolvExpr/Resolver.cc (modified) * src/Validate/Autogen.cpp (modified) * src/Validate/ForallPointerDecay.cpp (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Tue, 29 Mar 2022 20:41:21 GMT Thierry Delisle [edf247b] * libcfa/src/concurrency/io.cfa (modified) Fix debug print 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. Tue, 29 Mar 2022 19:19:53 GMT Thierry Delisle [010636f] * libcfa/src/concurrency/io.cfa (modified) Tentative fix for termination deadlock. Other minor improvements and ... Mon, 28 Mar 2022 21:59:53 GMT Thierry Delisle [ff55092] * libcfa/src/concurrency/io.cfa (modified) removed warning Mon, 28 Mar 2022 21:55:48 GMT Thierry Delisle [1e6ffb44] * libcfa/src/concurrency/io.cfa (modified) Changed debug prints to help debug helping Mon, 28 Mar 2022 21:43:05 GMT Thierry Delisle [7425720] * libcfa/src/concurrency/io/setup.cfa (modified) Fixed 32bit build Mon, 28 Mar 2022 20:29:41 GMT Thierry Delisle [d5cdbed] * libcfa/src/concurrency/io.cfa (modified) Fix build from machine where I can actually test Mon, 28 Mar 2022 20:12:29 GMT Thierry Delisle [37a3aa23] * libcfa/src/concurrency/io.cfa (modified) Fixed syntax error (hopefully) 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:50:40 GMT Thierry Delisle [64bdacc] * libcfa/src/concurrency/kernel/fwd.hfa (modified) Future now wait for 2p to resolve in available. Fri, 25 Mar 2022 17:49:24 GMT Thierry Delisle [54c1196] * libcfa/src/concurrency/io.cfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) Added io helping stats 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. Wed, 23 Mar 2022 17:23:17 GMT Thierry Delisle [3caf5e3] * libcfa/src/concurrency/io.cfa (modified) Re-read cq information after acquire. Hoping this is the cause for ... Wed, 23 Mar 2022 17:22:31 GMT Thierry Delisle [1a567d0] * libcfa/src/concurrency/kernel/cluster.cfa (modified) Fixed 32-bit compilation 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 ... Tue, 22 Mar 2022 19:23:53 GMT Thierry Delisle [8f01ad71] * libcfa/src/concurrency/kernel/cluster.hfa (modified) * libcfa/src/device/cpu.hfa (modified) Forgot a few pragma once 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 Mon, 21 Mar 2022 16:17:27 GMT Thierry Delisle [98d1b90] * libcfa/src/concurrency/locks.hfa (modified) * libcfa/src/concurrency/mutex_stmt.hfa (modified) * src/Concurrency/Keywords.cc (modified) * src/Concurrency/KeywordsNew.cpp (modified) * tests/concurrent/mutexstmt/.expect/locks.txt (modified) * tests/concurrent/mutexstmt/locks.cfa (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Mon, 21 Mar 2022 15:52:19 GMT caparsons [0d4f954] * libcfa/src/concurrency/locks.hfa (modified) * libcfa/src/concurrency/mutex_stmt.hfa (modified) changed concurrency library to work with new mutexstmt changes Fri, 18 Mar 2022 18:55:27 GMT Thierry Delisle [adb3ea1] * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/cluster.cfa (modified) * libcfa/src/concurrency/kernel/cluster.hfa (modified) Some more incremental work towards using timestamps for io 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 ... Tue, 15 Mar 2022 15:00:17 GMT Thierry Delisle [48a91e2] * libcfa/src/concurrency/kernel/cluster.cfa (modified) Fixed defines for cases without RSEQ 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 Mon, 14 Mar 2022 18:24:51 GMT Thierry Delisle [884f3f67] * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/cluster.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Change how the ready queue is initialized to make it common with I/O Fri, 11 Mar 2022 18:31:58 GMT Thierry Delisle [c42b8a1] * libcfa/src/Makefile.am (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/kernel/cluster.cfa (added) * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/ready_subqueue.hfa (modified) Major cleanup and moved cluster growth to new file Fri, 11 Mar 2022 17:36:30 GMT Thierry Delisle [3c4bf05] * libcfa/src/concurrency/ready_queue.cfa (modified) Removed old scheduler algorithms which weren't as good. 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 ... Thu, 03 Mar 2022 19:30:50 GMT Thierry Delisle [40a606d2] * libcfa/src/concurrency/io/types.hfa (modified) * libcfa/src/concurrency/iofwd.hfa (modified) Modified io headers so io/types.hfa can stay private Wed, 02 Mar 2022 23:48:30 GMT Thierry Delisle [b0d0285] * libcfa/src/concurrency/io/setup.cfa (modified) kernel now aborts if a ring is closed with unsubmitted entries. Wed, 02 Mar 2022 21:27:39 GMT Thierry Delisle [9f5a71eb] * libcfa/src/concurrency/io.cfa (modified) Totally confusing myself in these commit messages. This file was ... Wed, 02 Mar 2022 21:26:51 GMT Thierry Delisle [1860885] * libcfa/src/concurrency/preemption.cfa (modified) Messed-up last commit... This commit : moved preempt reason to ... Wed, 02 Mar 2022 21:23:43 GMT Thierry Delisle [13fdf86] * libcfa/src/concurrency/kernel/fwd.hfa (modified) * libcfa/src/concurrency/kernel_private.hfa (modified) Moved preemption reason to kernel_private and added preempt IO. Wed, 02 Mar 2022 19:11:32 GMT Thierry Delisle [93829cb] * benchmark/io/http/protocol.cfa (modified) * libcfa/src/concurrency/iofwd.hfa (modified) Added helper function to zero out sqes. Not done in allocate since ... Wed, 02 Mar 2022 19:07:45 GMT Thierry Delisle [2432e8e] * libcfa/src/concurrency/io.cfa (modified) Fixed deadlock on io slowpath due to spin lock recursion. Tue, 22 Feb 2022 17:23:14 GMT Thierry Delisle [a182ad5] * libcfa/src/Makefile.am (modified) * libcfa/src/concurrency/coroutine.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/heap.cc (deleted) * libcfa/src/heap.cfa (added) * libcfa/src/heap.h (deleted) * libcfa/src/heap.hfa (added) * libcfa/src/startup.cfa (modified) * libcfa/src/stdhdr/malloc.h (modified) * libcfa/src/stdlib.hfa (modified) Revert "removed old memory allocator and replaced it with the ... Thu, 17 Feb 2022 23:53:31 GMT Peter A. Buhr [fe610ab] * libcfa/src/Makefile.am (modified) * libcfa/src/concurrency/coroutine.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/heap.cc (added) * libcfa/src/heap.cfa (deleted) * libcfa/src/heap.h (added) * libcfa/src/heap.hfa (deleted) * libcfa/src/math.trait.hfa (modified) * libcfa/src/startup.cfa (modified) * libcfa/src/stdhdr/malloc.h (modified) * libcfa/src/stdlib.hfa (modified) * src/AST/Decl.cpp (modified) * src/SymTab/Validate.cc (modified) * src/SymTab/Validate.h (modified) * src/Validate/ForallPointerDecay.cpp (added) * src/Validate/ForallPointerDecay.hpp (added) * src/Validate/module.mk (modified) * src/main.cc (modified) * tests/meta/dumpable.cfa (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Thu, 17 Feb 2022 23:52:52 GMT Peter A. Buhr [778315e] * libcfa/src/concurrency/preemption.cfa (modified) add attribute no-reorder-blocks to __preemption_enabled to prevent ... Thu, 17 Feb 2022 23:11:56 GMT Peter A. Buhr [09ae8a6] * libcfa/src/concurrency/kernel/startup.cfa (modified) change initialization of stacksize = max( PTHREAD_STACK_MIN, ... Thu, 17 Feb 2022 17:56:46 GMT m3zulfiq [5614a191] * libcfa/src/Makefile.am (modified) * libcfa/src/concurrency/coroutine.cfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/heap.cc (added) * libcfa/src/heap.cfa (deleted) * libcfa/src/heap.h (added) * libcfa/src/heap.hfa (deleted) * libcfa/src/startup.cfa (modified) * libcfa/src/stdhdr/malloc.h (modified) * libcfa/src/stdlib.hfa (modified) removed old memory allocator and replaced it with the concurrent ... Sat, 12 Feb 2022 22:29:55 GMT Peter A. Buhr [0ebbca4] * libcfa/src/concurrency/thread.cfa (modified) * libcfa/src/stdlib.hfa (modified) optimization calls, initialize callcnt Sat, 12 Feb 2022 18:56:44 GMT Peter A. Buhr [0db48ca] * Jenkinsfile (modified) * benchmark/io/http/Makefile.am (modified) * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/stdlib.hfa (modified) * src/AST/Convert.hpp (modified) * src/AST/Fwd.hpp (modified) * src/AST/Pass.hpp (modified) * src/AST/Pass.impl.hpp (modified) * src/AST/Pass.proto.hpp (modified) * src/AST/TranslationUnit.hpp (modified) * src/CodeGen/FixNames.h (modified) * src/Common/CodeLocation.h (modified) * src/Common/CodeLocationTools.hpp (modified) * src/Common/ResolvProtoDump.hpp (modified) * src/Concurrency/Waitfor.cc (modified) * src/ControlStruct/MultiLevelExit.cpp (modified) * src/InitTweak/FixInit.h (modified) * src/MakeLibCfa.h (modified) * src/ResolvExpr/Resolver.cc (modified) * src/ResolvExpr/Resolver.h (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Sat, 12 Feb 2022 18:53:14 GMT Peter A. Buhr [c655650] * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) * libcfa/src/concurrency/thread.hfa (modified) update fast PRNG code Fri, 11 Feb 2022 19:36:08 GMT Thierry Delisle [a892e61] * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/stdlib.hfa (modified) Some warning fixes. Thu, 10 Feb 2022 03:59:11 GMT Peter A. Buhr [454b4e0] * driver/Makefile.am (modified) * libcfa/prelude/Makefile.am (modified) * libcfa/src/Makefile.am (modified) * libcfa/src/concurrency/io/setup.cfa (modified) * longrun_tests/Makefile.am (modified) * src/AST/Pass.hpp (modified) * src/AST/Pass.impl.hpp (modified) * src/Common/CodeLocation.h (modified) * src/ControlStruct/MLEMutator.cc (modified) * src/Makefile.am (modified) * tests/Makefile.am (modified) * tests/unified_locking/mutex_test.hfa (modified) * tools/Makefile.am (modified) * tools/prettyprinter/Makefile.am (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Thu, 10 Feb 2022 03:59:05 GMT Peter A. Buhr [12b5e94a] * libcfa/src/concurrency/thread.cfa (modified) * libcfa/src/concurrency/thread.hfa (modified) * libcfa/src/stdlib.cfa (modified) * libcfa/src/stdlib.hfa (modified) add fast PRNG code Wed, 09 Feb 2022 20:52:35 GMT Thierry Delisle [a986807] * libcfa/src/concurrency/io/setup.cfa (modified) Fix stub of __cfa_io_flush for cases with no IOURING. Mon, 07 Feb 2022 17:54:11 GMT Thierry Delisle [250583e] * libcfa/src/concurrency/preemption.cfa (modified) Some clean-up after preemption fix Fri, 04 Feb 2022 19:44:10 GMT Thierry Delisle [becb85b9] * libcfa/src/concurrency/preemption.cfa (modified) Attempt to fix preemption deadlock. No longer prevent preemption ... Thu, 03 Feb 2022 01:25:52 GMT Thierry Delisle [941e14a] * libcfa/src/concurrency/preemption.cfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) Added statistics for preemption 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:16 GMT Thierry Delisle [bbfe226] * libcfa/src/concurrency/mutex_stmt.hfa (modified) * src/AST/Copy.hpp (modified) * src/AST/Node.hpp (modified) * src/ControlStruct/HoistControlDecls.cpp (added) * src/ControlStruct/HoistControlDecls.hpp (added) * src/ControlStruct/module.mk (modified) * src/SymTab/Validate.cc (modified) * src/SymTab/Validate.h (modified) * src/Validate/Autogen.cpp (added) * src/Validate/Autogen.hpp (added) * src/Validate/module.mk (modified) * src/main.cc (modified) * tests/concurrent/mutexstmt/.expect/locks.txt (modified) * tests/concurrent/mutexstmt/locks.cfa (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc 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:54:35 GMT caparsons [97fed44] * benchmark/io/http/Makefile.am (modified) * benchmark/io/http/main.cfa (modified) * benchmark/readyQ/churn.cfa (modified) * benchmark/readyQ/locality.cfa (modified) * benchmark/readyQ/transfer.cfa (modified) * libcfa/prelude/Makefile.am (modified) * libcfa/src/bits/random.hfa (modified) * libcfa/src/common.hfa (modified) * libcfa/src/concurrency/clib/cfathread.cfa (modified) * libcfa/src/concurrency/io.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/locks.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/stats.cfa (modified) * libcfa/src/concurrency/stats.hfa (modified) * libcfa/src/concurrency/thread.cfa (modified) * libcfa/src/iostream.cfa (modified) * libcfa/src/parseconfig.cfa (modified) * libcfa/src/startup.cfa (modified) * libcfa/src/stdlib.cfa (modified) * libcfa/src/stdlib.hfa (modified) * src/AST/Decl.cpp (modified) * src/AST/Decl.hpp (modified) * src/AST/Eval.hpp (modified) * src/AST/Print.cpp (modified) * src/Validate/InitializerLength.cpp (modified) * src/Validate/InitializerLength.hpp (modified) * tests/concurrent/.expect/ctor-check.txt (modified) * tests/concurrent/.expect/semaphore.txt (deleted) * tests/concurrent/.expect/spinaphore.txt (deleted) * tests/concurrent/preempt.cfa (modified) * tests/concurrent/semaphore.cfa (deleted) * tests/concurrent/spinaphore.cfa (deleted) * tests/device/cpu.cfa (modified) * tests/io/io-acquire-in.cfa (modified) * tests/io/io-acquire-no-io.cfa (modified) * tests/io/io-acquire-out.cfa (modified) * tests/io/io-acquire.cfa (modified) * tests/unified_locking/.expect/locks.txt (modified) * tests/unified_locking/locks.cfa (modified) * tests/zombies/fastlock.cfa (deleted) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Tue, 25 Jan 2022 21:53:15 GMT caparsons [c1d8cde] * libcfa/src/concurrency/mutex_stmt.hfa (modified) added scoped locking 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. Fri, 21 Jan 2022 18:06:45 GMT Thierry Delisle [224916b] * libcfa/src/concurrency/kernel_private.hfa (modified) Removed incorrect verify in schedule_lock. Thu, 20 Jan 2022 16:14:18 GMT Thierry Delisle [46bbcaf] * libcfa/src/concurrency/kernel_private.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Fix race condition in verify Tue, 18 Jan 2022 18:16:23 GMT Thierry Delisle [175f9f4] * benchmark/readyQ/churn.cfa (modified) * benchmark/readyQ/locality.cfa (modified) * libcfa/prelude/Makefile.am (modified) * libcfa/src/bits/locks.hfa (modified) * libcfa/src/bits/random.hfa (modified) * libcfa/src/common.hfa (modified) * libcfa/src/concurrency/clib/cfathread.cfa (modified) * 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/fwd.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/locks.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) * libcfa/src/device/cpu.cfa (modified) * libcfa/src/device/cpu.hfa (modified) * libcfa/src/fstream.cfa (modified) * libcfa/src/iostream.cfa (modified) * libcfa/src/parseconfig.cfa (modified) * libcfa/src/startup.cfa (modified) * libcfa/src/stdlib.cfa (modified) * libcfa/src/stdlib.hfa (modified) * src/AST/Decl.cpp (modified) * src/AST/Decl.hpp (modified) * src/AST/Eval.hpp (modified) * src/Validate/InitializerLength.cpp (modified) * src/Validate/InitializerLength.hpp (modified) * tests/concurrent/.expect/semaphore.txt (deleted) * tests/concurrent/.expect/spinaphore.txt (deleted) * tests/concurrent/semaphore.cfa (deleted) * tests/concurrent/spinaphore.cfa (deleted) * tests/device/cpu.cfa (modified) * tests/io/.expect/io-acquire-in.txt (added) * tests/io/.expect/io-acquire-no-io.txt (added) * tests/io/.expect/io-acquire-out.txt (added) * tests/io/.expect/io-acquire2.txt (added) * tests/io/.in/io-acquire-in.txt (added) * tests/io/.in/io-acquire2.txt (added) * tests/io/io-acquire-in.cfa (added) * tests/io/io-acquire-no-io.cfa (added) * tests/io/io-acquire-out.cfa (added) * tests/io/io-acquire.cfa (modified) * tests/io/io-acquire2.cfa (added) * tests/unified_locking/.expect/locks.txt (modified) * tests/unified_locking/locks.cfa (modified) * tests/zombies/fastlock.cfa (deleted) * tools/jenkins/setup.sh.in (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Tue, 18 Jan 2022 18:16:17 GMT Thierry Delisle [21a5bfb7] * libcfa/src/concurrency/io.cfa (modified) Removed unnecessary syscalls Tue, 18 Jan 2022 18:06:09 GMT Thierry Delisle [ae7adbc4] * libcfa/src/concurrency/kernel.cfa (modified) Attempt optim for wake_one Tue, 18 Jan 2022 00:47:29 GMT Thierry Delisle [0fb3ee5] * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) @optim: maximize chances "cache" array stays in cache. Tue, 18 Jan 2022 00:46:29 GMT Thierry Delisle [25337e0] * libcfa/src/concurrency/ready_queue.cfa (modified) Fix some problems with compilation of per-cpu ready queue. Mon, 17 Jan 2022 19:25:00 GMT Thierry Delisle [0fc447c] * libcfa/src/concurrency/locks.hfa (modified) * tests/concurrent/.expect/semaphore.txt (deleted) * tests/concurrent/.expect/spinaphore.txt (deleted) * tests/concurrent/semaphore.cfa (deleted) * tests/concurrent/spinaphore.cfa (deleted) * tests/unified_locking/.expect/locks.txt (modified) * tests/unified_locking/locks.cfa (modified) * tests/zombies/fastlock.cfa (deleted) Removed fast_lock, which doesn't seemed to have ever worked and isn't ... Sat, 15 Jan 2022 00:24:45 GMT Thierry Delisle [a2a4566] * libcfa/src/concurrency/kernel.hfa (modified) * libcfa/src/concurrency/ready_queue.cfa (modified) Added new ready-queue that uses per-thread queues but with some cpu ... Sat, 15 Jan 2022 00:01:21 GMT Thierry Delisle [c90db2d] * benchmark/readyQ/churn.cfa (modified) * benchmark/readyQ/locality.cfa (modified) * libcfa/prelude/Makefile.am (modified) * libcfa/src/bits/random.hfa (modified) * libcfa/src/concurrency/clib/cfathread.cfa (modified) * libcfa/src/concurrency/kernel/fwd.hfa (modified) * libcfa/src/concurrency/kernel/startup.cfa (modified) * libcfa/src/concurrency/thread.cfa (modified) * libcfa/src/parseconfig.cfa (modified) * libcfa/src/startup.cfa (modified) * libcfa/src/stdlib.cfa (modified) * libcfa/src/stdlib.hfa (modified) * src/AST/Decl.cpp (modified) * tests/io/.expect/io-acquire-in.txt (added) * tests/io/.expect/io-acquire-out.txt (moved) * tests/io/.in/io-acquire-in.txt (moved) * tests/io/io-acquire-in.cfa (moved) * tests/io/io-acquire-no-io.cfa (modified) * tests/io/io-acquire-out.cfa (added) * tests/io/io-acquire.cfa (modified) Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc Fri, 14 Jan 2022 23:55:14 GMT Thierry Delisle [145dcd5] * libcfa/src/concurrency/kernel/startup.cfa (modified) * tests/device/cpu.cfa (modified) Now using MAX instead of -1u since it's more appropriate.