# JuMP: reuse solver objects?

**URL:** <https://discourse.julialang.org/t/jump-reuse-solver-objects/1368>\
**Category:** Optimization (Mathematical)\
**Created:** [January 9, 2017, 2:13pm UTC](https://discourse.julialang.org/t/jump-reuse-solver-objects/1368 "2017-01-09T14:13:27Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![evanfields](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/evanfields/32/1744_2.png) [@evanfields](https://discourse.julialang.org/u/evanfields)\
**Post date:** [January 9, 2017, 2:13pm UTC](https://discourse.julialang.org/t/jump-reuse-solver-objects/1368/1 "2017-01-09T14:13:27Z")

</div>

I’m using JuMP to solve lots of (fairly) small problems sequentially. Is there a major reason for/against reusing solver objects? I.e. better (A) or (B):

**A**

```julia
for i in 1:50
   m = Model(solver = CbcSolver())
   ...
   solve(m)
   ...
end

```

**B**

```julia
s = CbcSolver()
for i in 1:50
   m = Model(solver = s)
   ...
   solve(m)
   ...
end

```

---

<div class="post-metadata">

**Author:** ![miles.lubin](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/miles.lubin/32/279_2.png) [@miles.lubin](https://discourse.julialang.org/u/miles.lubin)\
**Post date:** [January 9, 2017, 3:24pm UTC](https://discourse.julialang.org/t/jump-reuse-solver-objects/1368/2 "2017-01-09T15:24:52Z")

</div>

No, solver objects are lightweight and there’s no performance benefit from reusing them. The main use case for reusing solver objects would be if there are license restrictions on how many concurrent solves you can do, e.g., with [Gurobi](https://github.com/JuliaOpt/Gurobi.jl#reusing-the-same-gurobi-environment-for-multiple-solves).
