Commit Graph

11794 Commits

Author SHA1 Message Date
Michael Mueller
90fd2368d0 base-nova: Changed mapping of cores so that for each cores x and y, it is guaranteed that if x is greater than y, the NUMA ID of x is always greater than or equal to that of y. 2024-01-30 18:04:29 +01:00
Michael Mueller
20be3b397f base: Changed API for cell management. 2024-01-30 18:00:14 +01:00
Michael Mueller
5ddeb09107 base-nova: Changed hypercall interface for cell management to reflect the change of API in the hypervisor. 2024-01-30 17:58:42 +01:00
Michael Mueller
e7d6363362 base-nova: Synchronize output to serial console with the hypervisor. 2024-01-30 17:56:51 +01:00
Michael Mueller
1fd735989f base-nova: Adapted PD session to the change of NOVA's API for cell management. 2024-01-30 17:55:25 +01:00
Michael Mueller
c455e9266e base: Added operatiors for comparing affinities. 2024-01-30 17:53:41 +01:00
Michael Mueller
a2a03fafd2 Hoitaja: Update core allocation range in kernel when affinity is changed due to growing or shrinking a cell. 2024-01-18 18:55:35 +01:00
Michael Mueller
d1e7654652 Hoitaja: A Hoitaja cell now creates a kernel object for the cell. This way the core affinity of a cell, that was calculated by Hoitaja, is communicated to the kernel's core allocator. 2024-01-18 18:54:37 +01:00
Michael Mueller
5cbac9f128 base: New RPCs to allow to associate a PD with a Cell and growing and shrinking a cell's core allocation. 2024-01-18 18:51:49 +01:00
Michael Mueller
fe4c8e1dfe NOVA: Added new hypercalls for Cell management. 2024-01-18 18:49:49 +01:00
Michael Mueller
3c133b459e NOVA: Added new hypercalls for cell management and CPU core allocation. 2023-12-15 14:35:04 +01:00
Michael Mueller
705f262eb9 Always use branch tukija for NOVA. 2023-12-15 14:27:57 +01:00
Michael Mueller
539bb07995 Made TASKING service, Suoritin, a member of the Habitat rather than Hoitaja. This way the habitat has direct access to the Suoritin sessions without sending pointers around. Also added new entrypoint for Hoitaja's timer. 2023-10-13 19:01:45 +02:00
Michael Mueller
80bde5fd90 Updated session interface and fixed off-by-one bug in interface allocator. 2023-10-13 18:59:29 +02:00
Michael Mueller
02de7a4e56 Suoritin: Redefined TASKING session interface. 2023-10-13 18:58:49 +02:00
Michael Mueller
ec52fd1e8b Suoritin: Added file description to component.h. 2023-10-10 17:37:58 +02:00
Michael Mueller
29eaa64d2e Added Suoritin client component for testing. 2023-10-10 16:41:38 +02:00
Michael Mueller
7a127d5402 Moved code into a header file. 2023-10-10 16:39:59 +02:00
Michael Mueller
cd124b4860 Updated vscode run script to include Suoritin example. 2023-10-10 16:39:19 +02:00
Michael Mueller
22b814489c Removed source file from Hoitaja's Makefile due to refactoring. 2023-10-10 16:38:33 +02:00
Michael Mueller
1bcc85e556 Announce Suoritin as one of Hoitaja's services. 2023-10-10 16:37:41 +02:00
Michael Mueller
e614c0fb33 Implemented session and root component for Suoritin 2023-10-10 16:36:14 +02:00
Michael Mueller
0b5b89a469 Made Suoritin tasking service more verbatim for debugging. 2023-10-10 16:35:02 +02:00
Michael Mueller
f362843245 Fixed broken link for paper 2023-10-10 11:48:57 +02:00
Michael Mueller
1205032bd6 Use absolute path to resize2fs as on Debian /sbin is not in PATH by default. 2023-08-07 18:33:24 +02:00
Michael Mueller
6f60db5209 blinktree: More complex scenario using TRACE service and top. 2023-08-07 18:31:51 +02:00
Michael Mueller
02dd7fdb78 Updated vscode configuration. 2023-08-07 18:23:21 +02:00
Michael Mueller
1b3eef72f7 Example for using the low-level interface for PMCs. 2023-08-07 18:18:58 +02:00
Michael Mueller
d1ee1e82a4 top: Changed CPU configuration to work with topology used by blinktree. 2023-08-07 18:14:40 +02:00
Michael Mueller
667e272a8a hoitaja: Added Suoritin as service to Hoitaja. 2023-08-07 18:13:34 +02:00
Michael Mueller
6b31730301 Removed default memory configuration for qemu. 2023-08-07 18:12:51 +02:00
Michael Mueller
ecf760f4b5 Print directories for verbose build to create build.log for vscode. 2023-08-07 18:11:32 +02:00
Michael Mueller
e4f43c1edd hoitaja: Added new CPU interface providing abstraction for task-parallelism. 2023-08-07 18:09:58 +02:00
Michael Mueller
278fbb2281 hoitaja: Added state_handler callback for notifying hoitaja about a cells construction or termination. 2023-08-07 18:07:49 +02:00
Michael Mueller
025a7ce667 hoitaja: Dummy classes for functions to be implemented later. 2023-08-07 18:06:26 +02:00
Michael Mueller
fd216a5613 hoitaja: Implemented core (re-)allocation upon Cell construction/destruction. 2023-08-07 18:05:14 +02:00
Michael Mueller
01cf697875 hoitaja: First version of static core allocator. 2023-08-07 18:03:45 +02:00
Michael Mueller
d603ea90c0 hoitaja: Added class representing Cells. 2023-08-07 18:03:11 +02:00
Michael Mueller
6f3449f568 hoitaja: Fixed include error in cell_controller.h. 2023-08-07 18:02:07 +02:00
Michael Mueller
2dd211a1b3 Updated hash for shim. 2023-08-07 18:00:09 +02:00
Michael Mueller
c39a9201e7 Added priorities to yield testing scenario. 2023-08-07 17:59:31 +02:00
Michael Mueller
0f3368cbe4 base: Updated symbols table. 2023-08-07 17:58:03 +02:00
Michael Mueller
260079b5c4 Print directory when VERBOSE= is given on make cmdline. 2023-08-07 17:57:34 +02:00
Michael Mueller
550c376e40 sandbox: Refactored sandbox library to make it extensible via inheritance. 2023-08-07 17:56:28 +02:00
Michael Mueller
b711e0d091 Example for a cell that voluntarily terminates after a period of time. 2023-08-07 17:54:24 +02:00
Michael Mueller
4ee2070573 Example code for persistent cell. 2023-08-07 17:53:44 +02:00
Michael Mueller
e58e468808 blinktree: Use PMCs by default. 2023-08-07 17:52:04 +02:00
Michael Mueller
6d53c9c874 blinktree: Updated PMC definitions for AMD Epyc. 2023-08-07 17:51:37 +02:00
Michael Mueller
1245236ee2 Convenience scenario creating build.log for vscode's Intellisense. 2023-08-07 17:49:48 +02:00
Michael Mueller
fa1e794c4d Example scenario for PMC usage. 2023-08-07 17:48:38 +02:00