6 Replies Latest reply: Apr 27, 2012 4:07 PM by 366556 RSS

    Performance issues with sem_apis.create_entailment

    366556
      I noticed that running this, it takes about 3 minutes to complete:

      EXECUTE sem_apis.create_entailment('M1_RI', sem_models('M1s'), sem_rulebases('OWLPRIME'),sem_apis.REACH_CLOSURE, null,'INC=T DOP=4');

      however trying to run this:

      EXECUTE sem_apis.create_entailment('M1_RI', sem_models('M1s'), sem_rulebases('OWLPRIME'),sem_apis.REACH_CLOSURE, 'SVFH' ,'INC=T DOP=4');

      It doesn't complete even after 30 min...

      Is there a way to improve performance? I'm running Oracle g11.2.0.1.0

      Thanks.
        • 1. Re: Performance issues with sem_apis.create_entailment
          alwu-Oracle
          Hi,

          Did you run gather stats before all the call? What kind of hardware (CPUs, MEM, I/O) are you using?
          On a quad core system, I normally use an option like:

          DOP=4,RAW8=T,HASH_PART=32

          Now, in your ontology, do you have lots of someValuesFrom?

          Thanks,

          Zhe
          • 2. Re: Performance issues with sem_apis.create_entailment
            366556
            Hi Zhe,

            I gather statistics after I create the entailment:

            execute sem_apis.analyze_entailment('M1_RI');


            The machine has Ubuntu OS, 8 CPUs, 16G MEM, and 7500 rpm ATA IO.

            I have 5 ontologies in the entailment and about 3500 statements containing someValuesFrom.

            Thanks,
            A.

            just fyi
            when I tried EXECUTE sem_apis.create_entailment('M1_RI', sem_models('M1s'), sem_rulebases('OWLPRIME'),sem_apis.REACH_CLOSURE, 'CHAIN' ,'INC=T DOP=4'); it took about 10 or more min but it completed. (I have some chaining in the ontology).
            • 3. Re: Performance issues with sem_apis.create_entailment
              alwu-Oracle
              Hi,

              How many ATA disks do you have? If you are using multiple physical disks, are you using RAID, or ASM, or maybe both?

              Can you please start from dropping the entailment and list the performance for each step as follows?

              - exec sem_apis.drop_entailment ('M1_RI')

              - sem_apis.create_entailment('M1_RI', sem_models('M1s'), sem_rulebases('OWLPRIME'),sem_apis.REACH_CLOSURE, 'CHAIN' ,'INC=T,DOP=4');

              - add some new assertions

              - re-run sem_apis.create_entailment('M1_RI', sem_models('M1s'), sem_rulebases('OWLPRIME'),sem_apis.REACH_CLOSURE, 'CHAIN' ,'INC=T,DOP=4');

              -- add some more assertions

              - - re-run sem_apis.create_entailment('M1_RI', sem_models('M1s'), sem_rulebases('OWLPRIME'),sem_apis.REACH_CLOSURE, 'CHAIN' ,'INC=T,DOP=4');

              Thanks,

              Zhe

              Edited by: alwu on Apr 23, 2012 2:48 PM
              • 4. Re: Performance issues with sem_apis.create_entailment
                366556
                Hi,

                I wanted to clarify that I don't see a problem with 'chain' only with the 'SVFH' parameter.

                The Oracle installation is just on one disk-space not using RAID or ASM, just a very plain installation.

                I'v deleted the entailment. I had to kill the process after running for 2 hours. So I'm not able to get a valid and/or complete entailment running this process:

                sem_apis.create_entailment('M1_RI', sem_models('M1s'), sem_rulebases('OWLPRIME'),sem_apis.REACH_CLOSURE, 'SVFH' ,'INC=T,DOP=4');
                • 5. Re: Performance issues with sem_apis.create_entailment
                  alwu-Oracle
                  Thanks. I see.

                  Can you share with us the ontology? I need to reproduce it locally.

                  Zhe
                  alan dot wu at oracle dot com
                  • 6. Re: Performance issues with sem_apis.create_entailment
                    366556
                    Thank you Zhe. I was able to create entailment running this execute:

                    EXECUTE sem_apis.create_entailment('test1_RI', sem_models('test1'), sem_rulebases('OWLPRIME'),sem_apis.REACH_CLOSURE, 'SNOMED,INTERSECTSCOH,INTERSECT','INC=T DOP=8 RAW8=T HASH_PART=32');

                    Edited by: a1239090 on Apr 27, 2012 2:07 PM