I’m running some CPLEX (a Math. Programming solver) jobs as remote jobs and trapping each job’s output with the following (more or less):
local res
open(traceFile, "w") do out # https://discourse.julialang.org/t/redirect-stdout-and-stderr/13424/4
redirect_stdout(out) do
res =runInstance("instance", otherStuff)
end
close(out)
end
This appears to work fine from REPL but while it seems to catch the output for /most/ of the remote jobs, I always seem to get some residue output to REPL from (some of) the remote CPLEX jobs like the following:
From worker 3:
From worker 3: Cover cuts applied: 61
From worker 3: Implied bound cuts applied: 359
From worker 3: Flow cuts applied: 82
From worker 3: Mixed integer rounding cuts applied: 571
From worker 3: Zero-half cuts applied: 243
From worker 3: Lift and project cuts applied: 6
From worker 3: Gomory fractional cuts applied: 103
From worker 3:
From worker 3: Root node processing (before b&c):
From worker 3: Real time = 1.65 sec. (2333.42 ticks)
From worker 3: Sequential b&c:
From worker 3: Real time = 66.38 sec. (92988.06 ticks)
From worker 3: ------------
From worker 3: Total (root+branch&cut) = 68.03 sec. (95321.48 ticks)
I don’t know if this is a CPLEX problem or if it is my poor understanding of remote processes.
All help / suggestions appreciated.