# Bring module into scope on multiple processes

**URL:** https://discourse.julialang.org/t/bring-module-into-scope-on-multiple-processes/1544
**Category:** General Usage
**Created:** [January 17, 2017, 1:05pm UTC](https://discourse.julialang.org/t/bring-module-into-scope-on-multiple-processes/1544 "2017-01-17T13:05:51Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![jw3126](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jw3126/32/3086_2.png) [@jw3126](https://discourse.julialang.org/u/jw3126)
#### Post date: [January 17, 2017, 1:05pm UTC](https://discourse.julialang.org/t/bring-module-into-scope-on-multiple-processes/1544/1 "2017-01-17T13:05:51Z")

</div>

I have a module and I want to bring it into scope on multiple workers. Is there a recommended way to do this? I tried the following, which produces lots of warnings:

```julia
julia> addprocs(1)
1-element Array{Int64,1}:
 2

julia> @everywhere using DataFrames
WARNING: replacing module DataFrames.
WARNING: Method definition vcat(Array{Void, 1}) in module DataFrames at /home/admin/.julia/v0.5/DataFrames/src/abstractdataframe/abstractdataframe.jl:687 overwritten in module DataFrames at /home/admin/.julia/v0.5/DataFrames/src/abstractdataframe/abstractdataframe.jl:687.
WARNING: Method definition describe(AbstractArray) in module DataFrames at /home/admin/.julia/v0.5/DataFrames/src/abstractdataframe/abstractdataframe.jl:380 overwritten in module DataFrames at /home/admin/.julia/v0.5/DataFrames/src/abstractdataframe/abstractdataframe.jl:380.
WARNING: Method definition describe(Any, AbstractArray{#T<:Number, N<:Any}) in module DataFrames at /home/admin/.julia/v0.5/DataFrames/src/abstractdataframe/abstractdataframe.jl:382 overwritten in module DataFrames at /home/admin/.julia/v0.5/DataFrames/src/abstractdataframe/abstractdataframe.jl:382.
WARNING: Method definition describe(Any, AbstractArray{#T<:Any, N<:Any}) in module DataFrames at /home/admin/.julia/v0.5/DataFrames/src/abstractdataframe/abstractdataframe.jl:399 overwritten in module DataFrames at /home/admin/.julia/v0.5/DataFrames/src/abstractdataframe/abstractdataframe.jl:399.

```

---

<div class="post-metadata">

### Author: ![amit.murthy](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/amit.murthy/32/47_2.png) [@amit.murthy](https://discourse.julialang.org/u/amit.murthy)
#### Post date: [January 18, 2017, 7:49am UTC](https://discourse.julialang.org/t/bring-module-into-scope-on-multiple-processes/1544/2 "2017-01-18T07:49:43Z")

</div>

This is a known issue. A way to avoid the warnings would be

```julia
using Mod
addprocs(N)
@everywhere importall Mod

```

---

<div class="post-metadata">

### Author: ![jw3126](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jw3126/32/3086_2.png) [@jw3126](https://discourse.julialang.org/u/jw3126)
#### Post date: [January 18, 2017, 7:56am UTC](https://discourse.julialang.org/t/bring-module-into-scope-on-multiple-processes/1544/3 "2017-01-18T07:56:18Z")

</div>

Thanks it works! Is this trick documented somewhere?

---

<div class="post-metadata">

### Author: ![amit.murthy](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/amit.murthy/32/47_2.png) [@amit.murthy](https://discourse.julialang.org/u/amit.murthy)
#### Post date: [January 18, 2017, 8:06am UTC](https://discourse.julialang.org/t/bring-module-into-scope-on-multiple-processes/1544/4 "2017-01-18T08:06:21Z")

</div>

Not AFAIK. I am hoping [https://github.com/JuliaLang/julia/pull/19073](https://github.com/JuliaLang/julia/pull/19073) or a variation of it gets merged.
