You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Go has goroutines, and the keyword go starts a goroutine. Fluid needs GoOp as the go keyword in Go.
Goroutines are green threads, which are not scheduling preemptively; instead, they actively give up the CPU time by hanging themselves up in a waiting queue.
Our first version doesn't have to implement green threads and the scheduling system. We could rather just create OS threads using std::thread.
The challenging part of this work is to make the newly created thread runs a block in a ProgramDesc. The WhileOp could be a good reference.
The text was updated successfully, but these errors were encountered:
How about we make two thread pools, similar to the Cuda stream that, one for computation intensive threads and one for IO intensive threads. The computation thread pool has number of threads same to CPU cores; The IO thread pool can have dynamically increase number of thread with a maximum count.
Go has goroutines, and the keyword
go
starts a goroutine. Fluid needs GoOp as thego
keyword in Go.Goroutines are green threads, which are not scheduling preemptively; instead, they actively give up the CPU time by hanging themselves up in a waiting queue.
Our first version doesn't have to implement green threads and the scheduling system. We could rather just create OS threads using
std::thread
.The challenging part of this work is to make the newly created thread runs a block in a ProgramDesc. The WhileOp could be a good reference.
The text was updated successfully, but these errors were encountered: