At 04:53 PM 1/30/2015 -0500, Mark Tompsett wrote:
Greetings,
If there is no negative effect, and only positive effects, I'd be more than willing to submit a patch to default with a -T. :)
I'm looking for "negatives" right now. Give me another little while, and I'll do a bug/enhancement myself with all the numbers (a bit of a struggle, NYTProf doesn't appear to like multi-threading.) Best -- Paul
GPML, Mark Tompsett
-----Original Message----- From: Paul A Sent: Friday, January 30, 2015 3:19 PM To: Fridolin SOMERS ; koha-devel@lists.koha-community.org Subject: Re: [Koha-devel] Search speed
At 05:40 PM 1/30/2015 +0100, Fridolin SOMERS wrote:
You can launch Zebra multi-threaded using : zebrasrv -T
Fridolin - merci mille fois -- first impressions are most positive. I'll try and find time later today to quantify the results and put them in context of my previous tests.
[vi /usr/share/koha/bin/koha-zebra-ctl.sh line 40 to ZEBRAOPTIONS="-T -v none,fatal,warn"]
J'aurais bien aimer trouver ça tout seul ... mais encore une fois avec mes remerciments.
Meilleures amitiés et a+ Paul
Le 30/01/2015 02:59, Robin Sheat a écrit :
Paul A schreef op do 29-01-2015 om 19:39 [-0500]:
Facets appear to have a huge overhead in various components of Zebra, to the point where a single core of a multiple processor CPU gets overwhelmed, but does not share the load with other totally idle cores.
That's not how multiprocessor systems work.
They can only spread load amongst other cores if the software is multithreaded/multiprocess, which I suspect zebra isn't, at least within a single request. If it does all its work in a single thread, then it can't spread across multiple cores.
Intel tell me that this is not fixable through any hardware/BIOS config and they are not aware of a Linux "standard library" that deals with processor affinity. I've searched around a little and found mentions for c and FORTRAN (marvelous old memories for me!) but so far nothing totally specific for Perl.
Zebra is not Perl, zebra is (I think) C. But still, unless it's written with multithreading in mind, you can't do anything about it.
taskset and sched_setaffinity might be usable at system level
Unless you have very specific use cases (which you don't), these won't help.
, and I might have a look at pthread_setaffinity_np.3.gz
That will only help if you plan on rewriting zebra to use pthreads.
I don't recommend rewriting zebra.
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/
-- Fridolin SOMERS Biblibre - Pôles support et système fridolin.somers@biblibre.com _______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/
--- Maritime heritage and history, preservation and conservation, research and education through the written word and the arts. <http://NavalMarineArchive.com> and <http://UltraMarine.ca>
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/
--- Maritime heritage and history, preservation and conservation, research and education through the written word and the arts. <http://NavalMarineArchive.com> and <http://UltraMarine.ca>