libmicrohttpd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [libmicrohttpd] 回复: Help : Any HTTP Performance Benchmark Compariso


From: Evgeny Grin
Subject: Re: [libmicrohttpd] 回复: Help : Any HTTP Performance Benchmark Comparison for Microhttpd with Go HTTP Servers
Date: Thu, 29 Jun 2023 15:13:52 +0300
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0

Hi Forrest,

I'm working on simple program that should demonstrate MHD performance.
It expects that performance is measured on the client side.

I'm not sure what's is not optimal with your current tests, however right now you can use '--enable-heavy-tests' configure parameter, which should enable building of src/testcurl/perf_get_concurrent11. On my test machine with 16 cores (running on Debian SID) I've got the following:

Parallel GETs using internal thread with select(): 48307.692308 requests/s
Parallel GETs using internal thread with select() and thread per connection: 125600.000000 requests/s Parallel GETs using internal thread pool with select(): 132210.526316 requests/s
Parallel GETs using external select: 42576.271186 requests/s
Parallel GETs using internal thread with 'auto': 52333.333333 requests/s
Parallel GETs using internal thread with 'auto' and thread per connection: 179428.571429 requests/s Parallel GETs using internal thread pool with 'auto': 119619.047619 requests/s
Parallel GETs using internal thread with poll(): 52333.333333 requests/s
Parallel GETs using internal thread with poll() and thread per connection: 167466.666667 requests/s Parallel GETs using internal thread pool with poll(): 147764.705882 requests/s
Parallel GETs using internal thread with epoll: 52333.333333 requests/s
Parallel GETs using internal thread poll with epoll: 125600.000000 requests/s
PASS perf_get_concurrent11 (exit status: 0)

configured with CC=gcc-13 CFLAGS=-O3 --enable-build-type=release

It is very surprising that the most efficient modes are "thread-per-connection" with 125-179k requests per second.

Actually this tools was not created to squeeze the maximum performance and it uses libcurl which is fast, but not optimised for maximim performance as will.

The new tool should be ready in a few days.

--
Evgeny

On 29.06.2023 11:51, lingweicai via libmicrohttpd wrote:
Hi experts,


Any suggestions on configuration of libmicrohttpd for good benchmarking results ?


Thanks,

Forrest

Attachment: OpenPGP_0x460A317C3326D2AE.asc
Description: OpenPGP public key

Attachment: OpenPGP_signature
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]