Bob Chen

Results 137 comments of Bob Chen

Alright, I see. Please provide your OS type, kernel version, and liburing version. If able to reproduce, maybe we can add some if else code to by-pass calling `multi-shot`. Photon's...

> Is there any alternative if not using io_uring_prep_poll_multishot I'm afraid not. This is just the bug described in https://github.com/alibaba/PhotonLibOS/pull/264/files#r1398418634. It used to be a one-shot poll + while loop,...

https://github.com/alibaba/PhotonLibOS/blob/1ee55db5e788c813f10f4646181eb49345c15ea0/io/iouring-wrapper.cpp#L399-L402 https://github.com/alibaba/PhotonLibOS/blob/1ee55db5e788c813f10f4646181eb49345c15ea0/io/iouring-wrapper.cpp#L437-L442 I'm thinking about not using `eventfd_write` but `io_uring_prep_write` + `io_uring_submit`. And in the reap loop, when confirmed the caller is from `cancel_wait`, just continue. We can even use...

@MJY-HUST I'll make a formal patch for kernel less than 5.13, based on your contribution code.

@MJY-HUST Were you using a customized kernel rather than official one from upstream vendor? My test machines is debian 11 with kernel 5.10.0-30-amd64, and multi-shot poll is still working.

1. How many vCPUs are you using to synchronize with this semaphore? How many cores are there in your EC2. 2. Does this issue appear on other platforms or physical...

I think the best practice is to set the number of vCPUs to be the same as the number of physical cores (of your EC2 instance). At least do not...

`my vcpu count is 12 and actually pod(deploy in k8s) limit 4 CPUs` @lucaspeng12138 4 cpu in total or 4 * 12?

> [@lucaspeng12138](https://github.com/lucaspeng12138) Could you try branch 0.8 and see whether the huge latency of 300~600ms exists or not? We had a major revision of semaphore since that branch, which may...

@lucaspeng12138 Maybe you can try Photon's WorkPool, instead using a custom ThreadPool. A WorkPool is able to manage all vCPUs. WorkPool uses MPMC queue to dispatch tasks to vCPU.