Curl's detection of low-speed transfers creates a flood of timeout calls which significantly slows large transfers and increases CPU usage. This is fixed in curl/curl@cacdc27 which is unfortunately not present on EL7.
This PR checks the curl version and only enables the low-speed detection when libcurl is new enough to have the fix.
Trying this patch on a production EL7 xrootd server which handles TPC requests, there was a significant drop in xrootd CPU usage: from ~100% busy, down to ~5%.
To see if the system is likely being affected, look for the function Curl_speedcheck
appearing frequently in the gstack output for xrootd
.
You can view, comment on, or merge this pull request online at:
https://github.com/xrootd/xrootd/pull/941
Commit Summary
- [XrdTpc] Only use Curl's low-speed-limit with libcurl v7.38 and later
File Changes
Patch Links:
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.
{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/xrootd/xrootd","title":"xrootd/xrootd","subtitle":"GitHub repository","main_image_url":"https://github.githubassets.com/images/email/message_cards/header.png","avatar_image_url":"https://github.githubassets.com/images/email/message_cards/avatar.png","action":{"name":"Open in GitHub","url":"https://github.com/xrootd/xrootd"}},"updates":{"snippets":[{"icon":"DESCRIPTION","message":"[XrdTpc] Only use Curl's low-speed-limit with libcurl v7.38 and later (#941)"}],"action":{"name":"View Pull Request","url":"https://github.com/xrootd/xrootd/pull/941"}}}
[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/xrootd/xrootd/pull/941",
"url": "https://github.com/xrootd/xrootd/pull/941",
"name": "View Pull Request"
},
"description": "View this Pull Request on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
}
]
Use REPLY-ALL to reply to list
To unsubscribe from the XROOTD-DEV list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1