Comments (3)
Most optimisation algorithms do not use the GPU. This is not a limitation of Nonconvex but a limitation of the algorithm packages. If you know a package that implements an algorithm taking advantage of the GPU, please open an issue and I can try to wrap it.
from nonconvex.jl.
Even if the algorithm doesn't support GPUs, the more common use of GPUs in optimization is in the evaluation of the objective or constraint functions and their gradients. This can be written using GPU operations. Since we use Zygote by default, functions using the GPU arrays should differentiate just fine with autodiff in some cases. In other cases, you may need to define your own gradient function and pass it to Nonconvex. Again, nothing is stopping you from writing your own functions and gradients which use the JuliaGPU ecosystem and pass the functions over to Nonconvex for optimization. In this case, the optimization algorithm will be running on the CPU trying to figure out the next point x
to evaluate the objective and constraInts at, but the objective and constraint evaluation will be taking advantage of the GPU. Depending on your problem, the GPU can be utilised in different ways.
from nonconvex.jl.
I am closing this issue since it is not really actionable. If you have a specific case that you want to use the GPU for, I will be happy to help with that. In that case, please open another issue.
from nonconvex.jl.
Related Issues (20)
- symbolify models cause BoundsError HOT 13
- Symbolic AD Sensitivity to Init Values HOT 4
- Problem with Hyperoptim.jl HOT 5
- Mixed-mode AD? HOT 3
- Parallel capabilities of Hyperopt? HOT 1
- Extract number of iterations from results HOT 2
- Problem with sparse matrix when using CustomGradFunction HOT 2
- Trouble calling Julia Function from Python Code HOT 4
- Errors with some Ipopt Solver Settings HOT 4
- Make Nonconvex models type stable HOT 1
- Example of Changing AD Package HOT 2
- problem with Metaheuristics HOT 8
- Unclear how to use Abstract Differentiation HOT 7
- Unified API for information of the results HOT 1
- NLopt zero-order algorithms are using Zygote HOT 9
- Throw a better error when passing an illegal algorithm name for NLopt HOT 1
- Last Number in NLopt Result is Iterations or Function Evaluations? HOT 3
- failed to precompile Nonconvex HOT 6
- Callback Option HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nonconvex.jl.