Coder Social home page Coder Social logo

Comments (7)

ZhenshengLee avatar ZhenshengLee commented on June 12, 2024 2

I think we will wait for the official release before supporting it as well.

Understood, thanks!

from osqp-eigen.

traversaro avatar traversaro commented on June 12, 2024 1

To complement what @S-Dafarra wrote, I think a prerequisite of supporting/documenting explicitly this use case is that the use of OSQP with CUDA via the C interface is explicitly documented/supported in a released (i.e. listed in https://github.com/oxfordcontrol/osqp/releases) version of OSQP, I do not know if that is already the case or it is planned, perhaps @gbanjac or @bstellato are the right person to ask (I guess that the corresponding OSQP upstream issue is osqp/osqp#30 ).

from osqp-eigen.

gbanjac avatar gbanjac commented on June 12, 2024 1

CUDA support for OSQP implemented in cuda-1.0 branch is not a part of any official release yet. It was built on top of develop-1.0 branch that allows an easy transition between different implementations of linear algebra. OSQP with CUDA will be documented and supported once we have OSQP 1.0 version released. We don't know right now when this will happen.

from osqp-eigen.

S-Dafarra avatar S-Dafarra commented on June 12, 2024

Hi @ZhenshengLee, thanks for opening the issue. osqp-eigen is meant to be an interface to use osqp in C++ using eigen objects. If you are interested in the python API I would suggest to use directly the one provided with osqp.

For what concerns the cuda support, I think we never tested it on our side. On the other hand, as far as I understood, osqp started supporting cuda as backend, although it has not properly released yet. I think you can still install osqp with the cuda support, and keep using osqp-eigen normally since the API should not have changed. In any case, this is mainly a supposition of mine, since we did not test this workflow yet.

Feel free to comment or to open a specific issue if the current implementation of osqp-eigen prevents the use of osqp with cuda.

from osqp-eigen.

traversaro avatar traversaro commented on June 12, 2024

Thanks a lot for the quick response @gbanjac .

from osqp-eigen.

ZhenshengLee avatar ZhenshengLee commented on June 12, 2024

Feel free to comment or to open a specific issue if the current implementation of osqp-eigen prevents the use of osqp with cuda.

some data structure has been changed due to cuda interface

  • OSQPWorkspace is replaced with OSQPSolver

  • OSQPData is removed, and data injection is through csc_set_data and osqp_setup

  • many csc related memory allocator functions are removed.

I think a prerequisite of supporting/documenting explicitly this use case is that the use of OSQP with CUDA via the C interface is explicitly documented/supported in a released

I understand that the version of cuda was not released, and the api may not be stable, even I guess the development of this branch was stopped after the paper was published.

The cuda branch of code is still experimental, but with impressive speed up in some usecases.

May be we should add some #ifdef CUOSQP_SUPPORT codes?

I will have a try first.

thanks!

from osqp-eigen.

S-Dafarra avatar S-Dafarra commented on June 12, 2024

I am not sure if those differences are functional, or the result of a divergence between the released version and the cuda branch. In this case, maintaining the interface to be compatible with both versions would be problematic.

I think we will wait for the official release before supporting it as well.

from osqp-eigen.

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.