Giter Site home page Giter Site logo

publish new version? about openllet HOT 3 CLOSED

galigator avatar galigator commented on May 24, 2024
publish new version?

from openllet.

Comments (3)

Galigator avatar Galigator commented on May 24, 2024

This is true a new version is require.
There is no special blocker/regression, I don't have publish a new version just because I don't have fix any major issue; I spend so mush time on #35 , there is no way to fix it without creating problems elsewhere.

And now my priorities have changes.

from openllet.

Locke avatar Locke commented on May 24, 2024

Thank you very much for taking the time for doing the release on such short notice!

I just tried it out with my project on both Windows 10 and Debian 10 with each OpenJDK 11 and had no problems.

I spend some time as well looking into this codebase and agree that a major rewrite is required, all the abox branching with a moving branch index makes it hard to follow and in my opinion impossible to support multithreading.

Anyway, my ontology changed a lot since I reported my other issues which improved the performance of my application a lot. Also none of my reported issues affect me (either workaround available or simply not affecting any of my usecases) and from my point of view you don't have to spend much time on them.

Thank you very much again for supporting this project.

from openllet.

Galigator avatar Galigator commented on May 24, 2024

Multithreading support face two problems related to back-jumping (The algorithm use to check the dependency between constraints). First, the implementation use a globally managed array for branchs explored/to be explore, and only a index-number to this array to reference the branch to be explored. Second back-jumping by it-self a non-multithread algorithm; Recent research (2011) show evolution of this algorithm into a multithread version; but the paper is require a serious background in CSP algorithms and a lot more time than I have to transfers it to openllet.

If your ontology don't have any 'negative' constraint that would for a backtrack/backjump some where then multi-threading should work. For this purpose there is an option that enable multithreading in the ABox, this allow check of consistency in a multi-thread stream. But having an ontology without 'negative' constraint is rare.

A solution less costly to develop may be : propagate type-safe interface everywhere in the source, add interface on every class, make things immutable as possible, and instantiate as many reasoner as threads while taking profit of memory sharing.

from openllet.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.