预编译使用ParallelAccelerator

时间:2018-08-16 13:24:28

标签: julia

每当我尝试预编译包含using ParallelAccelerator的模块时,都会收到以下警告,

WARNING: eval from module J2CArray to Foo:    
Expr(:block, Expr(:line, 69, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, Expr(:function, Expr(:call, :j2c_array_size, Expr(:::, :arr, Expr(:curly, :Ptr, :Void)::Any)::Any, Expr(:::, :dim, :Int)::Any)::Any, Expr(:block, Expr(:line, 70, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, :l = Expr(:call, :ccall, Expr(:tuple, Expr(:quote, :j2c_array_size)::Any, "/home/miguel/.julia/v0.6/ParallelAccelerator/src/../deps/libj2carray.so.1.0")::Any, :Cuint, Expr(:tuple, Expr(:curly, :Ptr, :Void)::Any, :Cuint)::Any, :arr, Expr(:call, :convert, :Cuint, :dim)::Any)::Any, Expr(:line, 72, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, Expr(:return, Expr(:call, :convert, :Int, :l)::Any)::Any)::Any)::Any, Expr(:line, 77, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, Expr(:function, Expr(:call, :j2c_array_to_pointer, Expr(:::, :arr, Expr(:curly, :Ptr, :Void)::Any)::Any, Expr(:::, :own, :Bool)::Any)::Any, Expr(:block, Expr(:line, 78, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, Expr(:call, :ccall, Expr(:tuple, Expr(:quote, :j2c_array_to_pointer)::Any, "/home/miguel/.julia/v0.6/ParallelAccelerator/src/../deps/libj2carray.so.1.0")::Any, Expr(:curly, :Ptr, :Void)::Any, Expr(:tuple, Expr(:curly, :Ptr, :Void)::Any, :Bool)::Any, :arr, :own)::Any)::Any)::Any, Expr(:line, 84, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, Expr(:function, Expr(:call, :j2c_array_get, Expr(:::, :arr, Expr(:curly, :Ptr, :Void)::Any)::Any, Expr(:::, :idx, :Int)::Any, Expr(:::, :T, :Type)::Any)::Any, Expr(:block, Expr(:line, 85, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, :nbytes = Expr(:if, Expr(:call, :===, :T, Expr(:curly, :Ptr, :Void)::Any)::Any, 0, Expr(:call, :sizeof, :T)::Any)::Any, Expr(:line, 86, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, :_value = Expr(:call, Expr(:curly, :Array, :T)::Any, 1)::Any, Expr(:line, 87, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, Expr(:call, :ccall, Expr(:tuple, Expr(:quote, :j2c_array_get)::Any, "/home/miguel/.julia/v0.6/ParallelAccelerator/src/../deps/libj2carray.so.1.0")::Any, :Void, Expr(:tuple, :Cint, Expr(:curly, :Ptr, :Void)::Any, :Cuint, Expr(:curly, :Ptr, :Void)::Any)::Any, Expr(:call, :convert, :Cint, :nbytes)::Any, :arr, Expr(:call, :convert, :Cuint, :idx)::Any, Expr(:call, :convert, Expr(:curly, :Ptr, :Void)::Any, Expr(:call, :pointer, :_value)::Any)::Any)::Any, Expr(:line, 89, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, Expr(:return, Expr(:ref, :_value, 1)::Any)::Any)::Any)::Any, Expr(:line, 94, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, Expr(:function, Expr(:call, Expr(:curly, :j2c_array_set, :T)::Any, Expr(:::, :arr, Expr(:curly, :Ptr, :Void)::Any)::Any, Expr(:::, :idx, :Int)::Any, Expr(:::, :value, :T)::Any)::Any, Expr(:block, Expr(:line, 95, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, :nbytes = Expr(:if, Expr(:call, :===, :T, Expr(:curly, :Ptr, :Void)::Any)::Any, 0, Expr(:call, :sizeof, :T)::Any)::Any, Expr(:line, 96, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, :_value = Expr(:if, Expr(:call, :==, :nbytes, 0)::Any, :value, Expr(:call, :convert, Expr(:curly, :Ptr, :Void)::Any, Expr(:call, :pointer, Expr(:ref, :T, :value)::Any)::Any)::Any)::Any, Expr(:line, 97, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, Expr(:call, :ccall, Expr(:tuple, Expr(:quote, :j2c_array_set)::Any, "/home/miguel/.julia/v0.6/ParallelAccelerator/src/../deps/libj2carray.so.1.0")::Any, :Void, Expr(:tuple, :Cint, Expr(:curly, :Ptr, :Void)::Any, :Cuint, Expr(:curly, :Ptr, :Void)::Any)::Any, Expr(:call, :convert, :Cint, :nbytes)::Any, :arr, Expr(:call, :convert, :Cuint, :idx)::Any, :_value)::Any)::Any)::Any, Expr(:line, 107, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, Expr(:function, Expr(:call, :j2c_array_delete, Expr(:::, :arr, Expr(:curly, :Ptr, :Void)::Any)::Any)::Any, Expr(:block, Expr(:line, 108, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, Expr(:call, :ccall, Expr(:tuple, Expr(:quote, :j2c_array_delete)::Any, "/home/miguel/.julia/v0.6/ParallelAccelerator/src/../deps/libj2carray.so.1.0")::Any, :Void, Expr(:tuple, Expr(:curly, :Ptr, :Void)::Any)::Any, :arr)::Any)::Any)::Any, Expr(:line, 115, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, Expr(:function, Expr(:call, :j2c_array_deref, Expr(:::, :arr, Expr(:curly, :Ptr, :Void)::Any)::Any)::Any, Expr(:block, Expr(:line, 116, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, Expr(:call, :ccall, Expr(:tuple, Expr(:quote, :j2c_array_deref)::Any, "/home/miguel/.julia/v0.6/ParallelAccelerator/src/../deps/libj2carray.so.1.0")::Any, :Void, Expr(:tuple, Expr(:curly, :Ptr, :Void)::Any)::Any, :arr)::Any)::Any)::Any, Expr(:line, 119, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, Expr(:if, Expr(:call, :>=, :VERSION, Expr(:macrocall, :@v_str, "0.6.0-pre")::Any)::Any, Expr(:block, Expr(:line, 121, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, Expr(:function, Expr(:call, :to_j2c_array, Expr(:::, :inp, :AbstractString)::Any, :ptr_array_dict, :mapAtypeKey, :j2c_array_new)::Any, Expr(:block, Expr(:line, 122, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, :arr = Expr(:call, :to_j2c_array, Expr(:call, Expr(:curly, :Vector, :UInt8)::Any, :inp)::Any, :ptr_array_dict, :mapAtypeKey, :j2c_array_new)::Any, Expr(:line, 123, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, Expr(:call, :ccall, Expr(:tuple, Expr(:quote, :new_ascii_string)::Any, "/home/miguel/.julia/v0.6/ParallelAccelerator/src/../deps/libj2carray.so.1.0")::Any, Expr(:curly, :Ptr, :Void)::Any, Expr(:tuple, Expr(:curly, :Ptr, :Void)::Any)::Any, :arr)::Any)::Any)::Any)::Any, Expr(:block, Expr(:line, 127, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, Expr(:function, Expr(:call, :to_j2c_array, Expr(:::, :inp, :AbstractString)::Any, :ptr_array_dict, :mapAtypeKey, :j2c_array_new)::Any, Expr(:block, Expr(:line, 128, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, :arr = Expr(:call, :to_j2c_array, Expr(:., :inp, :data)::Any, :ptr_array_dict, :mapAtypeKey, :j2c_array_new)::Any, Expr(:line, 129, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, Expr(:call, :ccall, Expr(:tuple, Expr(:quote, :new_ascii_string)::Any, "/home/miguel/.julia/v0.6/ParallelAccelerator/src/../deps/libj2carray.so.1.0")::Any, Expr(:curly, :Ptr, :Void)::Any, Expr(:tuple, Expr(:curly, :Ptr, :Void)::Any)::Any, :arr)::Any)::Any)::Any)::Any)::Any, Expr(:line, 134, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, Expr(:function, Expr(:call, :from_ascii_string, Expr(:::, :str, Expr(:curly, :Ptr, :Void)::Any)::Any, :ptr_array_dict)::Any, Expr(:block, Expr(:line, 135, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, :data = Expr(:call, :ccall, Expr(:tuple, Expr(:quote, :from_ascii_string)::Any, "/home/miguel/.julia/v0.6/ParallelAccelerator/src/../deps/libj2carray.so.1.0")::Any, Expr(:curly, :Ptr, :Void)::Any, Expr(:tuple, Expr(:curly, :Ptr, :Void)::Any)::Any, :str)::Any, Expr(:line, 136, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, :arr = Expr(:call, :_from_j2c_array, :data, :UInt8, 1, :ptr_array_dict)::Any, Expr(:line, 137, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, Expr(:call, :ccall, Expr(:tuple, Expr(:quote, :delete_ascii_string)::Any, "/home/miguel/.julia/v0.6/ParallelAccelerator/src/../deps/libj2carray.so.1.0")::Any, :Void, Expr(:tuple, Expr(:curly, :Ptr, :Void)::Any)::Any, :str)::Any, Expr(:line, 138, Symbol("/home/miguel/.julia/v0.6/ParallelAccelerator/src/j2c-array.jl"))::Any, Expr(:return, :arr)::Any)::Any)::Any)::Any
  ** incremental compilation may be broken for this module **

我可以用5行代码重现此警告。首先,我创建模块:

Foo.jl

__precompile__()

module Foo
    using ParallelAccelerator
end

然后我创建一个测试脚本:

test.jl

using Foo

最后,我使用Julia 0.6.4运行测试脚本

$ julia test.jl

ParallelAccelerator或系统设置是否有问题?

0 个答案:

没有答案