http://bugs.winehq.org/show_bug.cgi?id=59765 --- Comment #6 from mcsordas <csoresz2@gmail.com> --- (In reply to Zeb Figura from comment #5)
(In reply to mcsordas from comment #4)
For a single stream, recv() is roughly:
Windows: ~1.2 us average Wine 5: ~21-24 us average Wine 11.8: ~420-460 us average So compared to Wine 5, recv() is roughly 18-22x slower on Wine 11.8.
Hmm. I tested locally on this machine and I see roughly 10 ns with 5.0 vs 20 ns with 11.8. It's different hardware but I'd still expect to be able to reproduce something close to that 20x difference. What kind of parameters are you looking at, buffer size and whatnot? Is this just TCP loopback?
Hi, Thanks for checking. One important detail: these measurements were taken on a production-like/live system where around 50 streams were running concurrently. The timing data I sent is from one stream/client, but it was not measured in isolation. The system was under the normal multi-stream workload, with wineserver already under high load. Although I only included timing data from one stream, the other streams showed similar numbers. This is not TCP loopback. These are real RTSP-over-TCP camera streams over the network, using live555. The connections are typically to remote camera endpoints, mostly on port 554. I also checked the receive buffer sizes passed to recvfrom() in this live555 code path. The pattern is mostly small reads, for example: bs: 1452 bs: 1 bs: 1 bs: 1 ... The 1452-byte reads appear frequently, and there are also many 1-byte reads. This looks like the normal RTSP-over-TCP / interleaved stream parsing path. So the numbers are not from an isolated recv() microbenchmark. They are measured around the actual Winsock recvfrom() calls in the live555-based RTSP-over-TCP receive path, while many other similar streams are active at the same time. Please let us know if there is a specific parameter or test setup you would like us to try. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.