I am running an LP model with ~250K variables and ~300K constraints as a test case for CuPDLPx. When I tried to query a dual value from the fixed constraint reference on a variable, it took 9 minutes to query a single dual value. I did test querying the dual of a fixed constraint reference on a simpler model that was solved with CuPDLPx, and it worked fine. For reference, the .lp file of the model I am using can be found at the githup repo here (it won't upload directly on the issue, so apologies for the roundabout way of uploading). The following code loads the .lp file and recreates the problem. Any ideas why the dual is not being returned quickly?
using JuMP, CuPDLPx
m = read_from_file((@__DIR__)*"/test_model.lp")
set_optimizer(m, CuPDLPx.Optimizer)
set_optimizer_attribute(m, "verbose", true)
set_optimizer_attribute(m, "l_inf_ruiz_iterations", 0)
set_optimizer_attribute(m, "iteration_limit", 1e5)
optimize!(m)
println(solution_summary(m))
fixed_variables = []
for v in all_variables(m)
if is_fixed(v)
push!(fixed_variables, v)
end
end
println("TRYING TO GET DUAL VALUE")
@time dual(FixRef(fixed_variables[1]))
I am running an LP model with ~250K variables and ~300K constraints as a test case for CuPDLPx. When I tried to query a dual value from the fixed constraint reference on a variable, it took 9 minutes to query a single dual value. I did test querying the dual of a fixed constraint reference on a simpler model that was solved with CuPDLPx, and it worked fine. For reference, the .lp file of the model I am using can be found at the githup repo here (it won't upload directly on the issue, so apologies for the roundabout way of uploading). The following code loads the .lp file and recreates the problem. Any ideas why the dual is not being returned quickly?