| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | workqueue: Don't need to trace items anymore | Omar Rizwan | 2024-12-05 | 1 | -8/+2 |
| | | |||||
| * | WIP: Steal-one instead of steal-half. Might fix dropping items | Omar Rizwan | 2024-12-05 | 1 | -32/+17 |
| | | | | | | | | | Need to test on full Folk system, but this looks like it might fix leaks of statements/work items. Lots of jammed-in half-enabled instrumentation of allocations that I'll remove later. | ||||
| * | workqueue: Fix horrible bug in steal-one (Andy Wingo bug) | Omar Rizwan | 2024-12-05 | 1 | -1/+2 |
| | | |||||
| * | workqueue: Untested on Linux: remove semaphore | Omar Rizwan | 2024-11-29 | 1 | -16/+1 |
| | | | | | Wasn't using this and it was almost certainly a bottleneck. | ||||
| * | Some doc improvements | Omar Rizwan | 2024-11-17 | 1 | -1/+1 |
| | | |||||
| * | workqueue: WIP: actually steal half, not all | Omar Rizwan | 2024-11-17 | 1 | -1/+3 |
| | | |||||
| * | WIP: check workqueue resize (they're getting HUGE on gadget-pink) | Omar Rizwan | 2024-11-14 | 1 | -0/+4 |
| | | | | | clean up print. | ||||
| * | workqueue: Fix steal-half; fixes queue blockages! | Omar Rizwan | 2024-11-06 | 1 | -4/+4 |
| | | |||||
| * | WIP: report workqueue sizes on steal trace | Omar Rizwan | 2024-11-06 | 1 | -0/+7 |
| | | |||||
| * | Implement steal-half (had to be careful with ssize_t) | Omar Rizwan | 2024-10-16 | 1 | -2/+28 |
| | | |||||
| * | web/threads: Factor out itemToStringObj | Omar Rizwan | 2024-09-19 | 1 | -1/+1 |
| | | |||||
| * | WIP: Starting on workqueue reporting | Omar Rizwan | 2024-09-19 | 1 | -4/+25 |
| | | | | | | Need to debug why work items sometimes get dropped (so the GPU doesn't launch, or the web server doesn't launch, or whatever.) | ||||
| * | workqueue: Fix semaphore on macOS | Omar Rizwan | 2024-08-13 | 1 | -5/+8 |
| | | |||||
| * | workerWaiters scheme. This seems to work pretty well? | Omar Rizwan | 2024-08-07 | 1 | -1/+16 |
| | | | | | | | | | Goal: keep at least a couple of threads generally alive and able to respond to new work (which may be dispatched from web, camera, etc). The manager can replenish that set of threads, they may get depleted by computational or OS-blocking work, and extra threads beyond the minimum number of workers should die off over time. | ||||
| * | Fix workqueue.c | Omar Rizwan | 2024-05-22 | 1 | -0/+1 |
| | | |||||
| * | trace: Raise limit; print thread index | Omar Rizwan | 2024-05-22 | 1 | -1/+0 |
| | | | | | Trying to debug why I'm getting dupe items in the trace | ||||
| * | workqueue: Use wingo fix for integer overflow | Omar Rizwan | 2024-05-17 | 1 | -8/+11 |
| | | |||||
| * | WIP: new workqueue/thread control compiles | Omar Rizwan | 2024-05-17 | 1 | -6/+15 |
| | | |||||
| * | WIP: workqueue from chase-lev | Omar Rizwan | 2024-05-17 | 1 | -44/+91 |
| | | |||||
| * | Add REMOVE_PARENT to try to incrementalize better. Add trie mutex. | Omar Rizwan | 2024-03-22 | 1 | -2/+8 |
| | | | | | | | | Trie mutex guards the trieRemove operation that may happen on statement/match release (you don't want to have to hold the db mutex for those, so we make this trie mutex to be smaller to just guard the trie itself). | ||||
| * | WIP: Start on big locking/parallelism refactor | Omar Rizwan | 2024-02-22 | 1 | -1/+2 |
| | | | | | | | | | | | | | | | Remove big DB lock, since that didn't work anyway (we were releasing it on Jim eval) + it would throttle parallelism. Add per-statement and per-match locks. Try to parallelize all Tcl evaluations, even for a particular When, by putting them on the workqueue as well. Definitely not done yet. Outstanding issues: - test hangs still. is Hold broken? - not freeing Clauses properly. do we need to refcount? - still probably some race issues | ||||
| * | workqueue: HOLD priority, some comments. | Omar Rizwan | 2024-02-19 | 1 | -4/+4 |
| | | |||||
| * | Implement Say. Split off test.tcl. Fix mutex bugs. | Omar Rizwan | 2024-02-06 | 1 | -0/+1 |
| | | | | | | Encapsulate Statement type. Next: render edges in graph to make sure Say is setting up parent/child relationships properly. | ||||
| * | Push items to workqueue. | Omar Rizwan | 2024-01-26 | 1 | -0/+5 |
| | | |||||
| * | main: Pop item from work queue in each worker. | Omar Rizwan | 2024-01-26 | 1 | -22/+22 |
| | | |||||
| * | Move to thread prototyping, delete shm_malloc | Omar Rizwan | 2024-01-26 | 1 | -11/+0 |
| | | | | | | | | | | | Threads seem better for now because of all the resources we need to share: Vulkan, camera, and especially C modules, which we want to be callable from any Folk worker. I struggled to figure out how to even share a pqueue between processes (how do you share the mapping of the pqueue ops so that the function pointers are valid everywhere?) | ||||
| * | workqueue: Build, print addresses | Omar Rizwan | 2024-01-26 | 1 | -0/+4 |
| | | |||||
| * | workqueue: WIP, trying to figure out process design | Omar Rizwan | 2024-01-26 | 1 | -0/+55 |
