JuliaPy / SymPy.jl

Julia interface to SymPy via PyCall
http://juliapy.github.io/SymPy.jl/
MIT License
268 stars 62 forks source link

key SymPy not found for parallel computing #483

Open xiang-yu opened 1 year ago

xiang-yu commented 1 year ago

Does SymPy.jl work for parallel computing?


@everywhere using SymPy
using LinearAlgebra
using SharedArrays, Distributed

julia> xx = Sym[]
julia> @syms x

julia> @sync @distributed for i = 1:3
       xx = [xx, x]
       end

```Unhandled Task ERROR: On worker 3:
KeyError: key SymPy [24249f21-da20-56a4-8eb1-6a02cf4ae2e6] not found
Stacktrace:
  [1] getindex
    @ ./dict.jl:498 [inlined]
  [2] macro expansion
    @ ./lock.jl:223 [inlined]
  [3] root_module
    @ ./loading.jl:1254
  [4] deserialize_module
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:993
  [5] handle_deserialize
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:895
  [6] deserialize
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:813
  [7] deserialize_datatype
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:1363
  [8] handle_deserialize
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:866
  [9] deserialize
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:813
 [10] handle_deserialize
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:873
 [11] deserialize
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:813 [inlined]
 [12] deserialize_global_from_main
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Distributed/src/clusterserialize.jl:160
 [13] #5
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Distributed/src/clusterserialize.jl:72 [inlined]
 [14] foreach
    @ ./abstractarray.jl:2774
 [15] deserialize
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Distributed/src/clusterserialize.jl:72
 [16] handle_deserialize
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:959
 [17] deserialize
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:813
 [18] handle_deserialize
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:870
 [19] deserialize
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:813
 [20] deserialize_datatype
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:1388
 [21] handle_deserialize
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:866
 [22] deserialize
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:813
 [23] handle_deserialize
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:873
 [24] deserialize
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:813 [inlined]
 [25] deserialize_msg
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Distributed/src/messages.jl:87
 [26] #invokelatest#2
    @ ./essentials.jl:729 [inlined]
 [27] invokelatest
    @ ./essentials.jl:726 [inlined]
 [28] message_handler_loop
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Distributed/src/process_messages.jl:176
 [29] process_tcp_streams
    @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Distributed/src/process_messages.jl:133
 [30] #103
    @ ./task.jl:484

...and 2 more exceptions.

Stacktrace:
 [1] sync_end(c::Channel{Any})
   @ Base ./task.jl:436
 [2] (::Distributed.var"#177#179"{var"#355#356", UnitRange{Int64}})()
   @ Distributed ./task.jl:455
ERROR: TaskFailedException

    nested task error: On worker 3:
    KeyError: key SymPy [24249f21-da20-56a4-8eb1-6a02cf4ae2e6] not found
    Stacktrace:
      [1] getindex
        @ ./dict.jl:498 [inlined]
      [2] macro expansion
        @ ./lock.jl:223 [inlined]
      [3] root_module
        @ ./loading.jl:1254
      [4] deserialize_module
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:993
      [5] handle_deserialize
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:895
      [6] deserialize
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:813
      [7] deserialize_datatype
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:1363
      [8] handle_deserialize
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:866
      [9] deserialize
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:813
     [10] handle_deserialize
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:873
     [11] deserialize
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:813 [inlined]
     [12] deserialize_global_from_main
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Distributed/src/clusterserialize.jl:160
     [13] #5
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Distributed/src/clusterserialize.jl:72 [inlined]
     [14] foreach
        @ ./abstractarray.jl:2774
     [15] deserialize
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Distributed/src/clusterserialize.jl:72
     [16] handle_deserialize
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:959
     [17] deserialize
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:813
     [18] handle_deserialize
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:870
     [19] deserialize
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:813
     [20] deserialize_datatype
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:1388
     [21] handle_deserialize
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:866
     [22] deserialize
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:813
     [23] handle_deserialize
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:873
     [24] deserialize
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Serialization/src/Serialization.jl:813 [inlined]
     [25] deserialize_msg
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Distributed/src/messages.jl:87
     [26] #invokelatest#2
        @ ./essentials.jl:729 [inlined]
     [27] invokelatest
        @ ./essentials.jl:726 [inlined]
     [28] message_handler_loop
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Distributed/src/process_messages.jl:176
     [29] process_tcp_streams
        @ /Applications/Julia-1.8.app/Contents/Resources/julia/share/julia/stdlib/v1.8/Distributed/src/process_messages.jl:133
     [30] #103
        @ ./task.jl:484

    ...and 2 more exceptions.

    Stacktrace:
     [1] sync_end(c::Channel{Any})
       @ Base ./task.jl:436
     [2] (::Distributed.var"#177#179"{var"#355#356", UnitRange{Int64}})()
       @ Distributed ./task.jl:455
Stacktrace:
 [1] sync_end(c::Channel{Any})
   @ Base ./task.jl:436
 [2] top-level scope
   @ task.jl:455