Questions tagged [parallel-computing]

In parallel computing a computational task is typically broken down into many sub-tasks that can be processed independently and whose results are combined upon completion. It is also called multiprocessing. In serial computing a single core multitasks all or part of a series of instructions for a short period of time before switching to another task, giving the appearance of all the tasks running simultaneously even though they run one at a time.

Filter by
Sorted by
Tagged with
29 votes
5 answers
12k views

Which GPUs to get for Mathematical Optimization (if any)?

The Machine Learning community has largely benefited from modern GPUs and several large companies are investing in new dedicated hardware. Unfortunately, academic and commercial mathematical ...
Stefano Gualandi's user avatar
11 votes
2 answers
1k views

Linear Optimization Library for C++ with GPU Support

Does anyone know any linear optimization libraries for C++ supporting GPUs for parallelization? If multiple, which do you recommend? The GPU support is important to me since I am dealing with large ...
Daneshvar Amrollahi's user avatar
11 votes
3 answers
1k views

Parallel nonlinear solvers

I've noticed that parallel (CPU or GPU) nonlinear programming solvers are few and far between. It seems that if any parallelization is involved at all, it generally applies to solving the underlying ...
Josh Allen's user avatar
10 votes
2 answers
260 views

Parallelization of an existing Adaptive Large Neighbourhood Search Heuristic

I am solving (or say, trying to find good solutions for) an arbitrary combinatorial optimization problem, think of it as a Vehicle Routing Problem with a bunch of side constraints that are not ...
Albert Schrotenboer's user avatar
9 votes
3 answers
1k views

CPLEX, number of threads and solving time

Using CPLEX via its Python API, I encountered a "weird" behavior. For some instances, with a limited number of threads (10 in my tests), the instances cannot be solved after 10 days (afterwards, the ...
Olf's user avatar
  • 191
7 votes
5 answers
2k views

Fast way to repeatedly solve many similar LPs/QPs in parallel

I am running a simulation where I need to repeatedly solve a set of LPs or QPs with slightly different input parameters for a Model Predictive Control application. The problem is I need it to be fast, ...
Zach Lee's user avatar
  • 131
7 votes
1 answer
706 views

RAM requirement for optimization problems

I understand that RAM required for optimization problem is problem specific and some problems require much more memory. I am thinking how much RAM I need for my system and need to decide between ...
Jonn's user avatar
  • 333
5 votes
3 answers
2k views

Gurobi and CPLEX cannot exploit more than 32 cores of machine

I have some attempts to solve a scheduling problem using the Gurobi and doCPLEX API in python and .NET on Ubuntu-server installed on a hyper-computing cluster with 64 physical cores. Unfortunately, ...
Mohammad Namakshenas's user avatar
5 votes
3 answers
384 views

How to use solvers with virtual machines?

Is there any way to install and use commercial solvers (for which I have a license) on some virtual machines? For example, if it's possible to install the Octeract engine student version on a google ...
Oguz Toragay's user avatar
  • 8,642
4 votes
2 answers
306 views

When solving many MILPs how to assign CPU cores to solver instances?

Let's say I have an 16 core machine and many roughly equally hard MILP problems and enough RAM. The latency of solving doesn't matter. With how many cores should I start solvers on to maximize ...
worldsmithhelper's user avatar
4 votes
1 answer
239 views

How to parallelize metaheuristics algorithms (Island Model)?

I have different metaheuristics (Tabu search, Simulated annealing, Iterated local search) solving an optimization problem (a variant of the resource-constrained project scheduling problem). Each ...
Antarctica's user avatar
  • 2,917
3 votes
0 answers
72 views

Pygmo2: What is the point of evolving an archipelago in a loop if number of generations already set in algo

I want to solve a multi-objective problem with nsga2 or moead taking advantage of the parallelism available in pygmo library. I have seen a very nice example on github posted below. However I am not ...
Sophie's user avatar
  • 31
2 votes
2 answers
131 views

Literature for building solver portfolios

A portfolio of solvers is a collection of solvers with different configurations that share CPU time, CPU cores, and memory resources and try to get an answer as soon as possible. Solvers might also ...
worldsmithhelper's user avatar