time complexity - Evaluate performance of an algorithm that uses a reasoner -
i have developed algorithm (java piece of code) finds specific paths (property chains) between 2 given classes in owl-dl ontology. here the ontology
actually, pellet reasoner taking time respond queries, 5-7 seconds check whether class f related to-one class d through property r, , query repetitive in algorithm, however, if re-run on similar classes, executes faster (i think it's related in-memory model or ram memory caching...). first time, takes 4-5 minutes (depending on number of checks done).
f ⊑ =1 r.d this bottle neck related ontology , reasoner themselves: (if run without reasoner, executes immediately!)
questions:
1- can evaluate performance disregarding reasoner time? i.e. like: execution immediate, if ignore time taken reasoner!
2- there way improve performance in situation?
my guess time required on first call pellet doing other tasks (e.g., might need classify ontology first).
in order separate reasoning time algorithm, run code twice (in same vm) , consider time used second time around - remove initialization costs total.
Comments
Post a Comment