Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Probably, but you will have to rip out all the io_uring specific bits and replace them with their Windows equivalent. Probably something with I/O completion ports.

If you are interested, look into the new Windows I/O scheduler that was implemented for GHC 9.0 (in Haskell, obv). There is also some preliminary work to integrate io_uring into the Haskell runtime if it' available, but the Haskell runtime philosophy is rather different from the Rust approach.



Worth noting that having number of IOCP worker threads == number of cores has always been the official suggestion for building IOCP applications.

Eg https://docs.microsoft.com/en-us/windows/win32/fileio/i-o-co...

>The concurrency value of a completion port is specified when it is created with CreateIoCompletionPort via the NumberOfConcurrentThreads parameter. This value limits the number of runnable threads associated with the completion port.

>[...]

>The best overall maximum value to pick for the concurrency value is the number of CPUs on the computer.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: