Simultaneous Solving of Batched Linear Programs on a GPU

02/21/2018
by   Amit Gurung, et al.
0

Linear Programs (LPs) appear in a large number of applications and offloading them to a GPU is viable to gain performance. Existing work on offloading and solving an LP on a GPU suggests that there is performance gain generally on large sized LPs (typically 500 constraints, 500 variables and above). In order to gain performance from a GPU, for applications involving small to medium sized LPs, we propose batched solving of a large number of LPs in parallel. In this paper, we present the design and implementation of a batched LP solver in CUDA, keeping memory coalescent access, low CPU-GPU memory transfer latency and load balancing as the goals. The performance of the batched LP solver is compared against sequential solving in the CPU using the open source solver GLPK (GNU Linear Programming Kit) and the CPLEX solver from IBM. The evaluation on selected LP benchmarks from the Netlib repository displays a maximum speed-up of 95x and 5x with respect to CPLEX and GLPK solver respectively, for a batch of 1e5 LPs. We demonstrate the application of our batched LP solver to enhance performance in the domain of state-space exploration of mathematical models of control systems design.

READ FULL TEXT

page 1

page 14

page 19

research
01/17/2022

Learning to Reformulate for Linear Programming

It has been verified that the linear programming (LP) is able to formula...
research
08/21/2017

Parallel solver for shifted systems in a hybrid CPU-GPU framework

This paper proposes a combination of a hybrid CPU--GPU and a pure GPU so...
research
06/15/2021

Improving Search by Utilizing State Information in OPTIC Planners Compilation to LP

Automated planners are computer tools that allow autonomous agents to ma...
research
02/13/2019

Two-Dimensional Batch Linear Programming on the GPU

This paper presents a novel, high-performance, graphical processing unit...
research
01/27/2022

Porting OpenACC to OpenMP on heterogeneous systems

This documentation is designed for beginners in Graphics Processing Unit...
research
05/10/2021

PeriPy – A High Performance OpenCL Peridynamics Package

This paper presents a lightweight, open-source and high-performance pyth...
research
06/28/2018

A GPU-enabled finite volume solver for large shallow water simulations

This paper presents the implementation of a HLLC finite volume solver us...

Please sign up or login with your details

Forgot password? Click here to reset