-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Investigate usage of XRD_PARALLELEVTLOOP #7709
Comments
This is also discussed in an xrootd issue here: xrootd/xrootd#1425 |
First simple tests: XRD_PARALLELEVTLOOP=4In theory this should use 4 threads, but there are 10 instead
XRD_PARALLELEVTLOOP=1This should use 1 thread, I see 7
XRD_WORKERTHREADS=1 XRD_PARALLELEVTLOOP=1I have found another environment variable in the xrootd docs https://xrootd.slac.stanford.edu/doc/xrdcl-docs/xrdcldocs.pdf described as "Number of threads processing user callbacks." with default value 3 . Setting both variables to 1 leads to 5 threads
So for now:
|
Just a short summary of our discussion in xrootd/xrootd#1495
|
Hello. This feature is now leveraged by the newest xrootd client versions, including the one that comes with ROOT. See for example this PPP meeting. The item was investigated, judged interesting and now the feature available by default to every xrootd user, including ROOT. For this reason, @amadio @vepadulano, I propose to close the item: would you agree? |
Yes, I think this can be closed. I'd just like to remark that after the Xcache server was reconfigured as a cluster internally (my suggestion, but done by David), then the performance with Xcache is now also good enough with MT, as the bottleneck was on the server side due to it being a single machine and the way connections are handled. No fake client trick should be required anymore! |
Yes, @amadio , that was a nice intuition of yours. The comment also goes beyond this particular item and shows we really explored the topic in depth :) I am closing the issue. |
Explain what you would like to see improved
During PPP97 Josh brought up that xrootd checks the environment variable
XRD_PARALLELEVTLOOP
to decide how many event loops to spawn, and his multi-thread use-case benefited from setting it to a value higher than one.It was agreed that we should investigate whether this is something interesting for RDF/DistRDF or other multi-thread use cases in ROOT.
Additional context
The variable is mentioned in the
xrdcp
man page, see e.g. here.The text was updated successfully, but these errors were encountered: