|
|
@13fdf86
|
2 years |
Thierry Delisle |
Moved preemption reason to kernel_private and added preempt IO.
ADTast-experimentalenumpthread-emulationqualifiedEnum
|
|
|
@7d0ebd0
|
3 years |
Thierry Delisle |
Processors should now correctly be unconditionnaly woken-up on termination
ADTast-experimentalenumforall-pointer-decaypthread-emulationqualifiedEnum
|
|
|
@d3605f8
|
3 years |
Thierry Delisle |
Reworked io_uring idle sleep to work with either read or readv …
ADTast-experimentalenumforall-pointer-decaypthread-emulationqualifiedEnum
|
|
|
@059ad16
|
3 years |
Thierry Delisle |
Flush now supports blocking until at least one I/O op terminates.
ADTast-experimentalenumforall-pointer-decaypthread-emulationqualifiedEnum
|
|
|
@a633f6f
|
3 years |
Thierry Delisle |
Fix the new FD change.
ADTast-experimentalenumforall-pointer-decaypthread-emulationqualifiedEnum
|
|
|
@5f5a729
|
3 years |
Thierry Delisle |
Mark idle now uses try_lock semantics
ADTast-experimentalenumforall-pointer-decaypthread-emulationqualifiedEnum
|
|
|
@24e321c
|
3 years |
Thierry Delisle |
Unpark now takes a hint on locality.
ADTast-experimentalenumforall-pointer-decaypthread-emulationqualifiedEnum
|
|
|
@e84ab3d
|
3 years |
Thierry Delisle |
Step 1 of changing $thread to thread$
ADTast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@f558b5f
|
3 years |
Thierry Delisle |
Implemented kernel_getcpu from rseq and librseq.
ADTast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@3814957
|
3 years |
Thierry Delisle |
Commented out broken code
ADTast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@3489ea6
|
3 years |
Thierry Delisle |
Started work on kernel_getcpu
ADTast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@b808625
|
3 years |
Thierry Delisle |
Added option to ready-queue to push ignoring locality.
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@c993b15
|
3 years |
Thierry Delisle |
Changed RW lock to avoid hitting the global array on schedule.
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@cfff639
|
3 years |
Thierry Delisle |
Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@fc59df78
|
3 years |
Thierry Delisle |
Split ready-queue routines in 3 instead of 2.
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@254ad1b
|
3 years |
Thierry Delisle |
Separate schedule_thread from the scheduler lock
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@a3821fa
|
3 years |
Thierry Delisle |
Changed enable interrupts:
- no longer save the caller for debugging
…
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@431cd4f
|
3 years |
Thierry Delisle |
Added alternative to relaxed-fifo scheduler.
Disabled by default
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@9cc3a18
|
3 years |
Thierry Delisle |
Major clean-up before attempting to add new scheduler
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@e0d6748
|
3 years |
Thierry Delisle |
Removed unused functions
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@a017ee7
|
3 years |
Thierry Delisle |
Ready-queue grow/shrink now reassigns the id of all processors.
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@6a9b12b
|
3 years |
Thierry Delisle |
Incremental change towards having the cluster keep a list of active …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@a7504db
|
3 years |
Thierry Delisle |
Changed how the cluster idle lock is implemented to be covered by the …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@a33c113
|
3 years |
Thierry Delisle |
Minor changes so using the global RWlock is more concise.
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@bd0bdd37
|
3 years |
Thierry Delisle |
Fix how bias is handled in the ready queue to be more consistent with …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@78da4ab
|
3 years |
Thierry Delisle |
New implementation of io based on instance burrowing.
Trying to avoid …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@bfcf6b9
|
4 years |
Thierry Delisle |
Stacks are always created with mmap to control page permission
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@8fc652e0
|
4 years |
Thierry Delisle |
Change usage of TLS to more strongly segregate in kernel and out of …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@e873838
|
4 years |
Thierry Delisle |
Removed unpark and added support for unpark from the kernel …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@6a77224
|
4 years |
Thierry Delisle |
Changed park/unpark ticket to be -1,0,1 instead of 0,1,2 because it's …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@5afb49a
|
4 years |
Thierry Delisle |
Split thread_leave so backend is called from the kernel once the …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@e235429
|
4 years |
Thierry Delisle |
Removed last parker/unparker information is it was not particularly useful
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@e67a82d
|
4 years |
pabuhr |
fix conflicts
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@fd9b524
|
4 years |
pabuhr |
change from asm volatile(pause) to Pause()
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@1eb239e4
|
4 years |
Thierry Delisle |
Removed snzi and replaced it with a fast/slow path
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@3e2b9c9
|
4 years |
Thierry Delisle |
More restructuring of translation units
Unclear if it improves …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@e660761
|
4 years |
Thierry Delisle |
First attempt at reducing complation time by restructuring the code. …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@f00b26d4
|
4 years |
Thierry Delisle |
Re-worked IO to use epoll and support multiple io_contexts per …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@320ec6fc
|
4 years |
Thierry Delisle |
Changed ready_queue_(grow/shrink) to take a target instead of going …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@efc171d1
|
4 years |
Thierry Delisle |
Fixed several concurrency warnings
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@47746a2
|
4 years |
Thierry Delisle |
Added stats macro to reduce typing when using stats
Added new macros …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@31bb2e1
|
4 years |
Thierry Delisle |
Moved implementations of cfa_[io call] to iocall.cfa
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@7812a7b5
|
4 years |
Thierry Delisle |
Fixed errors and warning with x86 build
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@bdce852
|
4 years |
Thierry Delisle |
Switched RNG from lehmer64 to wyhash64 for 32-bit builts
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@13c5e19
|
4 years |
Thierry Delisle |
- Moved snzi and subqueues outside of ready_queue.cfa.
- Added …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@64a7146
|
4 years |
Thierry Delisle |
Fixed idle sleep to no-longer use a spinlock, broke registration and …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@37ba662
|
4 years |
Thierry Delisle |
Minor improvements to alignments and memory layout
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@8834751
|
4 years |
Thierry Delisle |
Moved statistics to stats.cfa to combine ready Q stats and IO stats
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@9b1dcc2
|
4 years |
Thierry Delisle |
Changed scheduling API to adapt to non-Processors scheduling threads.
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@b388ee81
|
4 years |
Thierry Delisle |
Changed ready RW-Lock to be a single global lock instead of per …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@2f1cb37
|
4 years |
Thierry Delisle |
Merge branch 'master' into relaxed_ready
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@504a7dc
|
4 years |
Thierry Delisle |
Some fixes after the merge, compiles but still has livelocks
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@6a490b2
|
4 years |
Thierry Delisle |
Merge branch 'master' into relaxed_ready
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@dd4e2d7
|
4 years |
Thierry Delisle |
Added option to change the length of the array of ready sqe
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@b6f2b21
|
4 years |
Thierry Delisle |
Added the option to dynamically (at cluster creation time) …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@6502a2b
|
4 years |
Thierry Delisle |
Tentative fix to the deadlock in cluster shutdown
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@f6660520
|
4 years |
Thierry Delisle |
Added new implementation of io_uring that uses user-thread
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@2d8f7b0
|
4 years |
Thierry Delisle |
Implemented basic non-blocking io
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@92976d9
|
4 years |
Thierry Delisle |
Implemented basic io_uring setup and poller
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@92e7631
|
4 years |
Thierry Delisle |
Fixed ready state.
Fixed race condition between halt and wake_*
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@ac2b598
|
4 years |
Thierry Delisle |
Changed descriptors for concurrency to use $ prefix instead of …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@c7a900a
|
4 years |
Thierry Delisle |
More renames and clean-ups
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@8c50aed
|
4 years |
Thierry Delisle |
Some clean-up and renaming, also adding attribute((const/pure)) …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@b7d6a36
|
4 years |
Thierry Delisle |
Merge branch 'master' into relaxed_ready
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@b0c7419
|
5 years |
Thierry Delisle |
Yield now uses force_yield instead of park/unpark.
Final ctxswitch of …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@3381ed7
|
5 years |
Thierry Delisle |
Added park/unpark primitives thread and removed BlockInternal?. …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@9f575ea
|
5 years |
Thierry Delisle |
First attempt at park/unpark
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@09f357ec
|
5 years |
Thierry Delisle |
Optim : coroutine and thread creation no-longer uses polymorphic call, …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@dca5802
|
5 years |
Thierry Delisle |
Started doing some of the x86 implementations and some changes after a …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@f80f840
|
5 years |
Thierry Delisle |
Merge branch 'master' into relaxed_ready
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@b798713
|
5 years |
Thierry Delisle |
Working ready queue
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@1805b1b
|
5 years |
pabuhr |
refactor pthread_create into create_pthread, change NULL to 0p
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@7768b8d
|
5 years |
Thierry Delisle |
First step at adding the new ready queue to Cforall
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@21184e3
|
5 years |
Thierry Delisle |
Added Thread-Local random number generator to kernel which will be …
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@722c0848
|
5 years |
Thierry Delisle |
Added assertion to WakeThreads? routine
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@2026bb6
|
5 years |
Thierry Delisle |
More robust fix for optionally linking threads
ADTarm-ehast-experimentalenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprpthread-emulationqualifiedEnum
|
|
|
@afc2427
|
6 years |
Thierry Delisle |
Use initial exec for thread local storage
ADTaaron-thesisarm-ehast-experimentalcleanup-dtorsdeferred_resnenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprno_listpersistent-indexerpthread-emulationqualifiedEnum
|
|
|
@58b6d1b
|
6 years |
Thierry Delisle |
Fixed tests after headers change
ADTaaron-thesisarm-ehast-experimentalcleanup-dtorsdeferred_resndemanglerenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprno_listpersistent-indexerpthread-emulationqualifiedEnum
|
|
|
@73abe95
|
6 years |
Thierry Delisle |
Replace extension-less headers with .hfa
ADTaaron-thesisarm-ehast-experimentalcleanup-dtorsdeferred_resndemanglerenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprno_listpersistent-indexerpthread-emulationqualifiedEnum
|