Data.table: рдбреЗрдЯрд╛ рд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИред рддрд╛рд▓рд┐рдХрд╛ рдореИрдХреЛрдЬрд╝ рдкрд░ рдореИрдХрд▓рд╛рдкреНрд▓реА () рдХреЛ рд▓рдЯрдХрдиреЗ рдХрд╛ рдХрд╛рд░рдг рдмрдирддреА рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 13 рдЕрдХреНрддреВре░ 2017  ┬╖  39рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: Rdatatable/data.table

рдпрд╣ рд╕рдорд╕реНрдпрд╛ https://github.com/Bioconductor/BiocParallel/issues/67 рдХреА рдУрд░ рд▓реЗ рдЬрд╛рддреА рд╣реИ

library(parallel)
library(data.table)
mclapply(1:2, sqrt)

рдХреЗ рд╕рд╛рде рд▓рдЯрдХреА

> sessionInfo()
R version 3.4.2 (2017-09-28)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: OS X El Capitan 10.11.6

Matrix products: default
BLAS: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRblas.0.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRlapack.dylib

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages:
[1] parallel  stats     graphics  grDevices utils     datasets  methods  
[8] base     

other attached packages:
[1] data.table_1.10.4-2

loaded via a namespace (and not attached):
[1] compiler_3.4.2

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

@davidgohel : рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ R LLVM рдЯреВрд▓рдЪреЗрди рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреГрдкрдпрд╛ рдпрд╣ рдорд╛рд░реНрдЧрджрд░реНрд╢рд┐рдХрд╛ рджреЗрдЦреЗрдВред http://thecoatlessprofessor.com/programming/openmp-in-r-on-os-x/

рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ, рдореИрдВ рдлрд╝рд╛рдЗрд▓ рдХреЛ R.home("etc/Makeconf") рдкрд░ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ -fopenmp рдХреЗ рдХрд┐рд╕реА рднреА рдЙрджрд╛рд╣рд░рдг рдХреЛ рд╣рдЯрд╛ рджреЗрддрд╛ рд╣реВрдВ, рддрд╛рдХрд┐ рд╕рдВрдХрд▓рди рдРрдкреНрдкрд▓ рд╕рд┐рд╕реНрдЯрдо рдЯреВрд▓рдЪреЗрди рдХреЗ рд╕рд╛рде рдУрдкрдирдПрдордкреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рди рдХрд░реЗред

рд╕рднреА 39 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рд░рд┐рдкреЛрд░реНрдЯ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

1.10.4-1 рдХреЗ рд▓рд┐рдП рд╕рдорд╛рдЪрд╛рд░ рд╕реЗ рдЖрдЗрдЯрдо 4 :

рдЗрдВрдЯреЗрд▓ рдХреЗ рдУрдкрдирдПрдордкреА рдХреЗ рд╕рд╛рде рдореИрдХ рдкрд░ рд╕реБрдзрд╛рд░ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдЬрдм рдбреЗрдЯрд╛ рдХреЗ рдмрд╛рдж рдкреИрдХреЗрдЬ 'рд╕рдорд╛рдирд╛рдВрддрд░' рдлреЛрд░реНрдХреНрд╕ред рдУрдкрдирдПрдордкреА рдХреЗ рд╕рд╛рде рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдУрдкрдирдПрдордкреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕рдорд╛рдирд╛рдВрддрд░ рдХреНрд╖реЗрддреНрд░ рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдЪрд▓ рд░рд╣реЗ рдзрд╛рдЧреЗ рдХреЛ рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИред рдпрджрд┐ рдпрд╣ рдлрд┐рдХреНрд╕ рдЕрднреА рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рддреЛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА (рдбреЗрдЯрд╛.рдЯреЗрдмрд▓) рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж setDTthreads(1) рдкрд░ рдХреЙрд▓ рдХрд░реЗрдВ, рдЬрд┐рд╕реЗ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реВрдЪрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рджреЗрд╡ рдореЗрдВ рдореИрдВрдиреЗ рдЙрд╕реА рдЖрдЗрдЯрдо рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд┐рдпрд╛ рд▓реЗрдХрд┐рди рдмреИрдХрдкреЛрд░реНрдЯ рдХреА рдЙрдкреЗрдХреНрд╖рд╛ рдХреА рдХрд┐ рд╕рдорд╛рдЪрд╛рд░ рдЖрдЗрдЯрдо рд╕реАрдЖрд░рдПрдПрди рдкреИрдЪ рдореЗрдВ рдмрджрд▓ рдЬрд╛рддреЗ рд╣реИрдВред рджреЗрд╡ рд╕рдорд╛рдЪрд╛рд░ рдлрд╝рд╛рдЗрд▓ рд╕реЗ:

рдХреЗрд╡рд▓-рдореИрдХ рдкрд░ рд╕реБрдзрд╛рд░ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдЬрдм рд╕рдорд╛рдирд╛рдВрддрд░ рдкреИрдХреЗрдЬ рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдЬреЛ рдХрд╛рдВрдЯреЗ), #2137ред рдЗрдВрдЯреЗрд▓ рдХрд╛ рдУрдкрдирдПрдордкреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдУрдкрдирдПрдордкреА рд╕рдорд╛рдирд╛рдВрддрд░ рдХреНрд╖реЗрддреНрд░ (рдбреЗрдЯрд╛ рдЯреЗрдмрд▓ рдХреЗ рдЕрдВрджрд░) рдХреЗ рдЬреАрдПрдирдпреВ libgomp рдХреЗ рд╡рд┐рдкрд░реАрдд рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдЪрд▓ рд░рд╣реЗ рдзрд╛рдЧреЗ рдХреЛ рдЫреЛрдбрд╝ рджреЗрддрд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рдФрд░ рдЬрдм рдбреЗрдЯрд╛ рдХреЗ рдмрд╛рдж рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рд╕рдорд╛рдирд╛рдВрддрд░ рдХрд╛ рдХрд╛рдВрдЯрд╛ рд▓рдЧрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рддрд╛рд▓рд┐рдХрд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ рдЪрд▓рддреА рд╣реИ, рдЕрд╕реНрдерд┐рд░рддрд╛ рд╣реЛрддреА рд╣реИред рд╕рдорд╕реНрдпрд╛ рдХреЗрд╡рд▓ рд╕реАрдЖрд░рдПрдПрди рд╕реЗ рдореИрдХ рдкреИрдХреЗрдЬ рдмрд╛рдпрдиреЗрд░рд┐рдЬрд╝ рдХреЗ рд╕рд╛рде рд╣реЛрддреА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рд╕реАрдЖрд░рдПрдПрди рджреНрд╡рд╛рд░рд╛ рдЗрдВрдЯреЗрд▓ рдХреА рдУрдкрдирдПрдордкреА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд╕рд╛рде рдмрдирд╛рдП рдЬрд╛рддреЗ рд╣реИрдВред рд╡рд┐рдВрдбреЛрдЬ рдпрд╛ рд▓рд┐рдирдХреНрд╕ рдкрд░ рдХреЛрдИ рдЬреНрдЮрд╛рдд рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ рдФрд░ рд╕рдорд╛рдирд╛рдВрддрд░ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рд╣реЛрдиреЗ рдкрд░ рдХрд┐рд╕реА рднреА рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдкрд░ рдХреЛрдИ рдЬреНрдЮрд╛рдд рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред рдпрджрд┐ рдпрд╣ рдореИрдХ-рдУрдирд▓реА рдлрд┐рдХреНрд╕ рдЕрднреА рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рддреЛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА (рдбреЗрдЯрд╛.рдЯреЗрдмрд▓) рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж setDTthreads(1) рдкрд░ рдХреЙрд▓ рдХрд░реЗрдВ, рдЬрд┐рд╕реЗ рдкрд╣рд▓реЗ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ рдХреЛ рд╕рд┐рдВрдЧрд▓ рдереНрд░реЗрдбреЗрдб рдореЛрдб рдореЗрдВ рдбрд╛рд▓рдХрд░ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд░рд┐рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЖрдкрдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЖрдкрдиреЗ рдлреЛрд░реНрдХрд┐рдВрдЧ рд╕реЗ рдкрд╣рд▓реЗ data.table рдХрд╛ рдЙрдкрдпреЛрдЧ рднреА рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИред рддреЛ рдпрд╣ рдПрдХ рдирдпрд╛ рдкрд╣рд▓реВ рд╣реИ рдЬрд┐рд╕реЗ рдкрд╣рд▓реЗ рд░рд┐рдкреЛрд░реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдХреНрдпрд╛ рдЖрдкрдХрд╛ рдкреБрдирд░реБрддреНрдкрд╛рджрд┐рдд рдЙрджрд╛рд╣рд░рдг рд╕рдЦреНрддреА рд╕реЗ рд╕рд╣реА рд╣реИ рдХрд┐ рд╡реЗ 3 рдкрдВрдХреНрддрд┐рдпрд╛рдВ рд╕рдЪрдореБрдЪ рддрд╛рдЬрд╛ рдЖрд░ рд╕рддреНрд░ рдореЗрдВ рд╣реЛрддреА рд╣реИрдВ? рдпрд╛рдиреА рдЗрд╕реЗ рд▓реЛрдб рдХрд░рдиреЗ рдФрд░ mclapply рдкрд░ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рдмреАрдЪ data.table рдХрд╛ рдХреЛрдИ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ? рдЖрдк рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ library(data.table) рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж library(data.table) setDTthreads(1) рдкрд░ рдХреЙрд▓ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдорджрдж рдХрд░реЗрдЧрд╛ рдпрджрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ mclapply рд╕реЗ рдкрд╣рд▓реЗ data.table рдХрд╛ рдХреЛрдИ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рд╣реИред

рдХреНрдпрд╛ рдЖрдкрдиреЗ рд╕реАрдЖрд░рдПрдПрди рдореИрдХ рдмрд╛рдЗрдирд░реА, рдпрд╛ рд╕реНрд░реЛрдд рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рд╣реИ? рдпрд╣ mclapply рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ MacOS рдкрд░ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ OpenMP рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдЖрдк рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдХреНрдпрд╛ рдЖрдк рдпрд╣ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИрдВ рдХрд┐ рдпрд╣ рдЗрдВрдЯреЗрд▓ (рд▓рд┐рдмреЛрдореНрдк) рдпрд╛ рдЬреАрдПрдирдпреВ (рд▓рд┐рдмрдЧреЙрдореНрдк) рдУрдкрдирдПрдордкреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдорд╢реАрди рдкрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ?

рдХреНрдпрд╛ рдЖрдк MacOS рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реНрд░реЛрдд рд╕реЗ рд╕рдВрдХрд▓рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХреНрдпрд╛ рдЗрд╕рд╕реЗ рдорджрдж рдорд┐рд▓рддреА рд╣реИ? рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдЙрдЪрд┐рдд рдУрдкрдирдПрдордкреА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕реЗ рд▓рд┐рдВрдХ рд╣реЛ, рдпрд╛ рдРрд╕рд╛ рдХреБрдЫред рдХреБрдЫ рд▓реЛрдЧреЛрдВ рдиреЗ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдареАрдХ рд╕реЗ рдкрд╛рд▓рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ MacOS рдкрд░ рдареАрдХ рд╕реЗ рдкрд╛рд▓рди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

рдХреНрдпрд╛ test.data.table() рдЖрдкрдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ? рдкрд░реАрдХреНрд╖рдг 1705 рдкрд░реАрдХреНрд╖рдг mclapply рдФрд░ рдпрд╣ рд╕реАрдЖрд░рдПрдПрди рдкрд░ рдЧреБрдЬрд░ рд░рд╣рд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕реАрдЖрд░рдПрдПрди рдореИрдХреЛрдЬрд╝ рдкрд░ рдореИрдХ рдмрд╛рдЗрдирд░реА рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдЕрд▓рдЧ рдирд┐рд░реНрдорд╛рдг рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рддрд╛ рд╣реИред

1.10.4-2 рд╕реЗ рд╕рдорд╛рдЪрд╛рд░ рд╕реЗ рдЖрдЗрдЯрдо 1 рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕реЗ рдкреВрд░реНрдгрддрд╛ рдХреЗ рд▓рд┐рдП рдЙрд▓реНрд▓реЗрдЦ рдХрд░реВрдВрдЧрд╛:

MacOS рдкрд░ OpenMP рдЕрдм CRAN рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рд╣реИ рдФрд░ Mac рдХреЗ рд▓рд┐рдП CRAN рдХреЗ рдкреИрдХреЗрдЬ рдмрд╛рдпрдиреЗрд░рд┐рдЬрд╝ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИред рд▓реЗрдХрд┐рди рдореИрдХреЛрдЬрд╝ рдкрд░ рд╕реНрд░реЛрдд рд╕реЗ v1.10.4-1 рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рд╡рд┐рдлрд▓ рд░рд╣рд╛ рдЬрдм рдУрдкрдирдПрдордкреА рд╕рдВрдХрд▓рди рд╕рдордп рдкрд░ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рдерд╛, # 2409ред рд░рд┐рдкреЛрд░реНрдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рд▓рд┐рдЬрд╝ рдореИрдХрдлреА рдФрд░ @fupangpangpang рдХреЛ рдзрдиреНрдпрд╡рд╛рджред рдУрдкрдирдПрдордкреА рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реЛрдиреЗ рдкрд░ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рд╕рдВрджреЗрд╢ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдпрд╣рд╛рдБ рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЗ рд╣реИрдВ:
https://github.com/Rdatatable/data.table/issues/2413
https://github.com/Rdatatable/data.table/issues/2409
https://github.com/Rdatatable/data.table/issues/2406
https://github.com/Rdatatable/data.table/issues/2137

рдореИрдВ рдореВрд▓ рд░реВрдк рд╕реЗ рдореИрдХреЛрдЬрд╝ рдХреЗ рд╕рд╛рде рд╕рдВрдШрд░реНрд╖ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдЕрдЧрд░ рдХреЛрдИ рдРрдкреНрдкрд▓ рдФрд░/рдпрд╛ рдЗрдВрдЯреЗрд▓ рд╕реЗ рд╕реБрди рд░рд╣рд╛ рд╣реИ рдЬреЛ рдЕрдкрдиреЗ рдЙрддреНрдкрд╛рджреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред рдореИрдВ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрдШрд░реНрд╖ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ рд╕рдорд╕реНрдпрд╛ рдХреИрд╕реЗ рд╣реИред рдореИрдВрдиреЗ рдЗрд╕рдХреЗ рдЗрд░реНрдж-рдЧрд┐рд░реНрдж рдХрд╛рдо рдХрд░рдиреЗ рдФрд░ рдЗрд╕реЗ рд╕рдорд╛рдЪрд╛рд░ рдореЗрдВ рджрд╕реНрддрд╛рд╡реЗрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд░ рд╕рдВрднрд╡ рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИред рдорджрдж рдФрд░ рд╕реБрдЭрд╛рд╡реЛрдВ рдХреА рдмрд╣реБрдд рд╕рд░рд╛рд╣рдирд╛ рдХреАред

рд╣рд╛рдБ, рд╕рд░рд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗрд╡рд▓ . рдХреЗ рд╕рд╛рде

library(parallel)
library(data.table)
mclapply(1:2, sqrt)

рдпрд╣ рдмрд╛рдпреЛрдХрдВрдбрдХреНрдЯрд░ рдмрд┐рд▓реНрдб рдорд╢реАрдиреЛрдВ рдкрд░ рд╣реИред рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдмрд╛рдЗрдирд░реА рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рд╣реИ, рд▓реЗрдХрд┐рди рдкреБрд╖реНрдЯрд┐ рдХрд░реЗрдЧрд╛ред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╣реИ

$ ls /Library/Frameworks/R.framework/Resources/lib
libR.dylib      libRlapack.dylib.dSYM   libquadmath.0.dylib
libR.dylib.dSYM     libc++.1.dylib      libreadline.5.2.dylib
libRblas.0.dylib    libc++abi.1.dylib   libreadline.dylib
libRblas.dylib      libgcc_s.1.dylib    libunwind.1.dylib
libRblas.dylib.dSYM libgfortran.3.dylib
libRlapack.dylib    libomp.dylib

рддрдерд╛

$ otool -L  /Library/Frameworks/R.framework/Resources/bin/exec/R 
/Library/Frameworks/R.framework/Resources/bin/exec/R:
    /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libR.dylib (compatibility version 3.4.0, current version 3.4.2)
    /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRblas.dylib (compatibility version 0.0.0, current version 0.0.0)
    /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libomp.dylib (compatibility version 5.0.0, current version 5.0.0)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1226.10.1)

рддреЛ рд╕рдВрднрд╡рддрдГ libomp рд╕реЗ рдЬреБрдбрд╝ рд░рд╣рд╛ рд╣реИред

test.data.table() рдХрд╣рддреЗ рд╣реИрдВ

Running test id 1705     Assertion failure at kmp_runtime.cpp(6480): __kmp_thread_pool == __null.
Assertion failure at kmp_runtime.cpp(6480): __kmp_thread_pool == __null.
OMP: Error #13: Assertion failure at kmp_runtime.cpp(6480).
OMP: Hint: Please submit a bug report with this message, compile and run commands used, and machine configuration info including native compiler and operating system versions. Faster response will be obtained by including all program sources. For information on submitting this issue, please see http://www.intel.com/software/products/support/.
OMP: Error #13: Assertion failure at kmp_runtime.cpp(6480).
OMP: Hint: Please submit a bug report with this message, compile and run commands used, and machine configuration info including native compiler and operating system versions. Faster response will be obtained by including all program sources. For information on submitting this issue, please see http://www.intel.com/software/products/support/.
Assertion failure at kmp_runtime.cpp(6480): __kmp_thread_pool == __null.
OMP: Error #13: Assertion failure at kmp_runtime.cpp(6480).
OMP: Hint: Please submit a bug report with this message, compile and run commands used, and machine configuration info including native compiler and operating system versions. Faster response will be obtained by including all program sources. For information on submitting this issue, please see http://www.intel.com/software/products/support/.
Assertion failure at kmp_runtime.cpp(6480): __kmp_thread_pool == __null.
OMP: Error #13: Assertion failure at kmp_runtime.cpp(6480).
OMP: Hint: Please submit a bug report with this message, compile and run commands used, and machine configuration info including native compiler and operating system versions. Faster response will be obtained by including all program sources. For information on submitting this issue, please see http://www.intel.com/software/products/support/.
Running test id 1750     Test 1751 not run. If required call library(nanotime) first.

endian==little, sizeof(long double)==16, sizeof(pointer)==8

All 5936 tests in inst/tests/tests.Rraw completed ok in 00:01:45 on Sat Oct 14 21:25:30 2017

рдЗрд╕рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рд╣рд╛рдВ, рд╡реЗ __kmp_* рдХреЙрд▓ рд╣реИрдВ, рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдЗрдВрдЯреЗрд▓ рдУрдкрдирдПрдордкреА рд░рдирдЯрд╛рдЗрдо рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИ рдФрд░ рдореИрдВрдиреЗ рдЙрдиреНрд╣реЗрдВ рдкрд╣рд▓реЗ рд░рд┐рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ рд╣реИред рдЯреЗрд╕реНрдЯ 1705 рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░ рд░рд╣рд╛ рд╣реИред рдпрд╣ data.table рдХреЗ рднреАрддрд░ 2 OpenMP рдереНрд░реЗрдбреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рдмрд╛рдж parallel::mclapply рдкрд░ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИред __kmp_ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдЗрд╕рд▓рд┐рдП рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ iiuc, Intel рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕рднреА рд╕рдорд╛рдирд╛рдВрддрд░ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рднреА рдереНрд░реЗрдбреНрд╕ рдХреЛ рдЪрд╛рд▓реВ рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдмрд╛рдж рдХрд╛ рдХрд╛рдВрдЯрд╛ рдЕрд╕реНрдерд┐рд░ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рдирд╣реАрдВ рд╣реБрдЖ, рд▓реЗрдХрд┐рди рдпрд╣ рд╕рд┐рд░реНрдл рднрд╛рдЧреНрдп рд╣реИред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЖрдк рдЙрд╕ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ 1.10.4-2 рдХреЗ рд╕рд╛рде рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ, рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдореЗрд░реЗ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдП рдЧрдП рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдиреЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдПрдХ рдкреНрд░реА-рдлреЛрд░реНрдХ рдХреЙрд▓рдмреИрдХ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЕрдм рдпрд╣ omp_set_num_threads(1) рдЗрд╕ рдЙрдореНрдореАрдж рдореЗрдВ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЗрдВрдЯреЗрд▓ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдлреЛрд░реНрдХ рд╕реЗ рдкрд╣рд▓реЗ рдЕрдкрдиреЗ рдЪрд▓ рд░рд╣реЗ рдзрд╛рдЧреЗ рдХреЛ рд╕рд╛рдлрд╝ рдХрд░ рджреЗрдЧреАред рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдЬреЛ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд░рд┐рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЙрд╕рдХреЗ рд╕рд╛рде рд╣рдореЗрдВ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЛ рдЗрдВрдЯреЗрд▓ рдХреЗ рдУрдкрдирдПрдордкреА рдХреЛ рдкрд╣рд▓реЗ рд╕реНрдерд╛рди рдкрд░ рдереНрд░реЗрдб рдмрдирд╛рдиреЗ рд╕реЗ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП library(data.table) setDTthreads(1) рдкрд░ рдХреЙрд▓ рдХрд░рдирд╛ рд╣реИред

рдХреЗрд╡рд▓ 3 рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рд▓рдЯрдХрд╛ рдкрд░, рдХреНрдпрд╛ рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдЗрдВрдЯреЗрд▓ рдХреА рдУрдкрдирдПрдордкреА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд▓рд┐рдВрдХ рдпрд╛ рдкреНрд░рд╛рд░рдВрдн рд╣реЛрдиреЗ рдкрд░ рдЕрдкрдиреЗ рдзрд╛рдЧреЗ рдмрдирд╛рддреА рд╣реИ? рдпрджрд┐ рдРрд╕рд╛ рд╣реИ, рддреЛ рдпрд╣ рд╕рдордЭрд╛ рд╕рдХрддрд╛ рд╣реИред рдЕрдиреНрдпрдерд╛, рдореБрдЭреЗ рдЙрд╕ рдкрд░ рдиреБрдХрд╕рд╛рди рд╣реБрдЖ рд╣реИред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ clang рдФрд░ gcc рдХреА рдУрдкрдирдПрдордкреА рдХреНрд╖рдорддрд╛рдПрдВ 3 рдУрдкрдирдПрдордкреА рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рд╕реЗ рдХреИрд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИрдВ: libomp , libiomp рдФрд░ libgomp ред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ libomp рд╣реИред рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ CRAN libiomp рдХреЗ рд╕рд╛рде рд╕рдВрдХрд▓рд┐рдд рд╣реИ? рд╢рд╛рдпрдж рдЗрд╕рд╕реЗ рд▓реЗрдирд╛-рджреЗрдирд╛ рд╣реИред рд╕рд╛рде рд╣реА, рдПрдХ рд╡реНрдпрдХреНрддрд┐ рдиреЗ рд░рд┐рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ рд╣реИ ( рдпрд╣рд╛рдВ ) рдХрд┐ "рдПрд▓рдПрд▓рд╡реАрдПрдо рдХреЛ рдЬреАрд╕реАрд╕реА рдореЗрдВ рдмрджрд▓рдирд╛" рдиреЗ рдореИрдХреЛрдЬрд╝ рдкрд░ рдХреНрд░реИрд╢ рдХреЛ рд░реЛрдХ рджрд┐рдпрд╛, рд▓реЗрдХрд┐рди рд╡реЗ рд╕реНрд░реЛрдд рд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдХрд░ рд░рд╣реЗ рдереЗред

рдореИрдВ рдЕрднреА рдЗрдВрдЯреЗрд▓ рдУрдкрдирдПрдордкреА рд░рдирдЯрд╛рдЗрдо рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрдд рдХреЛрдб рдореЗрдВ рдЖрдпрд╛ рд╣реВрдВред рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдпрд╣ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреНрдпрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдерд╛ рдХрд┐ рдЗрдВрдЯреЗрд▓ рдХреА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдмрдВрдж рд╕реНрд░реЛрдд рдереАред рд▓реЗрдХрд┐рди рд╢рд╛рдпрдж рдЗрд╕рдХреЗ рдЦрд┐рд▓рд╛рдл рд╕рдВрдХрд▓рди рдХрд░рдирд╛ рдФрд░ рдЗрд╕реЗ рдбреАрдмрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред https://www.openmprtl.org/ рд╢рд╛рдпрдж рдкрд╣рд▓реЗ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдирд╛ рдФрд░ рдпрд╣ рджреЗрдЦрдирд╛ рдЖрд╕рд╛рди рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдпрд╛ рдЬреАрдПрдирдпреВ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

рдЯреЗрд╕реНрдЯ 1705 рд╕реАрдЖрд░рдПрдПрди рдкрд░ рдЧреБрдЬрд░ рд░рд╣рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╕реАрдЖрд░рдПрдПрди рдорд╢реАрди (рдорд╢реАрдиреЛрдВ) рдФрд░ рдЖрдкрдХреА рдорд╢реАрди рдХреЗ рдмреАрдЪ рдХреНрдпрд╛ рдЕрдВрддрд░ рд╣реИ, рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рд╕реЗ рд╢рд╛рдпрдж рдЙрдореНрдореАрдж рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИред рдЯреЗрд╕реНрдЯ 1705 рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрдкрдХреЗ рд▓рд┐рдП рдФрд░ рд╕реАрдЖрд░рдПрдПрди рдкрд░ рдЧреБрдЬрд░ рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди libomp рдХрдВрд╕реЛрд▓ рдкрд░ рдЕрднрд┐рдХрдерди рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдЬреЛ рдкрд░реАрдХреНрд╖рдг рджреНрд╡рд╛рд░рд╛ рдирд╣реАрдВ рдЙрдард╛ рд░рд╣реЗ рд╣реИрдВред рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рддрд░рд╣ рд╕реАрдЖрд░рдПрдПрди рд▓реЙрдЧ рджреЗрдЦрдирд╛ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╡реЗ __kmp рд╕рдВрджреЗрд╢ рд╕реАрдЖрд░рдПрдПрди рдХреЗ рд▓реЙрдЧ рдореЗрдВ рднреА рд╣реИрдВред рдпрджрд┐ рд╕рдВрджреЗрд╢ рд╕реАрдЖрд░рдПрдПрди рдХреЗ рд▓реЙрдЧ рдореЗрдВ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИрдВ, рддреЛ рдпрд╣ рд╕реАрдЖрд░рдПрдПрди рдорд╢реАрди рдФрд░ рдЖрдкрдХреА рдорд╢реАрди рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рддрд▓рд╛рд╢рдиреЗ рд▓рд╛рдпрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рд╢рд╛рдпрдж рд╕реАрдЖрд░рдПрдПрди рдкреИрдХреЗрдЬ рдмрд╛рдЗрдирд░реА рдХреЗ рд╕рд╛рде рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ: http://macappstore.org/libiomp/
рдпрд╛ рд╢рд╛рдпрдж libiomp рдХреЛ CRAN рджреНрд╡рд╛рд░рд╛ рдкреИрдХреЗрдЬ рдмрд╛рдЗрдирд░реА рдореЗрдВ рд╕реНрдерд┐рд░ рд░реВрдк рд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ? рдореИрдВрдиреЗ рджреЗрдЦрд╛ рдХрд┐ рдореИрдХреЛрдЬрд╝ рдХреЗ рд▓рд┐рдП ?install.packages рдХрд╛ 'рдмрд╛рдЗрдирд░реА рдкреИрдХреЗрдЬ' рдЦрдВрдб рдХрд╛рдлреА рдЬрдЯрд┐рд▓ рд╣реИ рдФрд░ type= рддрд░реНрдХ рдХреЗ рд▓рд┐рдП рд╡рд╣рд╛рдВ рдХрдИ рдмрд╛рдЗрдирд░реА рд╡рд┐рдХрд▓реНрдк рд╣реИрдВред

рдЗрдВрдЯреЗрд▓ рдХрд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЫрдкрд╛рдИ рдХрд░ рд░рд╣рд╛ рд╣реИ:

OMP: рддреНрд░реБрдЯрд┐ #13: kmp_runtime.cpp(6480) рдкрд░ рджрд╛рд╡рд╛ рд╡рд┐рдлрд▓рддрд╛
рдУрдПрдордкреА: рд╕рдВрдХреЗрдд: рдХреГрдкрдпрд╛ рдЗрд╕ рд╕рдВрджреЗрд╢ рдХреЗ рд╕рд╛рде рдПрдХ рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ рд╕рдмрдорд┐рдЯ рдХрд░реЗрдВ, рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдХрдорд╛рдВрдб рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░реЗрдВ рдФрд░ рдЪрд▓рд╛рдПрдВ, рдФрд░ рдорд╢реАрди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЬрд╛рдирдХрд╛рд░реА рдЬрд┐рд╕рдореЗрдВ рджреЗрд╢реА рдХрдВрдкрд╛рдЗрд▓рд░ рдФрд░ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рд╕рдВрд╕реНрдХрд░рдг рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд╕рднреА рд╕реНрд░реЛрддреЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдХреЗ рддреЗрдЬреА рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХреА рдЬрд╛рдПрдЧреАред рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╕рдмрдорд┐рдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, рдХреГрдкрдпрд╛ http://www.intel.com/software/products/support/ рджреЗрдЦреЗрдВред

рдХреНрдпрд╛ MacOS рдкрд░ рд╕рдорд╕реНрдпрд╛ рд╡рд╛рд▓рд╛ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рдХреГрдкрдпрд╛ Intel рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рджрд░реНрдЬ рдХрд░ рд╕рдХрддрд╛ рд╣реИ?

рдирдорд╕реНрддреЗ, рдореИрдВрдиреЗ рдореВрд▓ рд░реВрдк рд╕реЗ BiocParallel рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдХреА рд╕реВрдЪрдирд╛ рджреА рдереА рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рдЙрд╕ рдкреИрдХреЗрдЬ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ рдерд╛ред рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ рд▓реЛрдб рд╣реЛрдиреЗ рдкрд░ рдЙрдиреНрд╣реЛрдВрдиреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ mclapply рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрдХреБрдЪрд┐рдд рдХрд░ рджрд┐рдпрд╛ рд╣реИред

рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдореИрдХреЛрдЬрд╝ рдкрд░ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ рдХреЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ рджрд┐рдП рдЧрдП рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ред

рджрд┐рд▓рдЪрд╕реНрдк рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдПрдХ рд╕рд╣рдХрд░реНрдореА рдиреЗ рдЕрдкрдиреЗ рдореИрдХ рдкрд░ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ рдХрд╛ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдерд╛ рдФрд░ рдЙрд╕реЗ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рдереАред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЙрдиреНрд╣реЛрдВрдиреЗ рдЕрдкрдиреЗ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдУрдкрдирдПрдордкреА рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛ред

рдореИрдВ data.table 1.10.2 рдкрд░ рд╡рд╛рдкрд╕ рд░реЛрд▓ рдХрд░рдХреЗ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред

@asenabouth рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдЗрдВрдЯреЗрд▓ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдорд░реНрдерди рдЕрдиреБрд░реЛрдз рдЙрдард╛ рд╕рдХрддреЗ рд╣реИрдВ (рдКрдкрд░ рдореЗрд░реА рдЯрд┐рдкреНрдкрдгреА рджреЗрдЦреЗрдВ)? рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЙрдирдХреЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИред рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ, рд╢рд╛рдпрдж Apple рдХрд╛ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдХреНрдпрд╛ рдЖрдкрдХреЛ рдЙрдирдХрд╛ рд╕рдорд░реНрдерди рдмрд┐рд▓реНрдХреБрд▓ рднреА рдирд╣реАрдВ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИ? рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╕реНрд░реЛрдд рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рд╕реЗ рдЗрд╕рдХрд╛ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдХрдорд╛рдВрдб рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рджрд┐рдЦрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдХреНрдпрд╛ рдХреЛрдИ рдФрд░ рдбреЗрдЯрд╛ рдХреЗ рдмрд╛рдж parallel::mclapply рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде рд╣реИред рд╕реНрд░реЛрдд рд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдФрд░ рд╕реАрдЖрд░рдПрдПрди рдмрд╛рдЗрдирд░реА рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рдмрд╛рдж рднреА рддрд╛рд▓рд┐рдХрд╛ 1.10.4 рд▓реЛрдб рд╣реЛ рдЧрдИ рд╣реИ?

рдореИрдВ рдЗрдВрдЯреЗрд▓ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдорд░реНрдерди рдЕрдиреБрд░реЛрдз рджрд░реНрдЬ рдХрд░реВрдВрдЧрд╛ред

рд╕реНрд░реЛрдд рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣рд╛рдБ рд╕реНрдерд╛рдкрдирд╛ рдФрд░ рдмрд╛рдж рдХрд╛ рдкрд░реАрдХреНрд╖рдг рд╣реИ:
```{рдЖрд░}
[рдкрд╣рд▓реЗ рд╕рд╣реЗрдЬреЗ рдЧрдП рдХрд╛рд░реНрдпрд╕реНрдерд╛рди рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛]

remove.packages("data.table")
'/Users/a.senabouth/Library/R/3.4/рд▓рд╛рдЗрдмреНрд░реЗрд░реА' рд╕реЗ рдкреИрдХреЗрдЬ рдирд┐рдХрд╛рд▓рд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ
(рдЬреИрд╕рд╛ рдХрд┐ 'lib' рдЕрдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реИ)
install.packages("data.table", type = "source",

  • рд░реЗрдкреЛрд╕ = "http://Rdatatable.github.io/data.table")
    рдкреИрдХреЗрдЬ рдХреЛ '/Users/a.senabouth/Library/R/3.4/рд▓рд╛рдЗрдмреНрд░реЗрд░реА' рдореЗрдВ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛
    (рдЬреИрд╕рд╛ рдХрд┐ 'lib' рдЕрдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реИ)
    рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рдпреВрдЖрд░рдПрд▓ ' http://Rdatatable.github.io/data.table/src/contrib/data.table_1.10.5.tar.gz '

рд╕рд╛рдордЧреНрд░реА рдкреНрд░рдХрд╛рд░ 'рдПрдкреНрд▓рд┐рдХреЗрд╢рди/gzip' рд▓рдВрдмрд╛рдИ 3312731 рдмрд╛рдЗрдЯреНрд╕ (3.2 рдПрдордмреА)

3.2 рдПрдордмреА . рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛

  • рд╕реНрд░реЛрдд рдкреИрдХреЗрдЬ 'data.table' рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реИ ...
    * libs/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -cassign.c -oassign.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c рдмреАрдЪ.c -o рдмреАрдЪ.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c bmerge.c -o bmerge.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c chmatch.c -o chmatch.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c dogroups.c -o dogroups.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fastmean.c -o fastmean.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fcast.c -o fcast.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fmelt.c -o fmelt.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c forder.c -o forder.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c frank.c -o frank.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fread.c -o fread.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c freadR.c -o freadR.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fsort.c -o fsort.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fwrite.c -o fwrite.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fwriteR.c -o fwriteR.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c gsumm.c -o gsumm.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c ijoin.c -o ijoin.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c init.c -o init.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c inrange.c -o inrange.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c openmp-utils.c -o openmp-utils.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c quickselect.c -o quickselect.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c rbindlist.c -o rbindlist.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c reorder.c -o reorder.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c shift.c -o shift.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c Subset.c -o Subset.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c transpose.c -o transpose.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c uniqlist.c -o uniqlist.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c vecseq.c -o vecseq.o/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c wrappers.c -o wrappers.o/usr/рд╕реНрдерд╛рдиреАрдп/рдСрдкреНрдЯ/llvm/bin/clang -fopenmp -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -single_module -multiply_defined рд╕рдкреНрд░реЗрд╕-рдПрд▓/рд▓рд╛рдЗрдмреНрд░реЗрд░реА/рдлреНрд░реЗрдорд╡рд░реНрдХ/рдЖрд░.рдлреНрд░реЗрдорд╡рд░реНрдХ/рд╕рдВрд╕рд╛рдзрди/рд▓рд┐рдм-рдПрд▓/рдпреВрдПрд╕рдЖрд░/рд▓реЛрдХрд▓/ рдСрдкреНрдЯ/рдЧреЗрдЯрдЯреЗрдХреНрд╕реНрдЯ/рд▓рд┐рдм-рдПрд▓/рдпреВрдПрд╕рдЖрд░/рд▓реЛрдХрд▓/рдСрдкреНрдЯ/рдПрд▓рдПрд▓рд╡реАрдПрдо/рд▓рд┐рдм-рдбрдмреНрд▓реНрдпреВрдПрд▓,-рдЖрд░рдкрд╛рде,/рдпреВрдПрд╕рдЖрд░/рд▓реЛрдХрд▓/рдСрдкреНрдЯ/рдПрд▓рдПрд▓рд╡реАрдПрдо/рд▓рд┐рдм-рдУ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓.рд╕реЛ рдЕрд╕рд╛рдЗрди рдХрд░реЗрдВред .o dogroups.o fastmean.o fcast.o fmelt.o forder.o frank.o fread.o freadR.o fsort.o fwrite.o fwriteR.o gsumm.o ijoin.o init.o inrange.o openmp-utils .o Quickselect.o rbindlist.o reorder.o shift.o рд╕рдмрд╕реЗрдЯ.o transpose.o uniqlist.o vecseq.o wrappers.o -fopenmp -F/Library/Frameworks/R.framework/.. -framework R -Wl, -рдлреНрд░реЗрдорд╡рд░реНрдХ -рдбрдмреНрд▓реНрдпреВрдПрд▓,рдХреЛрд░рдлрд╛рдЙрдВрдбреЗрд╢рдирдПрдорд╡реА data.table.so datatable.soрдЕрдЧрд░ [ "" != "Windows_NT"] && [ uname -s = 'рдбрд╛рд░реНрд╡рд┐рди']; рдлрд╛рдИ/Users/a.senabouth/Library/R/3.4/library/data.table/libs рдкрд░ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛* рдЖрд░
    * рд╕рдВрд╕реНрдерд╛рди* рдмрд╛рдЗрдЯ-рд╕рдВрдХрд▓рди рдФрд░ рдЖрд▓рд╕реА рд▓реЛрдбрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдкреИрдХреЗрдЬ рддреИрдпрд╛рд░ рдХрд░реЗрдВ
    * рдорджрдж* *рд╕рд╣рд╛рдпрддрд╛ рд╕реВрдЪрдХрд╛рдВрдХ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛
    *рдмрд┐рд▓реНрдбрд┐рдВрдЧ рдкреИрдХреЗрдЬ рдЗрдВрдбреЗрдХреНрд╕* рд╡рд┐рдЧрдиреЗрдЯреНрд╕ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛
    ** рдкрд░реАрдХреНрд╖рдг рдЕрдЧрд░ рд╕реНрдерд╛рдкрд┐рдд рдкреИрдХреЗрдЬ рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
  • рд╣реЛ рдЧрдпрд╛ (рдбреЗрдЯрд╛ рдЯреЗрдмрд▓)

рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдП рдЧрдП рд╕реНрд░реЛрдд рдкреИрдХреЗрдЬ рдореЗрдВ рд╣реИрдВ
'/private/var/folders/zz/zyxvpxvq6csfxvn_n0001lp0000cxh/T/Rtmpl7TqS4/downloaded_packages'

рдЖрд░
рддреНрд░реБрдЯрд┐: рд╡рд╕реНрддреБ 'рдЖрд░' рдирд╣реАрдВ рдорд┐рд▓реА
рдкреБрд╕реНрддрдХрд╛рд▓рдп (рд╕рдорд╛рдирд╛рдВрддрд░)
рдкреБрд╕реНрддрдХрд╛рд▓рдп (рдбреЗрдЯрд╛ рддрд╛рд▓рд┐рдХрд╛)
рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ 1.10.5 рдирд┐рд░реНрдорд┐рдд рд╡рд┐рдХрд╛рд╕ 2017-10-16 07:29:07 рдпреВрдЯреАрд╕реА; рдЯреНрд░реИрд╡рд┐рд╕
рд╕реАрдЦрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рддреЗрдЬрд╝ рддрд░реАрдХрд╛ (data.table рд▓реЗрдЦрдХреЛрдВ рджреНрд╡рд╛рд░рд╛): https://www.datacamp.com/courses/data-analysis-the-data-table-way
рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг: ?data.table, example(data.table) рдФрд░ рдмреНрд░рд╛рдЙрдЬрд╡рд┐рдЧреНрдиреЗрдЯреНрд╕("data.table")
рд░рд┐рд▓реАрдЬ рдиреЛрдЯреНрд╕, рд╡реАрдбрд┐рдпреЛ рдФрд░ рд╕реНрд▓рд╛рдЗрдб: http://r-datatable.com
рдореИрдХреНрд▓реИрдкреНрд▓реА(1:2, рд╡рд░реНрдЧ)

*рдкрдХрдбрд╝рд╛ рдЧрдпрд╛ рдЕрд╡реИрдз рдСрдкрд░реЗрд╢рди*
рдкрддрд╛ 0x7fffa9730ae4, 'рдЕрд╡реИрдз opcode' рдХрд╛рд░рдг

рд╡рд╛рдкрд╕ рдЯреНрд░реЗрд╕ рдХрд░реЗрдВ:
1: рдореИрдХрдлреЛрд░реНрдХ ()
2: рдордЬрд╝рд╛ (рдПрдХреНрд╕ [[i]], ...)
3: lapply(seq_len(cores), inner.do)
4: рдореИрдХреНрд▓реИрдкреНрд▓реА(1:2, sqrt)

рд╕рдВрднрд╛рд╡рд┐рдд рдХреНрд░рд┐рдпрд╛рдПрдВ:
1: рдирд┐рд░рд╕реНрдд рдХрд░реЗрдВ (рдХреЛрд░ рдбрдВрдк рдХреЗ рд╕рд╛рде, рдпрджрд┐ рд╕рдХреНрд╖рдо рд╣реЛ)
2: рд╕рд╛рдорд╛рдиреНрдп рдЖрд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВ
3: рдХрд╛рд░реНрдпрдХреНрд╖реЗрддреНрд░ рдХреЛ рд╕рд╣реЗрдЬреЗ рдмрд┐рдирд╛ R рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВ
4: рдХрд╛рд░реНрдпрдХреНрд╖реЗрддреНрд░ рдХреЛ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд░ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВ

And here's the session info:
```{r}
R version 3.4.2 (2017-09-28)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS Sierra 10.12.6

Matrix products: default
BLAS: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRblas.0.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRlapack.dylib

locale:
[1] en_AU.UTF-8/en_AU.UTF-8/en_AU.UTF-8/C/en_AU.UTF-8/en_AU.UTF-8

attached base packages:
[1] parallel  stats     graphics  grDevices utils     datasets  methods  
[8] base     

other attached packages:
[1] data.table_1.10.5

loaded via a namespace (and not attached):
[1] compiler_3.4.2

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ :
рдореИрдВ рдЗрд╕реЗ рд╕реНрд░реЛрдд рд╕реЗ 1.10.4 рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдХреЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд┐рд▓рд╛ред
```{рдЖрд░}

рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (devtools)
рдЖрд╡рд╢реНрдпрдХ рдкреИрдХреЗрдЬ рд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ: devtools
install_version("data.table", version = "1.10.4", repos = "http://cran.us.r-project.org")
рдпреВрдЖрд░рдПрд▓ рд╕реЗ рдкреИрдХреЗрдЬ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдирд╛: http://cran.us.r-project.org/src/contrib/Archive/data.table/data.table_1.10.4.tar.gz
рдбреЗрдЯрд╛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ред рддрд╛рд▓рд┐рдХрд╛
'/Library/Frameworks/R.framework/Resources/bin/R' --no-site-file --no-environ
--no-save --no-restore --quiet CMD INSTALL
'/private/var/folders/zz/zyxvpxvq6csfxvn_n0001lp0000cxh/T/RtmpXDSgR8/devtoolsdf05280c79d9/data.table'
--library='/Users/a.senabouth/Library/R/3.4/рд▓рд╛рдЗрдмреНрд░реЗрд░реА' --рдЗрдВрд╕реНрдЯреЙрд▓-рдЯреЗрд╕реНрдЯ

  • рд╕реНрд░реЛрдд рдкреИрдХреЗрдЬ 'data.table' рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реИ ...
    * рдкреИрдХреЗрдЬ 'data.table' рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдЕрдирдкреИрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдФрд░ MD5 рд░рдХрдо рдХреА рдЬрд╛рдБрдЪ рдХреА рдЧрдИ* libs
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -cassign.c -oassign.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c рдмреАрдЪ.c -o рдмреАрдЪ.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c bmerge.c -o bmerge.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c chmatch.c -o chmatch.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c dogroups.c -o dogroups.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fastmean.c -o fastmean.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fcast.c -o fcast.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fmelt.c -o fmelt.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c forder.c -o forder.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c frank.c -o frank.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fread.c -o fread.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fsort.c -o fsort.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fwrite.c -o fwrite.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c gsumm.c -o gsumm.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c ijoin.c -o ijoin.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c init.c -o init.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c inrange.c -o inrange.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c openmp-utils.c -o openmp-utils.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c quickselect.c -o quickselect.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c rbindlist.c -o rbindlist.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c reorder.c -o reorder.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c shift.c -o shift.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c Subset.c -o Subset.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c transpose.c -o transpose.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c uniqlist.c -o uniqlist.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c vecseq.c -o vecseq.o
    /usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/opt/gettext/include -I/usr/local/opt /llvm/include -fopenmp -fPIC -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c wrappers.c -o wrappers.o
    /usr/рд╕реНрдерд╛рдиреАрдп/рдСрдкреНрдЯ/llvm/bin/clang -fopenmp -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -single_module -multiply_defined рд╕рдкреНрд░реЗрд╕ -L/рд▓рд╛рдЗрдмреНрд░реЗрд░реА/рдлреНрд░реЗрдорд╡рд░реНрдХ/R.framework/Resources/lib -L/usr/рд▓реЛрдХрд▓/ рдСрдкреНрдЯ/рдЧреЗрдЯрдЯреЗрдХреНрд╕реНрдЯ/рд▓рд┐рдм-рдПрд▓/рдпреВрдПрд╕рдЖрд░/рд▓реЛрдХрд▓/рдСрдкреНрдЯ/рдПрд▓рдПрд▓рд╡реАрдПрдо/рд▓рд┐рдм-рдбрдмреНрд▓реНрдпреВрдПрд▓,-рдЖрд░рдкрд╛рде,/рдпреВрдПрд╕рдЖрд░/рд▓реЛрдХрд▓/рдСрдкреНрдЯ/рдПрд▓рдПрд▓рд╡реАрдПрдо/рд▓рд┐рдм-рдУ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓.рд╕реЛ рдЕрд╕рд╛рдЗрди рдХрд░реЗрдВред .o dogroups.o fastmean.o fcast.o fmelt.o forder.o frank.o fread.o fsort.o fwrite.o gsumm.o ijoin.o init.o inrange.o openmp-utils.o quickselect.o rbindlist .o reorder.o shift.o subset.o transpose.o uniqlist.o vecseq.o wrappers.o -fopenmp -F/Library/Frameworks/R.framework/.. -framework R -Wl,-framework -Wl,CoreFoundation
    рдПрдорд╡реА data.table.so datatable.so
    рдЕрдЧрд░ [ "" != "Windows_NT"] && [ uname -s = 'рдбрд╛рд░реНрд╡рд┐рди']; рдлрд┐рд░ install_name_tool -id datatable.so datatable.so; рдлрд╛рдИ
    /Users/a.senabouth/Library/R/3.4/library/data.table/libs рдкрд░ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛
    * рдЖрд░* рд╕рдВрд╕реНрдерд╛рди
    * рдкрд░реАрдХреНрд╖рдг* рдмрд╛рдЗрдЯ-рд╕рдВрдХрд▓рди рдФрд░ рдЖрд▓рд╕реА рд▓реЛрдбрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдкреИрдХреЗрдЬ рддреИрдпрд╛рд░ рдХрд░реЗрдВ
    * рдорджрдж* *рд╕рд╣рд╛рдпрддрд╛ рд╕реВрдЪрдХрд╛рдВрдХ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛
    *рдмрд┐рд▓реНрдбрд┐рдВрдЧ рдкреИрдХреЗрдЬ рдЗрдВрдбреЗрдХреНрд╕* рд╡рд┐рдЧрдиреЗрдЯреНрд╕ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛
    ** рдкрд░реАрдХреНрд╖рдг рдЕрдЧрд░ рд╕реНрдерд╛рдкрд┐рдд рдкреИрдХреЗрдЬ рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
  • рд╣реЛ рдЧрдпрд╛ (рдбреЗрдЯрд╛ рдЯреЗрдмрд▓)
    > рдкреБрд╕реНрддрдХрд╛рд▓рдп (рдбреЗрдЯрд╛ рдЯреЗрдмрд▓)
    рдбреЗрдЯрд╛ рддрд╛рд▓рд┐рдХрд╛ 1.10.4
    рд╕реАрдЦрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рддреЗрдЬрд╝ рддрд░реАрдХрд╛ (data.table рд▓реЗрдЦрдХреЛрдВ рджреНрд╡рд╛рд░рд╛): https://www.datacamp.com/courses/data-analysis-the-data-table-way
    рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг: ?data.table, example(data.table) рдФрд░ рдмреНрд░рд╛рдЙрдЬрд╡рд┐рдЧреНрдиреЗрдЯреНрд╕("data.table")
    рд░рд┐рд▓реАрдЬ рдиреЛрдЯреНрд╕, рд╡реАрдбрд┐рдпреЛ рдФрд░ рд╕реНрд▓рд╛рдЗрдб: http://r-datatable.com
    > рдкреБрд╕реНрддрдХрд╛рд▓рдп (рд╕рдорд╛рдирд╛рдВрддрд░)
    > mclapply(1:2, sqrt)
    [[1]]
    [1 1

[[2]]
[1] 1.414214
```

рдореИрдВрдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд https://software.intel.com/en-us/forums/intel-c-compiler/topic/746943 рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рд╣реИ

рдпрд╣ рд╢рд╛рдпрдж рдЧрд▓рдд рдЬрдЧрд╣ рдкрд░ рд╣реИ рдФрд░ рдореИрдВ рд╢рд╛рдпрдж рдлреНрд▓реЗрдо рд╣реЛ рдЬрд╛рдКрдВрдЧрд╛ рд▓реЗрдХрд┐рди рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рдЧреЗрдВрдж рд▓реБрдврд╝рдХ рдЬрд╛рдПрдЧрд╛ред

@mattdowle рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдХреНрдпрд╛ рдРрд╕реА рдЪреАрдЬреЗрдВ рд╣реИрдВ рдЬреЛ рдЖрдк рдореБрдЭреЗ рдЬреЛрдбрд╝рдирд╛/рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ

рдкреБрд╖реНрдЯрд┐ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдХрд┐ рдореИрдВрдиреЗ рдЙрд╕реА рддреНрд░реБрдЯрд┐ рдХреЛ @asenabouth рдХреЗ рд░реВрдк рдореЗрдВ рдкреБрди: рдкреЗрд╢ рдХрд┐рдпрд╛ рдФрд░ рд╕реНрд░реЛрдд рд╕реЗ 1.10.4 рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рд╕реЗ рд╕рдорд╕реНрдпрд╛ рдареАрдХ рд╣реЛ рдЧрдИред

рд╕рддреНрд░ рдЬрд╛рдирдХрд╛рд░реА:

R version 3.4.2 (2017-09-28)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS High Sierra 10.13

Matrix products: default
BLAS: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRblas.0.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRlapack.dylib

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages:
[1] parallel  stats     graphics  grDevices utils     datasets  base     

other attached packages:
[1] data.table_1.10.4

loaded via a namespace (and not attached):
[1] compiler_3.4.2 methods_3.4.2 

рдмрд╕ рдореЗрд░реА рдорд╢реАрди рдкрд░ рдХреБрдЫ рд╡рд┐рд╡рд░рдг рджрд░реНрдЬ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ

library(parallel)
library(data.table)
mclapply(1:2, sqrt)

рдХрд╛ рдЙрддреНрдкрд╛рджрди

 *** caught illegal operation ***
address 0x7fffb500eae4, cause 'illegal opcode'

sessionInfo() рдХреЗ рд╕рд╛рде

R version 3.4.2 (2017-09-28)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS Sierra 10.12.6

Matrix products: default
BLAS: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRblas.0.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRlapack.dylib

locale:
[1] en_CA.UTF-8/en_CA.UTF-8/en_CA.UTF-8/C/en_CA.UTF-8/en_CA.UTF-8

attached base packages:
[1] parallel  stats     graphics  utils     datasets  grDevices methods  
[8] base     

other attached packages:
[1] data.table_1.10.4-2 testthat_1.0.2      devtools_1.13.3    

loaded via a namespace (and not attached):
[1] compiler_3.4.2 magrittr_1.5   R6_2.2.2       withr_2.0.0    crayon_1.3.4  
[6] memoise_1.1.0  digest_0.6.12

рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ,

> remove.packages("data.table")
Removing package from тАШ/Library/Frameworks/R.framework/Versions/3.4/Resources/libraryтАЩ
(as тАШlibтАЩ is unspecified)
> install.packages("data.table", type = "source",
+ repos = "http://Rdatatable.github.io/data.table")

рдХрд╛ рдЙрддреНрдкрд╛рджрди

trying URL 'http://Rdatatable.github.io/data.table/src/contrib/data.table_1.10.5.tar.gz'

Content type 'application/gzip' length 3312726 bytes (3.2 MB)
==================================================
downloaded 3.2 MB

* installing *source* package тАШdata.tableтАЩ ...
** libs
clang -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/include  -fopenmp -fPIC  -Wall -g -O2  -c assign.c -o assign.o
clang: error: unsupported option '-fopenmp'
make: *** [assign.o] Error 1
ERROR: compilation failed for package тАШdata.tableтАЩ
* removing тАШ/Library/Frameworks/R.framework/Versions/3.4/Resources/library/data.tableтАЩ

The downloaded source packages are in
    тАШ/private/var/folders/48/q6ltldjs251000_wvjrdy_vm0000gn/T/Rtmp6eZFXj/downloaded_packagesтАЩ
Warning message:
In install.packages("data.table", type = "source", repos = "http://Rdatatable.github.io/data.table") :
  installation of package тАШdata.tableтАЩ had non-zero exit status

рдореИрдВ рдпрд╣ рджреЗрдЦрдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ

рдореИрдВрдиреЗ https://github.com/Rdatatable/data.table/wiki/Installation рдкрд░ рджрд┐рдП рдЧрдП рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рднреА рдкрд╛рд▓рди рдХрд┐рдпрд╛ рдФрд░ рд╕рдорд╕реНрдпрд╛ рдЕрднреА рднреА рд╣реЛрддреА рд╣реИ ....

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ:
mclapply рдФрд░ illegal operation рдХреЗ рд╕рд╛рде рдореВрд▓ рд╕рдорд╕реНрдпрд╛ (рд╕рдВрдХрд▓рдХ рддреНрд░реБрдЯрд┐ unsupported option '-fopenmp' рдирд╣реАрдВ - рдЬрд┐рд╕реЗ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдХреЗ рдареАрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛)

рд╕рднреА рдХрд╛ рдзрдиреНрдпрд╡рд╛рджред рдпрд╣ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ рдХрд┐ 1.10.4 рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ рд▓реЗрдХрд┐рди 1.10.4-2 рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдХрд╛рдВрдЯрд╛ рдмреБрд▓рд╛рддреЗ рд╣реА рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рд╣реЛрдиреЗ рд▓рдЧрддрд╛ рд╣реИред рдореИрдВрдиреЗ NEWS рдореЗрдВ рдЬрд┐рд╕ рдкреНрд░рдпрд╛рд╕ рдХрд╛ рдЬрд┐рдХреНрд░ рдХрд┐рдпрд╛ рдерд╛, рд╡рд╣ рдЙрд╕реА рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдерд╛ред

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдХреНрдпрд╛ рдирд╣реАрдВ рдмрджрд▓рд╛ред data.table рд▓реЛрдб рдХрд░рдиреЗ рдкрд░, init.c рдЗрд╕реЗ openmp-utils.c рдореЗрдВ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИ:

void avoid_openmp_hang_within_fork() {
  // Called once on loading data.table from init.c
  #ifdef _OPENMP
    pthread_atfork(&when_fork, NULL, NULL);
  #endif
}

рдЗрд╕рд▓рд┐рдП рдЬрдм parallel::mclapply рдЕрдкрдиреЗ fork() $ рдХреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИ, рддреЛ when_fork рдлрд╝рдВрдХреНрд╢рди рдЪрд▓рддрд╛ рд╣реИред рдЬреЛ 1.10.4-2 рдореЗрдВ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:

void when_fork() {    # v 1.10.4-2
  // attempted workaround for Intel's OpenMP implementation which leaves threads
  // running after parallel region; these crash when forked.
  #ifdef _OPENMP
    omp_set_num_threads(1);
  #endif

  DTthreads = 1;
}

рдкрд╣рд▓реЗ (1.10.4 рдореЗрдВ), рдпрд╣ omp_set_num_threads(1) рдкрд░ рдХреЙрд▓ рдирд╣реАрдВ рдХрд░рддрд╛ рдерд╛, рдФрд░ рдпрд╣ рдХреЗрд╡рд▓ рдЙрд╕ рд╕реНрдерд┐рд░ рдЪрд░ DTthreads рдХреЛ рд╕реЗрдЯ рдХрд░ рд░рд╣рд╛ рдерд╛:

void when_fork() {    # v 1.10.4
  DTthreads = 1;
}

рдореИрдВ рдХреЗрд╡рд▓ рдЗрддрдирд╛ рд╕реЛрдЪ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ omp_set_num_threads(1) рдкрд░ рдХреЙрд▓ рдЗрд╕реЗ рдХреНрд░реИрд╢ рдХрд░ рд░рд╣реА рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдмрд╕реЗ рд╕рд░рд▓ рдХрд╛рд░реНрдп рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк OpenMP рдореЗрдВ рдХреЙрд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╢рд╛рдпрдж рдпрд╣ рдХрд┐рд╕реА рддрд░рд╣ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕реЗ рдареАрдХ рд╕реЗ рдмрдВрдзрд╛ рдирд╣реАрдВ рд╣реИ?

  1. рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ parallel::mclapply рдкрд░ рдХреЙрд▓ рдХрд░рддреЗ рд╕рдордп рджреБрд░реНрдШрдЯрдирд╛ рдХреЛ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпрд╛ рдкреИрдХреЗрдЬ parallel рд▓реЛрдб рдХрд┐рдП рдмрд┐рдирд╛ рдПрдХ рдирдП рд╕рддреНрд░ рдореЗрдВ рдЖрдкрдХреЗ рд▓рд┐рдП рд╕рд░рд▓ fwrite() рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ? рдХреНрдпрд╛ рдпрд╣ рдХрдИ рд╕реАрдкреАрдпреВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдЬреИрд╕рд╛ рдЗрд╕реЗ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП? рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдПрдХ рдмрдбрд╝реЗ DT рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдЕрдиреНрдпрдерд╛ рдпрд╣ рдЫреЛрдЯреЗ рдбреЗрдЯрд╛ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ 1 рдереНрд░реЗрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдпрд╣ рдУрдкрдирдПрдордкреА рдХреЗ рдХрд┐рд╕реА рднреА рдЙрдкрдпреЛрдЧ рдкрд░ рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рд╣рдореЗрдВ рдПрдХ рд▓рд┐рдВрдХрд┐рдВрдЧ рд╕рдорд╕реНрдпрд╛ рд╣реИред рдХреНрдпрд╛ рдХрд┐рд╕реА рдХреЛ рдкрддрд╛ рд╣реИ рдХрд┐ рд▓рд┐рдВрдХ рд▓рд╛рдЗрди рдореЗрдВ рдЗрди рдЭрдВрдбреЛрдВ рдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ рдФрд░ рдХреНрдпрд╛ рд╡реЗ рдореИрдХреЛрдЬрд╝ рдкрд░ рдЗрд╕рдХреЗ рд╕рд╛рде рдХреБрдЫ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ? : -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -single_module -multiply_defined suppress

  2. рдореИрдВ рджреЗрд╡ рдореЗрдВ рдЙрд╕ рдХреЙрд▓ рдХреЛ рдлрд┐рд░ рд╕реЗ omp_set_num_threads(1) рдкрд░ рд╣рдЯрд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдФрд░ 1.10.5 рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рд╡рд╛рд▓рд╛ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рдЗрд╕реЗ рдмрджрд▓рдиреЗ рдХреЗ рдмрд╛рдж рдлрд┐рд░ рд╕реЗ рджреЗрд╡ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддрд╛ рд╣реИ?

  3. рдЕрдЬреАрдм рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдореИрдХреЛрдЬрд╝ рдкрд░ рд╕реАрдЖрд░рдПрдПрди рдкрд░ рдкрд░реАрдХреНрд╖рдг рдмрд┐рдирд╛ рдХрд┐рд╕реА рджреБрд░реНрдШрдЯрдирд╛ рдХреЗ рдЧреБрдЬрд░ рд░рд╣реЗ рд╣реИрдВред рдкрд░реАрдХреНрд╖рдг 1705 рдкрд░реАрдХреНрд╖рдг parallel::mclapply рдкрд░ рдХреЙрд▓ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╕рднреА рдкрд░реАрдХреНрд╖рдг рд╕реАрдЖрд░рдПрдПрди рдкрд░ 2 рдереНрд░реЗрдбреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЪрд▓рддреЗ рд╣реИрдВред рд╕реАрдЖрд░рдПрдПрди рдорд╢реАрди рдФрд░ рдЙрди рдорд╢реАрдиреЛрдВ рдореЗрдВ рдХреНрдпрд╛ рдЕрдВрддрд░ рд╣реИ рдЬрд┐рдирд╕реЗ рд▓реЛрдЧреЛрдВ рдХреЛ рд╕рдорд╕реНрдпрд╛ рд╣реИ?

@joethorley рдпрд╣ рдЕрдЬреАрдм рд╣реИред рдпрд╣рд╛рдВ MacOS рдирд┐рд░реНрджреЗрд╢ рдЪрд▓рд╛рдиреЗ рдХреЗ рдмрд╛рдж рднреА рдЖрдкрдХреЛ unsupported option '-fopenmp' рдорд┐рд▓рддрд╛ рд╣реИред рдХреНрдпрд╛ рдХреЛрдИ рдФрд░ рд╕реБрдЭрд╛рд╡ рджреЗ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рддрдм рдХреИрд╕реЗ рдкреНрд░рдЧрддрд┐ рдХреА рдЬрд╛рдП? рдореБрдЭреЗ рд╣рд╛рдирд┐ рд╣реЛ рд░рд╣реА рд╣реИред

@joethorley рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЧреЗрдЯрдЯреЗрдХреНрд╕реНрдЯ рд╕реНрдерд╛рдкрд┐рдд рд╣реИ? рдкрддрд╛ рдЪрд▓рд╛ рдореИрдВрдиреЗ рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдПрдХ рдмрд╛рд░ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдореИрдВ рдЕрдкрдиреЗ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдкреИрдХреЗрдЬ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред

@mattdowle рдирд╣реАрдВ unsupported option '-fopenmp' рддреНрд░реБрдЯрд┐ рдЧрд╛рдпрдм рд╣реЛ рдЧрдИ рдЬрдм рдореИрдВрдиреЗ рдпрд╣рд╛рдВ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд┐рдпрд╛ рд▓реЗрдХрд┐рди рддреНрд░реБрдЯрд┐

 *** caught illegal operation ***
address 0x7fffb500eae4, cause 'illegal opcode'

рд╣реБрдЖред

рдорд╛рдИ рдореЗрдХрд╡рд╛рд░реНрд╕ рд╣реИ

CC=/usr/local/opt/llvm/bin/clang -fopenmp
CXX=/usr/local/opt/llvm/bin/clang++
# -O3 should be faster than -O2 (default) level optimisation ..
CFLAGS=-g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe
CXXFLAGS=-g -O3 -Wall -pedantic -std=c++11 -mtune=native -pipe
LDFLAGS=-L/usr/local/opt/gettext/lib -L/usr/local/opt/llvm/lib -Wl,-rpath,/usr/local/opt/llvm/lib
CPPFLAGS=-I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include

рдореЗрд░рд╛ рд╕рддреНрд░рдЗрдиреНрдлреЛ ()

R version 3.4.2 (2017-09-28)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS Sierra 10.12.6

Matrix products: default
BLAS: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRblas.0.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRlapack.dylib

locale:
[1] en_CA.UTF-8/en_CA.UTF-8/en_CA.UTF-8/C/en_CA.UTF-8/en_CA.UTF-8

attached base packages:
[1] stats     graphics  utils     datasets  grDevices methods   base     

other attached packages:
[1] testthat_1.0.2  devtools_1.13.3

loaded via a namespace (and not attached):
[1] compiler_3.4.2 magrittr_1.5   R6_2.2.2       withr_2.0.0    crayon_1.3.4  
[6] memoise_1.1.0  digest_0.6.12 

рдФрд░ рдореЗрд░рд╛ рдЖрд░ рд╕рддреНрд░

> remove.packages("data.table")
Removing package from тАШ/Library/Frameworks/R.framework/Versions/3.4/Resources/libraryтАЩ
(as тАШlibтАЩ is unspecified)
> install.packages("data.table", type = "source", repos = "http://Rdatatable.github.io/data.table")
trying URL 'http://Rdatatable.github.io/data.table/src/contrib/data.table_1.10.5.tar.gz'
Content type 'application/gzip' length 3312684 bytes (3.2 MB)
==================================================
downloaded 3.2 MB

* installing *source* package тАШdata.tableтАЩ ...
** libs
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c assign.c -o assign.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c between.c -o between.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c bmerge.c -o bmerge.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c chmatch.c -o chmatch.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c dogroups.c -o dogroups.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fastmean.c -o fastmean.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fcast.c -o fcast.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fmelt.c -o fmelt.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c forder.c -o forder.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c frank.c -o frank.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fread.c -o fread.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c freadR.c -o freadR.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fsort.c -o fsort.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fwrite.c -o fwrite.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fwriteR.c -o fwriteR.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c gsumm.c -o gsumm.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c ijoin.c -o ijoin.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c init.c -o init.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c inrange.c -o inrange.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c openmp-utils.c -o openmp-utils.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c quickselect.c -o quickselect.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c rbindlist.c -o rbindlist.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c reorder.c -o reorder.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c shift.c -o shift.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c subset.c -o subset.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c transpose.c -o transpose.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c uniqlist.c -o uniqlist.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c vecseq.c -o vecseq.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c wrappers.c -o wrappers.o
/usr/local/opt/llvm/bin/clang -fopenmp -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -single_module -multiply_defined suppress -L/Library/Frameworks/R.framework/Resources/lib -L/usr/local/opt/gettext/lib -L/usr/local/opt/llvm/lib -Wl,-rpath,/usr/local/opt/llvm/lib -o data.table.so assign.o between.o bmerge.o chmatch.o dogroups.o fastmean.o fcast.o fmelt.o forder.o frank.o fread.o freadR.o fsort.o fwrite.o fwriteR.o gsumm.o ijoin.o init.o inrange.o openmp-utils.o quickselect.o rbindlist.o reorder.o shift.o subset.o transpose.o uniqlist.o vecseq.o wrappers.o -fopenmp -F/Library/Frameworks/R.framework/.. -framework R -Wl,-framework -Wl,CoreFoundation
mv data.table.so datatable.so
if [ "" != "Windows_NT" ] && [ `uname -s` = 'Darwin' ]; then install_name_tool -id datatable.so datatable.so; fi
installing to /Library/Frameworks/R.framework/Versions/3.4/Resources/library/data.table/libs
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded
* DONE (data.table)

The downloaded source packages are in
    тАШ/private/var/folders/48/q6ltldjs251000_wvjrdy_vm0000gn/T/RtmpWku3yc/downloaded_packagesтАЩ
> library(parallel)
> library(data.table)
data.table 1.10.5 IN DEVELOPMENT built 2017-10-18 23:12:32 UTC; travis
  The fastest way to learn (by data.table authors): https://www.datacamp.com/courses/data-analysis-the-data-table-way
  Documentation: ?data.table, example(data.table) and browseVignettes("data.table")
  Release notes, videos and slides: http://r-datatable.com
> mclapply(1:2, sqrt)

 *** caught illegal operation ***
address 0x7fffb500eae4, cause 'illegal opcode'

@mattdowle

  1. fwrite() рдореЗрд░реА рдорд╢реАрди рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ
> mtcars <- rbind(mtcars, mtcars)
> nrow(mtcars)                                       
[1] 16777216
> fwrite(mtcars, "mtcars.csv")
Written 45.1% of 16777216 rows in 2 secs using 8 threads. anyBufferGrown=no; max
Written 69.5% of 16777216 rows in 3 secs using 8 threads. anyBufferGrown=no; max
Written 93.9% of 16777216 rows in 4 secs using 8 threads. anyBufferGrown=no; max                                                                         

@asenabouth рдореЗрд░реЗ рдкрд╛рд╕ рдЧреЗрдЯрдЯреЗрдХреНрд╕реНрдЯ рд╕реНрдерд╛рдкрд┐рдд рд╣реИ рдФрд░ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдореИрдВ рдкреИрдХреЗрдЬ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред рдореЗрд░реА рдкреЛрд╕реНрдЯ рдереЛрдбрд╝реА рдЕрд╕реНрдкрд╖реНрдЯ рдереА рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рд╕рдВрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рд╣реИред

@mattdowle

  1. рдпрджрд┐ рдЖрдк рджреЗрд╡ рдореЗрдВ omp_set_num_threads(1) рдкрд░ рдЙрд╕ рдХреЙрд▓ рдХреЛ рд╣рдЯрд╛ рджреЗрддреЗ рд╣реИрдВ рддреЛ рдореИрдВ рдлрд┐рд░ рд╕реЗ рджреЗрд╡ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реВрдВрдЧрд╛ред

CRAN рд╕реЗ 1.10.4.2 рдЗрдВрд╕реНрдЯрд╛рд▓ рдХрд░рдирд╛, рдпрд╛ рддреЛ рд╕реНрд░реЛрдд рдпрд╛ рдмрд╛рдЗрдирд░реА, рдкрд░рд┐рдгрд╛рдо mclapply рд╣реИрдВрдЧ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред github.com/Rdatatable/data рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛ред рд╕реНрд░реЛрдд рд╕реЗ рддрд╛рд▓рд┐рдХрд╛ @ рдорд╛рд╕реНрдЯрд░ рдЕрднреА рднреА рдореВрд▓ mclapply рд╣реИрдВрдЧ рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд░рддрд╛ рд╣реИред

рд╡рд░реНрддрдорд╛рди рдорд╛рд╕реНрдЯрд░ рдХреЗ рдЗрд╕ рд╕рдВрд╢реЛрдзрд┐рдд рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛

$ git diff
diff --git a/src/openmp-utils.c b/src/openmp-utils.c
index d6e3b70..bf104fc 100644
--- a/src/openmp-utils.c
+++ b/src/openmp-utils.c
@@ -78,7 +78,7 @@ void when_fork() {
 void avoid_openmp_hang_within_fork() {
   // Called once on loading data.table from init.c
 #ifdef _OPENMP
-  pthread_atfork(&when_fork, NULL, NULL);
+//  pthread_atfork(&when_fork, NULL, NULL);
 #endif
 }
 ```

or this version

$ рдЧрд┐рдЯ рдЕрдВрддрд░
рдЕрдВрддрд░ --git a/src/openmp-utils.cb/src/openmp-utils.c
рд╕реВрдЪрдХрд╛рдВрдХ d6e3b70..8c0236d 100644
--- a/src/openmp-utils.c
+++ b/src/openmp-utils.c
@@ -62,7 +62,7 @@ рд╢реВрдиреНрдп рдЬрдм_рдлреЛрд░реНрдХ() {
// рдЗрдВрдЯреЗрд▓ рдХреЗ рдУрдкрдирдПрдордкреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд▓рд┐рдП рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдЬреЛ рдмрд╛рдж рдореЗрдВ рдЪрд▓ рд░рд╣реЗ рдзрд╛рдЧреЗ рдХреЛ рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИ
// рд╕рдорд╛рдирд╛рдВрддрд░ рдХреНрд╖реЗрддреНрд░; рдпреЗ рджреБрд░реНрдШрдЯрдирд╛ рдЬрдм рдХрд╛рдВрдЯрд╛ред
#ifdef _OPENMP

  • omp_set_num_threads(1);
    +// omp_set_num_threads(1);
    #рдЕрдЧрд░ рдЕрдВрдд

// рдЬреАрдПрдирдпреВ рдУрдкрдирдПрдордкреА рд╕рд┐рд░реНрдл рдбреАрдЯреАрдереНрд░реЗрдбреНрд╕ рдХреЛ 1 рдкрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рдареАрдХ рд▓рдЧрддрд╛ рд╣реИ рдЬреЛ рдЕрдЧрд▓реЗ рд╕рдорд╛рдирд╛рдВрддрд░ рдХреНрд╖реЗрддреНрд░ рдХреЛ рд╕реАрдорд┐рдд рдХрд░рддрд╛ рд╣реИ

clears the hang for me.

The R we use (installed as a binary from CRAN) is the 3.4.2 release

рдЖрд░.рд╕рдВрд╕реНрдХрд░рдг
_
рдордВрдЪ x86_64-рд╕реЗрдм-рдбрд╛рд░реНрд╡рд┐рди15.6.0
рдЖрд░реНрдХ x86_64
рдУрдПрд╕ рдбрд╛рд░реНрд╡рд┐рди15.6.0
рд╕рд┐рд╕реНрдЯрдо x86_64, рдбрд╛рд░реНрд╡рд┐рди15.6.0
рд╕реНрдерд┐рддрд┐
рдкреНрд░рдореБрдЦ 3
рдорд╛рдЗрдирд░ 4.2
рд╡рд░реНрд╖ 2017
рдорд╛рд╣ 09
рджрд┐рди 28
рдПрд╕рд╡реАрдПрди рд░реЗрд╡ 73368
рднрд╛рд╖рд╛ рдЖрд░
рд╡рд░реНрдЬрди.рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЖрд░ рд╡рд░реНрдЬрди 3.4.2 (2017-09-28)
рдЙрдкрдирд╛рдо рд╢реЙрд░реНрдЯ рд╕рдорд░
```

рдкрд░рд┐рд╡реЗрд╢ рдЪрд░ OMP_NUM_THREADS=2 рд╕реЗрдЯ рдХрд░рдиреЗ рд╕реЗ рдкрд░рд┐рдгрд╛рдо рдирд╣реАрдВ рдмрджрд▓рд╛ред

рдореИрдВ рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ omp_set_num_threads(1); рдореЗрдВ when_fork() рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░рдиреЗ рд╕реЗ рдореЗрд░реА рдорд╢реАрди рдХреА рд╕рдорд╕реНрдпрд╛ рднреА рдареАрдХ рд╣реЛ рдЬрд╛рддреА рд╣реИ

> mclapply(1:2, sqrt)
[[1]]
[1] 1

[[2]]
[1] 1.414214

рд╕рднреА рдХреЛ рдзрдиреНрдпрд╡рд╛рджред рджреЗрд╡ рдореЗрдВ рдлрд┐рдХреНрд╕ рдХрд┐рдпрд╛ рдФрд░ рдЧреБрдЬрд░ рд░рд╣рд╛ рд╣реИред @joethorley рдХреНрдпрд╛ рдЖрдк рдпрд╛ рдХреЛрдИ рдФрд░ рдкреБрд╖реНрдЯрд┐ рдХрд░реЗрдЧрд╛ рдХрд┐ рдирд╡реАрдирддрдо 1.10.5 рдЕрднреА рдареАрдХ рд╣реИред рдореИрдВ рд╕реАрдЖрд░рдПрдПрди рдореЗрдВ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП 1.10.4-3 рдХреА рддреИрдпрд╛рд░реА рд╢реБрд░реВ рдХрд░реВрдВрдЧрд╛ред

@mattdowle

рдореИрдВ рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рддрдп рд╣реИред

$ R

R version 3.4.2 (2017-09-28) -- "Short Summer"
Copyright (C) 2017 The R Foundation for Statistical Computing
Platform: x86_64-apple-darwin15.6.0 (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

  Natural language support but running in an English locale

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> remove.packages("data.table")
Removing package from тАШ/Library/Frameworks/R.framework/Versions/3.4/Resources/libraryтАЩ
(as тАШlibтАЩ is unspecified)
> install.packages("data.table", type = "source", repos = "http://Rdatatable.github.io/data.table")
trying URL 'http://Rdatatable.github.io/data.table/src/contrib/data.table_1.10.5.tar.gz'
Content type 'application/gzip' length 3313284 bytes (3.2 MB)
==================================================
downloaded 3.2 MB

* installing *source* package тАШdata.tableтАЩ ...
** libs
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c assign.c -o assign.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c between.c -o between.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c bmerge.c -o bmerge.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c chmatch.c -o chmatch.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c dogroups.c -o dogroups.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fastmean.c -o fastmean.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fcast.c -o fcast.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fmelt.c -o fmelt.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c forder.c -o forder.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c frank.c -o frank.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fread.c -o fread.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c freadR.c -o freadR.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fsort.c -o fsort.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fwrite.c -o fwrite.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c fwriteR.c -o fwriteR.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c gsumm.c -o gsumm.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c ijoin.c -o ijoin.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c init.c -o init.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c inrange.c -o inrange.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c openmp-utils.c -o openmp-utils.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c quickselect.c -o quickselect.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c rbindlist.c -o rbindlist.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c reorder.c -o reorder.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c shift.c -o shift.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c subset.c -o subset.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c transpose.c -o transpose.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c uniqlist.c -o uniqlist.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c vecseq.c -o vecseq.o
/usr/local/opt/llvm/bin/clang -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/opt/gettext/include -I/usr/local/opt/llvm/include  -fopenmp -fPIC  -g -O3 -Wall -pedantic -std=gnu99 -mtune=native -pipe -c wrappers.c -o wrappers.o
/usr/local/opt/llvm/bin/clang -fopenmp -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -single_module -multiply_defined suppress -L/Library/Frameworks/R.framework/Resources/lib -L/usr/local/opt/gettext/lib -L/usr/local/opt/llvm/lib -Wl,-rpath,/usr/local/opt/llvm/lib -o data.table.so assign.o between.o bmerge.o chmatch.o dogroups.o fastmean.o fcast.o fmelt.o forder.o frank.o fread.o freadR.o fsort.o fwrite.o fwriteR.o gsumm.o ijoin.o init.o inrange.o openmp-utils.o quickselect.o rbindlist.o reorder.o shift.o subset.o transpose.o uniqlist.o vecseq.o wrappers.o -fopenmp -F/Library/Frameworks/R.framework/.. -framework R -Wl,-framework -Wl,CoreFoundation
mv data.table.so datatable.so
if [ "" != "Windows_NT" ] && [ `uname -s` = 'Darwin' ]; then install_name_tool -id datatable.so datatable.so; fi
installing to /Library/Frameworks/R.framework/Versions/3.4/Resources/library/data.table/libs
** R
** inst
** byte-compile and prepare package for lazy loading
session** help
In*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded
* DONE (data.table)

The downloaded source packages are in
    тАШ/private/var/folders/48/q6ltldjs251000_wvjrdy_vm0000gn/T/RtmpmAMLnD/downloaded_packagesтАЩ
> library(parallel)
> library(data.table)
data.table 1.10.5 IN DEVELOPMENT built 2017-10-19 19:32:41 UTC; travis
  The fastest way to learn (by data.table authors): https://www.datacamp.com/courses/data-analysis-the-data-table-way
  Documentation: ?data.table, example(data.table) and browseVignettes("data.table")
  Release notes, videos and slides: http://r-datatable.com
> sessionInfo()
R version 3.4.2 (2017-09-28)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS Sierra 10.12.6

Matrix products: default
BLAS: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRblas.0.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRlapack.dylib

locale:
[1] en_CA.UTF-8/en_CA.UTF-8/en_CA.UTF-8/C/en_CA.UTF-8/en_CA.UTF-8

attached base packages:
[1] parallel  stats     graphics  utils     datasets  grDevices methods  
[8] base     

other attached packages:
[1] data.table_1.10.5 testthat_1.0.2    devtools_1.13.3  

loaded via a namespace (and not attached):
[1] compiler_3.4.2 magrittr_1.5   R6_2.2.2       tools_3.4.2    withr_2.0.0   
[6] crayon_1.3.4   memoise_1.1.0  digest_0.6.12 
> mclapply(1:2, sqrt)
[[1]]
[1] 1

[[2]]
[1] 1.414214

рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж @joethorley! рд╕реАрдЖрд░рдПрдПрди рдХреЛ 1.10.4-3 рдкрд░ рд╕рдмрдорд┐рдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдФрд░ рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реИ, рд╕реАрдЖрд░рдПрдПрди рдХреЗ рдЬрд╛рджреВ рдХреЛ рдЕрдкрдирд╛ рдХреЛрд░реНрд╕ рдЪрд▓рд╛рдиреЗ рдореЗрдВ рдХреБрдЫ рджрд┐рди рд▓рдЧреЗрдВрдЧреЗред

v1.10.4-3 рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди (рд╕реАрдЖрд░рдПрдПрди 20 рдЕрдХреНрдЯреВрдмрд░ 2017 рдХреЛ)

  1. рдореИрдХреЛрдЬрд╝ рдкрд░ рдлрд┐рдХреНрд╕реНрдб рдХреНрд░реИрд╢/рд╣реИрдВрдЧ рдЬрдм parallel::mclapply рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ рдХреЗрд╡рд▓ рд▓реЛрдб рд╣реЛрддрд╛ рд╣реИ, #2418 ред рдЕрдЬреАрдм рддрд░рд╣ рд╕реЗ, рдкрд░реАрдХреНрд╖рдг 1705 (рдЬреЛ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ рдХреЗ рд╕рд╛рде mclapply рдкрд░реАрдХреНрд╖рдг рдХрд░рддрд╛ рд╣реИ) рд╕рд╣рд┐рдд рд╕рднреА рдкрд░реАрдХреНрд╖рдг рд╕реАрдЖрд░рдПрдПрди рдкрд░ рдареАрдХ рд╕реЗ рдкрд╛рд░рд┐рдд рд╣реБрдПред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдХреЛрдЬрд╝ рдХреЗ рдХреБрдЫ рд╕рдВрд╕реНрдХрд░рдг рдпрд╛ рдореИрдХреЛрдЬрд╝ рдкрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рдХреБрдЫ рд╕рдВрд╕реНрдХрд░рдг рд╢рд╛рдпрдж рд╣реИрдВред рдЗрд╕ рдлрд┐рдХреНрд╕ рдХрд╛рд░реНрдпреЛрдВ рдХреА рд░рд┐рдкреЛрд░реНрдЯрд┐рдВрдЧ рдФрд░ рдкреБрд╖реНрдЯрд┐ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рд░реНрдЯрд┐рди рдореЙрд░реНрдЧрди рдХреЛ рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рджред рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ (рдЬреИрд╕реЗ fwrite ) рдХреЗ рдЕрдВрджрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╕рдорд╛рдВрддрд░рддрд╛ рдХрд╛ рдкрд░реАрдХреНрд╖рдг, рдбрд┐рдмрдЧрд┐рдВрдЧ рдФрд░ рдкреБрд╖реНрдЯрд┐ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрд╕реЗрдирдмрд╛рдЙрдЯ, рдЬреЛ рдереЛрд░реНрд▓реЗ рдФрд░ рдбреЗрдВрдЯрди рдиреЛрд░рд┐рдПрдЧрд╛ рдХреЛ рднреА рдзрдиреНрдпрд╡рд╛рдж, рдЗрди рдореИрдХреЛрдЬрд╝ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдкрд░ рднреА рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред 1.10.4-1 рдФрд░ 1.10.4-2 рдХреЗ рд▓рд┐рдП рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рд╕рдорд╛рдЪрд╛рд░ рднреА рджреЗрдЦреЗрдВред

рдЕрднреА рдХреЗ рд▓рд┐рдП рдмрдВрджред 1.10.4-3 рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рд╣реЛрдиреЗ рдкрд░ рдХреГрдкрдпрд╛ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓реЗрдВ рдпрд╛ рдПрдХ рдирдпрд╛ рдореБрджреНрджрд╛ рдЦреЛрд▓реЗрдВред

@mattdowle : рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ v1.10.4-2 рдЕрднреА рднреА рд╕реАрдЖрд░рдПрдПрди рджреНрд╡рд╛рд░рд╛ рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╕рдВрд╕реНрдХрд░рдг рд╣реИред рдХреНрдпрд╛ v1.10.4-3 рдЕрднреА рднреА рд╕реАрдЖрд░рдПрдПрди рд╕рдмрдорд┐рд╢рди рдХрддрд╛рд░ рдореЗрдВ рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдпрд╛ рдХреБрдЫ рдФрд░ рдЧрд▓рдд рд╣реЛ рдЧрдпрд╛ рд╣реИ?

(рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдЗрддрдиреА рдЬрд▓реНрджреА рд╕рдорд╛рдзрд╛рди рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж; рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдпрд╣ macOS рдкрд░ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реИ)

@kevinushey рд╣рд╛рдБ 1.10.4-3 рдХрддрд╛рд░ рдореЗрдВ рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣рд╛ рдерд╛ ('рд░реАрдЪреЗрдХ' рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЬреЛ рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдЗрд╕рдХрд╛ рдХреНрдпрд╛ рдЕрд░реНрде рд╣реИ, 6 рджрд┐рдиреЛрдВ рдХреЗ рд▓рд┐рдП)ред рдореИрдВрдиреЗ рд╕реАрдЖрд░рдПрдПрди рдХреЛ рдПрдХ рдИрдореЗрд▓ рднреЗрдЬрд╛ рдФрд░ рдЕрдм рдЗрд╕реЗ рд╕реАрдЖрд░рдПрдПрди рдХреЛ рдЬрд╛рд░реА рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рд╢рд╛рдпрдж рдореИрдВ рдХреБрдЫ рдЧрд▓рдд рдХрд░ рд░рд╣рд╛ рд╣реВрдБ, рд▓реЗрдХрд┐рди рдореИрдВ рдЕрднреА рднреА рдЕрдкрдиреЗ рдореИрдХ рдкрд░ рд╕рдорд╕реНрдпрд╛ рд╣реИред

> sessionInfo()
R version 3.4.1 (2017-06-30)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS Sierra 10.12.6

Matrix products: default
BLAS: /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRlapack.dylib

locale:
[1] fr_FR.UTF-8/fr_FR.UTF-8/fr_FR.UTF-8/C/fr_FR.UTF-8/fr_FR.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
 [1] httr_1.3.1      compiler_3.4.1  R6_2.2.2        tools_3.4.1     withr_2.0.0     curl_3.0       
 [7] yaml_2.1.14     memoise_1.1.0   knitr_1.17      git2r_0.19.0    digest_0.6.12   devtools_1.13.3

рд╕реНрд░реЛрдд рд╕реЗ рдХреНрд░реИрди рд╕рдВрд╕реНрдХрд░рдг рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╕рдордп, рдореБрдЭреЗ рдорд┐рд▓рддрд╛ рд╣реИ:

> install.packages("data.table", type = "source", repos = "https://cran.rstudio.com")
essai de l'URL 'https://cran.rstudio.com/src/contrib/data.table_1.10.4-3.tar.gz'
Content type 'application/x-gzip' length 3071833 bytes (2.9 MB)
==================================================
downloaded 2.9 MB

* installing *source* package тАШdata.tableтАЩ ...
** package тАШdata.tableтАЩ correctement d├йcompress├й et sommes MD5 v├йrifi├йes
** libs
clang -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG   -I/usr/local/include  -fopenmp -fPIC  -Wall -g -O2  -c assign.c -o assign.o
clang: error: unsupported option '-fopenmp'
make: *** [assign.o] Error 1
ERROR: compilation failed for package тАШdata.tableтАЩ
* removing тАШ/Library/Frameworks/R.framework/Versions/3.4/Resources/library/data.tableтАЩ
* restoring previous тАШ/Library/Frameworks/R.framework/Versions/3.4/Resources/library/data.tableтАЩ

Les packages source t├йl├йcharg├йs sont dans
    тАШ/private/var/folders/51/6jygptvs3bb4njv0t6x7br900000gn/T/Rtmp8NJ0di/downloaded_packagesтАЩ
Warning message:
In install.packages("data.table", type = "source", repos = "https://cran.rstudio.com") :
  l'installation du package тАШdata.tableтАЩ a eu un statut de sortie non nul

рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдореИрдВ рдЕрдзрд┐рдХ рд╡рд┐рд╡рд░рдг рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

@davidgohel : рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ R LLVM рдЯреВрд▓рдЪреЗрди рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреГрдкрдпрд╛ рдпрд╣ рдорд╛рд░реНрдЧрджрд░реНрд╢рд┐рдХрд╛ рджреЗрдЦреЗрдВред http://thecoatlessprofessor.com/programming/openmp-in-r-on-os-x/

рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ, рдореИрдВ рдлрд╝рд╛рдЗрд▓ рдХреЛ R.home("etc/Makeconf") рдкрд░ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ -fopenmp рдХреЗ рдХрд┐рд╕реА рднреА рдЙрджрд╛рд╣рд░рдг рдХреЛ рд╣рдЯрд╛ рджреЗрддрд╛ рд╣реВрдВ, рддрд╛рдХрд┐ рд╕рдВрдХрд▓рди рдРрдкреНрдкрд▓ рд╕рд┐рд╕реНрдЯрдо рдЯреВрд▓рдЪреЗрди рдХреЗ рд╕рд╛рде рдУрдкрдирдПрдордкреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рди рдХрд░реЗред

@kevinushey рдареАрдХ рд╣реИ, рдореИрдВ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╕рдорд╛рдзрд╛рди рдХреЗ рд╕рд╛рде рдкреНрд░рдпрд╛рд╕ рдХрд░реВрдВрдЧрд╛ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рд╕рд╛рде рдХреБрдЫ рдЧрдбрд╝рдмрдбрд╝ рдХрд░ рджреА рд╣реИред

рдЗрд╕реЗ рдореЗрд░реА ~/.R/Makevars рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рд╣рд╛рдИ рд╕рд┐рдПрд░рд╛ рдкрд░ OpenMP рдХреЗ рдмрд┐рдирд╛ data.table рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛ рдЧрдпрд╛:

# Suppress `-fopenmp` in R.home("etc/Makeconf")
# MAIN_LDFLAGS = -fopenmp
# SHLIB_OPENMP_CFLAGS = -fopenmp
# SHLIB_OPENMP_CXXFLAGS = -fopenmp
# SHLIB_OPENMP_FCFLAGS = -fopenmp
# SHLIB_OPENMP_FFLAGS = -fopenmp
MAIN_LDFLAGS =
SHLIB_OPENMP_CFLAGS =
SHLIB_OPENMP_CXXFLAGS =
SHLIB_OPENMP_FCFLAGS =
SHLIB_OPENMP_FFLAGS =

@mjsteinbaugh @kevinushey рдзрдиреНрдпрд╡рд╛рдж, рдЗрд╕рдиреЗ рдХрд╛рдо рдХрд┐рдпрд╛

рдореИрдВрдиреЗ рдлрд╝рд╛рдЗрд▓ рдХреЛ R.home("etc/Makeconf") рдкрд░ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЗрд╕реЗ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ ~/.R/Makevars рдирд╛рдо рдХреА рдХреЛрдИ рдлрд╝рд╛рдЗрд▓ рднреА рдирд╣реАрдВ рд╣реИред рдХреЛрдИ рдФрд░ рд╕реБрдЭрд╛рд╡ :) рдзрдиреНрдпрд╡рд╛рдж

@ValeriVoev ~/.R/Makevars рдкрд░ рдлрд╝рд╛рдЗрд▓ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ; рдЖрдкрдХреЛ рдЗрд╕реЗ рд╕реНрд╡рдпрдВ рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛ред (рдЕрд░реНрдерд╛рдд, рдЕрдкрдиреА рд╣реЛрдо рдбрд╛рдЗрд░реЗрдХреНрдЯрд░реА рдореЗрдВ .R рдирд╛рдо рдХрд╛ рдлреЛрд▓реНрдбрд░ рдмрдирд╛рдПрдВ рдФрд░ рдлрд┐рд░ рдЙрд╕ рдлреЛрд▓реНрдбрд░ рдореЗрдВ рдПрдХ Makevars рдлрд╛рдЗрд▓ рдмрдирд╛рдПрдВ)

рдзрдиреНрдпрд╡рд╛рдж @kevinushey - рдореИрдВрдиреЗ рдЖрдЦрд┐рд░рдХрд╛рд░ рдЗрд╕реЗ рдХрд╛рдо рдХрд░ рджрд┐рдпрд╛, data.table 1.10.4-3 рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдФрд░ рдЖрд░ рд╕реНрдЯреВрдбрд┐рдпреЛ рдЕрдм рдХреНрд░реИрд╢ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдореИрдВрдиреЗ рдХреНрд▓реИрдВрдЧ рднреА рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ - рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЗрд╕рд╕реЗ рднреА рдорджрдж рдорд┐рд▓реА рдпрд╛ рдирд╣реАрдВред

рдореБрдЭреЗ рдЕрднреА рднреА рдпрд╣ рддреНрд░реБрдЯрд┐ рдмреЗрддрд░рддреАрдм рдврдВрдЧ рд╕реЗ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИ

Assertion failure at kmp_runtime.cpp(6480): __kmp_thread_pool == __null.
OMP: Error #13: Assertion failure at kmp_runtime.cpp(6480).
OMP: Hint: Please submit a bug report with this message, compile and run commands used, and machine configuration info including native compiler and operating system versions. Faster response will be obtained by including all program sources. For information on submitting this issue, please see http://www.intel.com/software/products/support/.

рдФрд░ рдорд╛рдорд▓рд╛ рд╡рд╛рдХрдИ рдкреЗрдЪреАрджрд╛ рд╣реИред

  1. data.table 1.10.4 рдФрд░ 1.10.4-3 рдореЗрд░реЗ рд▓рд┐рдП рд╕рдорд╛рди рд╣реИрдВред
  2. рдореЗрд░реЗ рдкрд╛рд╕ рдХреБрдЫ рд╕рдорд╛рдВрддрд░ рдХреЛрдб рд╡рд╛рд▓рд╛ рдПрдХ рд╡рд┐рдЧрдиреЗрдЯ рд╣реИ рдЬреЛ рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╕рдорд╕реНрдпрд╛ рдХреЗ рдЪрд▓ рд╕рдХрддрд╛ рд╣реИ рдЬрдм рдореИрдВ рд╕рднреА рднрд╛рдЧ рдЪрд▓рд╛рддрд╛ рд╣реВрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдмреБрдиреЗрдВ рдХрд┐ рд╡рд┐рдЧрдиреЗрдЯ рдореЗрдВ рдКрдкрд░ рддреНрд░реБрдЯрд┐ рд╣реЛрдЧреАред
  3. рдЕрдЧрд░ рдореИрдВ рд╡рд┐рдЧрдиреЗрдЯ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд╕рдорд╛рдирд╛рдВрддрд░ рдХреЛрдб mclapply(1:2, sqrt) рдбрд╛рд▓рддрд╛ рд╣реВрдВ, рддреЛ рд╡рд┐рдЧрдиреЗрдЯ рдмреБрдирд╛рдИ рдореЗрдВ рдЕрдм рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рд╣реИ!

рдпрд╣ рд╕рдм рдкрд░реНрдпрд╛рд╡рд░рдг рдкрд░рд┐рд╡рд░реНрддрди рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд▓рдЧ рд░рд╣рд╛ рдерд╛ред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдореЗрд░реЗ рдкрд╛рд╕ рдЕрдм рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдЙрджрд╛рд╣рд░рдг рдирд╣реАрдВ рд╣реИред рдореЗрд░рд╛ рдХреЛрдб рдХрд╛рдлреА рдЬрдЯрд┐рд▓ рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рдмрд╣реБрдд рд╕реА рдЕрдиреНрдп рдЪреАрдЬреЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред

рдбреНрд░реЗрдХреЛрдбреЛрдХ рдХреА рддрд░рд╣, (6480) рдХреЛ рдмреЗрддрд░рддреАрдм рдврдВрдЧ рд╕реЗ рдкрдХрдбрд╝реЗрдВред рдореИрдХреЛрдЬрд╝ 10.13.3, рдЖрд░ 3.4.3, рдбреЗрдЯрд╛ рдЯреЗрдмрд▓ 1.10.4-3ред рдпрд╣рд╛рдВ рд╕рд╛рджрд╛ рдЖрд░ рдФрд░ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЬрдЯрд┐рд▓ рдХреЛрдбред

рдХреЛрдб рдХрд╛рдо рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╕рд░рд▓ mclapply рдФрд░ рдХрднреА-рдХрднреА рдмрд╛рдХреА рдХреЛрдб рднреА рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, mclapply(1:2, sqrt) рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд▓ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреА рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдЪрд▓рдиреЗ рд╕реЗ (рдЕрдм рдХреЛрдб рдХреЛ for (i in 1:10) mclapply(1:10000000, sqrt) рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВ)ред

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдХрд╛рд╢, рдирд┐рд╖реНрдкрд╛рджрди рд╕реНрдерд┐рд░ рдирд╣реАрдВ рд▓рдЧрддрд╛, рдФрд░ рд╣рд╛рд▓рд╛рдВрдХрд┐ mcmapply рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, рдпрд╣ рдХреБрдЫ рд╕рдордп рдмрд╛рдж рд▓рдЯрдХ рдЬрд╛рддрд╛ рд╣реИред

рдореИрдВрдиреЗ рдЕрднреА рдпреЗ рдФрд░ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ рджреЗрдЦреА рд╣реИрдВред рдХреГрдкрдпрд╛ рдпрд╛ рддреЛ рджреЗрд╡ 1.10.5 рдЖрдЬрд╝рдорд╛рдПрдВ рдпрд╛ рдЕрдЧрд▓реЗ рд╕реАрдЖрд░рдПрдПрди рд░рд┐рд▓реАрдЬ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдВ (рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЬрд▓реНрдж рд╣реА)ред рдЕрдЧрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рднреА рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рдПрдХ рдирдпрд╛ рдореБрджреНрджрд╛ рдЙрдард╛рдПрдВред

рдореИрдВ рдЕрднреА рднреА рджреЗрд╡ 1.10.5 рдХреЗ рд╕рд╛рде рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВред рдирдпрд╛ рдореБрджреНрджрд╛ рдмрдирд╛рдпрд╛ред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕