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.

Reply via email to