jaak-s / BayesianDataFusion.jl

Bayesian multi-tensor factorization methods, with side information
Other
29 stars 19 forks source link

How to initialize the multi-threaded( > 1) sampling while using macau function ? #14

Open pipiku915 opened 3 years ago

pipiku915 commented 3 years ago

@jaak-s I open this issue to ask how to implement the multi-threaded sampling mode while use macau function. My code current parameter setting is: `using Distributed procs() addprocs(3) procs()

result = macau(RD_withSide, burnin=100, psamples=400, clamp=[-2.0, 2.0], num_latent=i, latent_pids = workers(), latent_blas_threads = 1, cg_pids = workers()) push!(est_df_int, [i k result["RMSE"] result["accuracy"]])`

I was able to get the text message as below in my editor: Setting up multi-threaded sampling of latent vectors. Using 3 threads. But then I receive the error message:

Screen Shot 2021-03-11 at 11 22 55 PM

It looks like that there is a mistake occurred at the 2nd worker. Would you please provide some idea to solve this problem? Thanks a lot!

jaak-s commented 3 years ago

Unfortunately, the code uses old multiprocessing from julia-0.4, which is not supported anymore. To use in it recent Julia versions one should re-implement the multi-processing part.

pipiku915 commented 3 years ago

Unfortunately, the code uses old multiprocessing from julia-0.4, which is not supported anymore. To use in it recent Julia versions one should re-implement the multi-processing part.

Thanks for your quick reply. I am actually using the newer version below: Version 1.4.2 (2020-05-23) and encounter this problem. Therefore, it should be caused by the old version. Would you please think of other possibilities?

jaak-s commented 3 years ago

Not many options besides to use an old Julia (0.4), which is not a good option.