-
-
Notifications
You must be signed in to change notification settings - Fork 399
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
number of parallel threads invoked by CPLEX parallel optimizer not working #904
Comments
Yes, it appears that julia and CPLEX's multithreading are not interacting properly. What version of Julia/JuMP/CPLEX are you using? |
Hi joehuchette, |
Could you post a minimal reduction of your code that completely reproduces the problem? |
I wouldn't expect this to work at all in Julia, would need some deep technical work to understand and correctly fix the issue. You could try using Gurobi which doesn't require its callbacks to be thread safe. Anyway we ought to display a warning in CPLEX.jl if you use threads and callbacks until this is resolved. |
Thanks, multithreading seems to be working fine in Gurobi. |
Closed in favor of jump-dev/CPLEX.jl#98 |
Dear all,
I have included callbacks in my JuMP function, which in return turns off parallel processing in CPLEX.
Having a look online, I found I can invoke the CplexSolver and set CPX_PARAM_THREADS=4. This parameter specifies how CPLEX should bind threads to cores on platforms where CPLEX supports binding threads to cores ( see https://www.ibm.com/support/knowledgecenter/en/SSSA5P_12.6.3/ilog.odms.cplex.help/CPLEX/Parameters/topics/Threads.html)
Nevertheless, when I then run my runfile I get the following message:
"Please submit a bug report with steps to reproduce this fault, and any error messages that follow (in their entirety). Thanks.
Exception: EXCEPTION_ACCESS_VIOLATION at 0x64f645ea -- jl_gc_pool_alloc at /home/Administrator/buildbot/slave/package_win6_2-x64/build/src/home/Administrator/buildbot/slave/package_win6_2-x64/build/src\gc.c:832
while loading C:\Users\bongiova\Desktop\Scripts_Julia\EDARP\run.jl, in expression starting on line 13"
where my expression starting on line 13 is just the following:
model.solveEDARP("C:/Users/bongiova/Desktop/Scripts_Julia/EDARP/mor2-16.txt",solver=CplexSolver(CPX_PARAM_CUTSFACTOR=1,CPX_PARAM_THREADS=4),valid=true)
(where solveEDARP(path; relax=false, solver=CplexSolver(), valid::Bool = true) is my function containing the optimization model in JuMP)
Does anyone have an idea about what is going on? Is this a Julia bug?
The text was updated successfully, but these errors were encountered: