From ef2b77be011e2b4b415d1c5bb4901431d81dfaee Mon Sep 17 00:00:00 2001 From: Kimplul Date: Wed, 25 Sep 2024 23:13:20 +0300 Subject: somewhat working grid + Starvation is still an issue, but adding a slight bit of randomness seems to help a bit. Also, simulating massive systems like 64x64 is a bit too slow, so scale grid example down to 16x16. 256 cores is still a fair bit, but I might try to think of some optimization methods. I wonder at what point threading becomes faster than just running on a single core? + Test now also sets processor nodes to sleep to avoid starvation issue, seems like an opportunity for a DoS attack if someone can get enough cores to bombard a single node with enough traffic. The riscv64 processor has an initial control interface, very messy code, should probably come up with a more elegant way to deal with sleep/wakeups --- src/uart/simple_uart.c | 1 - 1 file changed, 1 deletion(-) (limited to 'src/uart') diff --git a/src/uart/simple_uart.c b/src/uart/simple_uart.c index e640ae1..1528a70 100644 --- a/src/uart/simple_uart.c +++ b/src/uart/simple_uart.c @@ -38,7 +38,6 @@ static stat simple_uart_receive(struct simple_uart *uart, struct component *from } putchar(packet_convu8(&pkt)); - fflush(stdout); set_flags(&uart->pkt, PACKET_DONE); return OK; } -- cgit v1.3