jump-dev / Cbc.jl

A Julia interface to the Coin-OR Branch and Cut solver (CBC)
https://projects.coin-or.org/Cbc
Other
81 stars 35 forks source link

Support for Apple M1 #193

Open lyinch opened 2 years ago

lyinch commented 2 years ago

I tried using Cbc and JuMP but get a double free error on an M1 macbook pro:

julia> using Cbc
julia> using JuMP
julia> model = Model(Cbc.Optimizer)
julia(6797,0x100a88580) malloc: *** error for object 0xe00000000000000: pointer being freed was not allocated
julia(6797,0x100a88580) malloc: *** set a breakpoint in malloc_error_break to debug
signal (6): Abort trap: 6
in expression starting at REPL[3]:1
__pthread_kill at /usr/lib/system/libsystem_kernel.dylib (unknown line)
Allocations: 7410580 (Pool: 7408535; Big: 2045); GC: 5
zsh: abort      /Applications/Julia-1.7.app/Contents/Resources/julia/bin/julia

I use Julia Version 1.7.2 (2022-02-06)

odow commented 2 years ago

The underlying issue is probably: https://github.com/jump-dev/Clp.jl/issues/131.

M1 support in Julia is still Tier 3: https://julialang.org/downloads/#supported_platforms.

Use Rosetta, or use HiGHS.jl instead.

mzy2240 commented 7 months ago

@odow do we have any plan to support Cbc on apple silicon? Thanks!

odow commented 7 months ago

No plan. Problem also https://github.com/jump-dev/Clp.jl/issues/131.

My long-term hope is that a new v2 release of https://github.com/coin-or/Clp is made. That will fix a number of bugs and simplify the build system. That might fix the issue.

Until then, use HiGHS. It is faster, works on M2, and is MIT licensed.