[Pellet-users] Java Heap Space exception while taxonomy reasoning
Evren Sirin
evren at clarkparsia.com
Fri Jul 18 17:07:42 UTC 2008
On 7/15/08 5:00 AM, Nils Masuch wrote:
> Hi,
>
> I'm using OWL API and Pellet 1.5.2 and I have the following problem: I
> want to use pellet for taxonomy matching and therefore I load a couple
> of ontologies into pellet. This works fine so far. But whenever I want
> to reason on it by using the isEquivalentClass() method I get a Java
> heap space exception:
>
The very first thing to do is to increase the Java heap space if you
have not already done so. The default limit for Java heap space is quite
small and will not be enough for reasoning with most ontologies. You can
incrementally might try 1GB or something similar to see if that solves
the problem (The Java option -Xmx1000m would do the trick).
> Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
> at org.mindswap.pellet.Individual.addType(Individual.java:255)
> at
> org.mindswap.pellet.CompletionStrategy.addType(CompletionStrategy.java:252)
> at
> org.mindswap.pellet.CompletionStrategy.applyUniversalRestrictions(CompletionStrategy.java:235)
> at
> org.mindswap.pellet.CompletionStrategy.createFreshIndividual(CompletionStrategy.java:215)
> at
> org.mindswap.pellet.CompletionStrategy.applySomeValuesRule(CompletionStrategy.java:1204)
> at
> org.mindswap.pellet.CompletionStrategy.applySomeValuesRule(CompletionStrategy.java:1028)
> at
> org.mindswap.pellet.CompletionStrategy.applySomeValuesRule(CompletionStrategy.java:988)
> at org.mindswap.pellet.SROIQStrategy.complete(SROIQStrategy.java:260)
> at org.mindswap.pellet.ABox.isConsistent(ABox.java:1615)
> at org.mindswap.pellet.ABox.isConsistent(ABox.java:1499)
> at
> org.mindswap.pellet.KnowledgeBase.consistency(KnowledgeBase.java:1568)
> at
> org.mindswap.pellet.KnowledgeBase.isConsistent(KnowledgeBase.java:1589)
> at
> org.mindswap.pellet.KnowledgeBase.ensureConsistency(KnowledgeBase.java:1595)
> at
> org.mindswap.pellet.KnowledgeBase.isEquivalentClass(KnowledgeBase.java:2196)
> at
> org.mindswap.pellet.owlapi.Reasoner.isEquivalentClass(Reasoner.java:1055)
> at
> de.dailab.jiactng.servicematcher.ServiceMatcher.exactMatch(ServiceMatcher.java:748)
> at
> de.dailab.jiactng.servicematcher.ServiceMatcher.compareParams(ServiceMatcher.java:623)
> at
> de.dailab.jiactng.servicematcher.ServiceMatcher.compareReqAdvContest(ServiceMatcher.java:504)
> at
> de.dailab.jiactng.servicematcher.ServiceMatcher.query(ServiceMatcher.java:1054)
> at
> de.dailab.jiactng.servicematcher.ServiceMatcher.main(ServiceMatcher.java:92)
>
> What makes me wonder is that the total number of loaded ontologies into
> pellet is about 10, which shouldn't be too much...
>
Well, if each ontology is large then 10 of them combined will be very
large :) Of course it is the number of terms
(classes/properties/individuals) and complexity of modeling in the
ontology that will affect the memory usage. For example, if you read the
most recent Pellint post [1] there is some discussion about what kind of
modeling causes more memory usage. You can try running your ontologies
through Pellint to see if there are any warnings related to that.
> In fact I've been using the taxonomy reasoning quite for a while but
> with only 2 or 3 ontologies loaded and that was always fine.
>
> I'm very thankful for any help or hint,
>
Hope this helps,
Evren
[1]
http://clarkparsia.com/weblog/2008/07/16/pellint-predicting-reasoner-performance/
> best regards
>
> Nils
>
>
>
>
> _______________________________________________
> Pellet-users mailing list
> Pellet-users at lists.owldl.com
> http://lists.owldl.com/mailman/listinfo/pellet-users
> _______________________________________________
>
> Sponsored by Clark & Parsia, LLC http://clarkparsia.com/
>
More information about the Pellet-users
mailing list