The problem is not with cURL. I have also run into these problems using
cURL. I recoded using sockets and epoll and got the same results. The
problem is with the TCP/IP stack.

On Wed, Jun 1, 2022 at 1:46 PM Aleh Linkin via curl-library <
curl-library@lists.haxx.se> wrote:

> 1. easy_handles
> ```
>  SET_OPT(CURLOPT_ERRORBUFFER, m_errorBuffer);
> setVerbose(true);
> setUrl(url);
> setTimeout(timeout);
> setConnectTimeout(connectTimeout);
> setProxy(proxy);
> setProxyPort(proxyPort);
> setHttpHeaders(httpHeaders);
> SET_OPT(CURLOPT_WRITEFUNCTION, writeFunction);
> SET_OPT(CURLOPT_WRITEDATA, m_requestState);
> SET_OPT(CURLOPT_DEBUGFUNCTION, CurlRequest::debugFunction);
> SET_OPT(CURLOPT_DEBUGDATA, this);
> SET_OPT(CURLOPT_PRIVATE, this);
> SET_OPT(CURLOPT_NOSIGNAL, 1L);
> ```
>
> 2. HTTPS. TLS based on NSS SSL backend
>
> 3. Yes. I've used perf and valgrind-cachgrind but I can't take the reason
> from results. For example perf part:
> ```
> Samples: 1K of event 'cycles:uppp', Event count (approx.): 9397031894
>   Children      Self  Command      Shared Object        Symbol
> -   23.25%     2.43%  lecappqry.1  [unknown]            [.]
> 0000000000000000
>    - 21.58% 0
>         5.29% _int_malloc
>         1.42% free
>         1.13% Curl_http
>         1.07% _int_free
>       + 0.88% __clock_gettime
>         0.72% _IO_vsnprintf
>         0.71% __libc_calloc
> +    5.07%     0.00%  lecappqry.1  [unknown]            [k]
> 0x0000000000667849
> +    5.07%     0.00%  lecappqry.1  [unknown]            [k]
> 0x00007f33507ad900
> +    5.07%     4.87%  lecappqry.1  lecappqry_grpc       [.]
> dprintf_formatf
> +    4.88%     4.71%  lecappqry.1  libc-2.17.so         [.] _int_free ```
>
> On Mon, May 30, 2022 at 9:07 PM Patrick Schlangen <patr...@schlangen.me>
> wrote:
>
>> Am 30.05.2022 um 16:23 schrieb Aleh Linkin via curl-library <
>> curl-library@lists.haxx.se>:
>> >
>> > I understand. Thank you.
>> > But why multi_socket_action eats about twice time more CPU then
>> curl_multi_perform called in cycle with 10ms pause?
>>
>> Can you supply some more details about how the easy handle is configured
>> and the type of transfers you are running? Is it HTTP? Are you using TLS?
>> Did you use perf or a similar profiler yet to see where time is spent?
>>
>> Thanks,
>>
>> Patrick
>>
>> --
> Unsubscribe: https://lists.haxx.se/listinfo/curl-library
> Etiquette:   https://curl.haxx.se/mail/etiquette.html
>
-- 
Unsubscribe: https://lists.haxx.se/listinfo/curl-library
Etiquette:   https://curl.haxx.se/mail/etiquette.html

Reply via email to