I ran the benchmark tests again using latest trunk for server and client. The numbers are interesting. See them here so you can see table formatting:
https://ctf.open.collab.net/sf/wiki/do/viewPage/projects.csvn/wiki/HTTPv2 Using Neon, performance is improved across the board. In some cases, substantially. The number of HTTP requests were cut from 11,723 down to 5,415! The story using Serf is not as good. There are a few places where it is fastest, namely merge. But there are other cases where it is dramatically slower. The number of HTTP requests with Serf is 80,990. Looking at the numbers, it seems like Serf is slowest when it comes to the areas where it issues all those GET requests, such as checkout and update. On other operations it is more inline with Neon. Maybe there is more that could be done to speed up those areas or maybe you need to get the server under high load for the benefits of the Serf approach to manifest? FWIW, I monitored the CPU usage of the server during the run. The utilization was low throughout the runs but definitely higher when Serf was used. That said, I could also see it using both CPU cores when Serf was used, but not with Neon. When you are in Berlin next week I hope you can revisit the discussion about whether Serf should be our default. Right now, unless there are more improvements, I am going to advise that we patch our CollabNet binaries so that Neon is the default. We will of course still include Serf so that it can be configured but I do not think it makes sense for it to be the default if it is going to be considerably slower at most operations. -- Thanks Mark Phippard http://markphip.blogspot.com/