On 01/25/2018 11:46 PM, Linas Vepstas wrote:
Step one is to assemble a several "reasonable" or "typical" datasets,
along with "typical" queries performed on them.
Step two is to measure the actual performance, and profiling (seeing
where the cycles are spent).
I am (strongly) against just running around and blindly slapping
omp::parallel_for in various random places. Decades-long experience in
zillions of cases proves this is in general a performance
de-accellerator, bug-inducer, and all-around fuck-with-it bad idea.
I agree.
Regarding the datasets/queries. Some URE and pattern miner unit tests or
examples would suffice as far as *I* am concerned. Some of them take a
long time (like the MOSES-PLN synergy forward chaining test that takes a
few hours) and I can arbitrarily inflate the difficulty of some pattern
miner tests as well.
I wonder were such a benchmark script should be, under
https://github.com/opencog/atomspace/tree/master/opencog/benchmark
https://github.com/opencog/external-tools
or maybe in its own repository?
Or perhaps beside the <ATOMSPACE_REPO/tests directory, being treated as
some sort of alternate unit tests dedicated to benchmarking, living
under <ATOMSPACE_REPO>/benchmark that would be invoked with
make benchmark
?
Perhaps I'm crazy, but I believe the PM is already thread-safe. This
tends to be the general coding principle used throught the code. It
should be good to go, and blandly slapping in a omp::parallel_for should
"just plain work".
Cool! It will probably uncover some holes, I suppose, but that looks
like a good start.
Nil
--linas
Nil
Not as fancy as a parallel backtracker, but might work almost as
well
in most common cases... I'd need to think/study more ...
On Wed, Jan 24, 2018 at 4:46 PM, 'Nil Geisweiller' via opencog
<[email protected] <mailto:[email protected]>> wrote:
Regarding multi-threaded pattern matcher, I've always
wondered, why not just
wrap the following loops
https://github.com/opencog/atomspace/blob/master/opencog/query/InitiateSearchCB.cc#L393
<https://github.com/opencog/atomspace/blob/master/opencog/query/InitiateSearchCB.cc#L393>
https://github.com/opencog/atomspace/blob/master/opencog/query/InitiateSearchCB.cc#L634
<https://github.com/opencog/atomspace/blob/master/opencog/query/InitiateSearchCB.cc#L634>
https://github.com/opencog/atomspace/blob/master/opencog/query/InitiateSearchCB.cc#L821
<https://github.com/opencog/atomspace/blob/master/opencog/query/InitiateSearchCB.cc#L821>
in omp algos (see
https://github.com/opencog/cogutil/blob/master/opencog/util/oc_omp.h
<https://github.com/opencog/cogutil/blob/master/opencog/util/oc_omp.h>)
since
most of the time (always?) `found` is set to false anyway.
By setting min_n appropriately (see
https://github.com/opencog/cogutil/blob/master/opencog/util/oc_omp.h#L64
<https://github.com/opencog/cogutil/blob/master/opencog/util/oc_omp.h#L64>)
we'd avoid unnecessary multi-threading overhead.
All we'd need to have this working would be to make sure
that the PM code is
multi-threaded safe (maybe easier said than done).
What do you guys think?
Nil
On 01/24/2018 08:06 AM, Parth Thakkar wrote:
I was going through the suggested projects page, and
found this page:
(https://wiki.opencog.org/w/Parallelizing_OpenCog
<https://wiki.opencog.org/w/Parallelizing_OpenCog>). I'd
like to know if it
is still in scope.
--
You received this message because you are subscribed to
the Google Groups
"opencog" group.
To unsubscribe from this group and stop receiving emails
from it, send an
email to [email protected]
<mailto:opencog%[email protected]>
<mailto:[email protected]
<mailto:opencog%[email protected]>>.
To post to this group, send email to
[email protected] <mailto:[email protected]>
<mailto:[email protected]
<mailto:[email protected]>>.
Visit this group at
https://groups.google.com/group/opencog
<https://groups.google.com/group/opencog>.
To view this discussion on the web visit
https://groups.google.com/d/msgid/opencog/4feba3cc-72bd-42fc-ab13-08fef4d81b8d%40googlegroups.com
<https://groups.google.com/d/msgid/opencog/4feba3cc-72bd-42fc-ab13-08fef4d81b8d%40googlegroups.com>
<https://groups.google.com/d/msgid/opencog/4feba3cc-72bd-42fc-ab13-08fef4d81b8d%40googlegroups.com?utm_medium=email&utm_source=footer
<https://groups.google.com/d/msgid/opencog/4feba3cc-72bd-42fc-ab13-08fef4d81b8d%40googlegroups.com?utm_medium=email&utm_source=footer>>.
For more options, visit
https://groups.google.com/d/optout
<https://groups.google.com/d/optout>.
--
You received this message because you are subscribed to the
Google Groups
"opencog" group.
To unsubscribe from this group and stop receiving emails
from it, send an
email to [email protected]
<mailto:opencog%[email protected]>.
To post to this group, send email to
[email protected] <mailto:[email protected]>.
Visit this group at https://groups.google.com/group/opencog
<https://groups.google.com/group/opencog>.
To view this discussion on the web visit
https://groups.google.com/d/msgid/opencog/c143005d-d924-daec-5961-359bdd03b253%40gmail.com
<https://groups.google.com/d/msgid/opencog/c143005d-d924-daec-5961-359bdd03b253%40gmail.com>.
For more options, visit https://groups.google.com/d/optout
<https://groups.google.com/d/optout>.
--
You received this message because you are subscribed to the Google
Groups "opencog" group.
To unsubscribe from this group and stop receiving emails from it,
send an email to [email protected]
<mailto:opencog%[email protected]>.
To post to this group, send email to [email protected]
<mailto:[email protected]>.
Visit this group at https://groups.google.com/group/opencog
<https://groups.google.com/group/opencog>.
To view this discussion on the web visit
https://groups.google.com/d/msgid/opencog/14d956d0-3898-cc7b-2191-779ccb8c0aeb%40gmail.com
<https://groups.google.com/d/msgid/opencog/14d956d0-3898-cc7b-2191-779ccb8c0aeb%40gmail.com>.
For more options, visit https://groups.google.com/d/optout
<https://groups.google.com/d/optout>.
--
cassette tapes - analog TV - film cameras - you
--
You received this message because you are subscribed to the Google
Groups "opencog" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to [email protected]
<mailto:[email protected]>.
To post to this group, send email to [email protected]
<mailto:[email protected]>.
Visit this group at https://groups.google.com/group/opencog.
To view this discussion on the web visit
https://groups.google.com/d/msgid/opencog/CAHrUA352FhH7VqtNq0xS1sffnHbqstHGO7cixBzmjqNhK_VUjA%40mail.gmail.com
<https://groups.google.com/d/msgid/opencog/CAHrUA352FhH7VqtNq0xS1sffnHbqstHGO7cixBzmjqNhK_VUjA%40mail.gmail.com?utm_medium=email&utm_source=footer>.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups
"opencog" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/opencog.
To view this discussion on the web visit
https://groups.google.com/d/msgid/opencog/67164b15-8b7d-751b-bd23-d229dfb79735%40gmail.com.
For more options, visit https://groups.google.com/d/optout.