Comments (10)
Hey @mbq what's your System Info, R version, FSelectorRcpp version and gcc version?
Can't reproduce on
- Session info ------------------------------------------------------------------------------------------------------------------------
setting value
version R version 3.5.1 (2018-07-02)
os Windows 10 x64
system x86_64, mingw32
ui RStudio
language (EN)
collate English_United Kingdom.1252
ctype English_United Kingdom.1252
tz Europe/Berlin
date 2019-11-17
- Packages ----------------------------------------------------------------------------------------------------------------------------
package * version date lib source
assertthat 0.2.1 2019-03-21 [1] CRAN (R 3.5.3)
backports 1.1.5 2019-10-02 [1] CRAN (R 3.5.3)
callr 3.3.2 2019-09-22 [1] CRAN (R 3.5.3)
cli 1.1.0 2019-03-19 [1] CRAN (R 3.5.3)
countdown * 0.3.3 2019-11-16 [1] Github (gadenbuie/countdown@5c895d9)
crayon 1.3.4 2017-09-16 [1] CRAN (R 3.5.1)
desc 1.2.0 2018-05-01 [1] CRAN (R 3.5.1)
devtools 2.0.1 2018-10-26 [1] CRAN (R 3.5.1)
digest 0.6.20 2019-07-04 [1] CRAN (R 3.5.3)
fs 1.3.1 2019-05-06 [1] CRAN (R 3.5.3)
glue 1.3.1 2019-03-12 [1] CRAN (R 3.5.3)
htmltools 0.3.6 2017-04-28 [1] CRAN (R 3.5.1)
httpuv 1.4.5.1 2018-12-18 [1] CRAN (R 3.5.2)
jsonlite 1.6 2018-12-07 [1] CRAN (R 3.5.2)
later 0.7.5 2018-09-18 [1] CRAN (R 3.5.2)
magrittr 1.5 2014-11-22 [1] CRAN (R 3.5.3)
memoise 1.1.0 2017-04-21 [1] CRAN (R 3.5.1)
mime 0.7 2019-06-11 [1] CRAN (R 3.5.3)
packrat 0.5.0 2018-11-14 [1] CRAN (R 3.5.3)
pkgbuild 1.0.2 2018-10-16 [1] CRAN (R 3.5.1)
pkgload 1.0.2 2018-10-29 [1] CRAN (R 3.5.1)
prettyunits 1.0.2 2015-07-13 [1] CRAN (R 3.5.1)
processx 3.4.1 2019-07-18 [1] CRAN (R 3.5.3)
promises 1.0.1 2018-04-13 [1] CRAN (R 3.5.2)
ps 1.2.1 2018-11-06 [1] CRAN (R 3.5.1)
R6 2.4.0 2019-02-14 [1] CRAN (R 3.5.3)
Rcpp 1.0.2 2019-07-25 [1] CRAN (R 3.5.3)
remotes 2.0.2 2018-10-30 [1] CRAN (R 3.5.1)
rlang 0.4.0 2019-06-25 [1] CRAN (R 3.5.3)
rprojroot 1.3-2 2018-01-03 [1] CRAN (R 3.5.1)
rsconnect 0.8.15 2019-07-22 [1] CRAN (R 3.5.3)
rstudioapi 0.8 2018-10-02 [1] CRAN (R 3.5.1)
sessioninfo 1.1.1 2018-11-05 [1] CRAN (R 3.5.1)
shiny * 1.2.0 2018-11-02 [1] CRAN (R 3.5.2)
testthat 2.0.1 2018-10-13 [1] CRAN (R 3.5.1)
usethis 1.4.0 2018-08-14 [1] CRAN (R 3.5.1)
whisker 0.3-2 2013-04-28 [1] CRAN (R 3.5.1)
withr 2.1.2 2018-03-15 [1] CRAN (R 3.5.1)
xtable 1.8-3 2018-08-29 [1] CRAN (R 3.5.1)
from fselectorrcpp.
For instance
R version 3.6.1 (2019-07-05)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Arch Linux
Matrix products: default
BLAS: /usr/lib/libblas.so.3.8.0
LAPACK: /usr/lib/liblapack.so.3.8.0
locale:
[1] LC_CTYPE=pl_PL.UTF-8 LC_NUMERIC=C
[3] LC_TIME=pl_PL.UTF-8 LC_COLLATE=pl_PL.UTF-8
[5] LC_MONETARY=pl_PL.UTF-8 LC_MESSAGES=pl_PL.UTF-8
[7] LC_PAPER=pl_PL.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=pl_PL.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
loaded via a namespace (and not attached):
[1] compiler_3.6.1
with FSelRcpp v 0.3.1 (current CRAN) and gcc 9.2.0.
Regardless, IMHO it is a matter of how many physical cores you have, it crashed easily on Ryzen 1700, Epyc 7451, and two different i7-4790s, while on a two core laptop i7 6500U it seemed to work. Maybe Windows also helps.
from fselectorrcpp.
from fselectorrcpp.
Well, you seem to be using R API, which generally isn't thread-safe, from within an OMP block; I don't know much about Rcpp, but it seems a likely culprit.
from fselectorrcpp.
I can confirm this.
while(TRUE) FSelectorRcpp::information_gain(Species~.,data=iris,threads=8)
*** caught segfault ***
address (nil), cause 'memory not mapped'
Traceback:
1: information_gain_cpp(x, y, threads = threads, discIntegers = discIntegers)
2: .information_gain.data.frame(x = x, y = y, type = type, equal = equal, discIntegers = discIntegers, threads = threads)
3: .information_gain.formula(formula, data, type, equal, threads, discIntegers = discIntegers)
4: .information_gain(formula, data, type, equal, threads, discIntegers = discIntegers)
5: FSelectorRcpp::information_gain(Species ~ ., data = iris, threads = 8)
An irrecoverable exception occurred. R is aborting now ...
Segmentation fault (core dumped)
I'll try to find the issue.
from fselectorrcpp.
Probably need to use http://rcppcore.github.io/RcppParallel/
from fselectorrcpp.
Hm. It seems that I have a solution (but right now it's really ugly one).
from fselectorrcpp.
The solution is ugly and slow;) I'll think about something better.
from fselectorrcpp.
I removed the OpenMP backend for now. Better safe than sorry. I'll make a CRAN release without it, and then I'll try to make it fast again (but safe this time;))
from fselectorrcpp.
Ok. You can also take a look at my infotheo package, praznik; it is built on C API, so I managed to safely plug OpenMP just by ousting all R calls from parallel blocks.
from fselectorrcpp.
Related Issues (20)
- Segfault during covr
- 100% coverage HOT 5
- feature_search output HOT 2
- R^2 example in feature search. HOT 1
- Discretize warning HOT 1
- Enable dependent variable discretization the same as FSelector:::equal.frequency.binning.discretization HOT 14
- Enable FSelectoRcpp dealing with NAs in explanatory variables as in the RWeka::Discretize HOT 1
- cutOff_k description HOT 1
- Bug when list interface used inside function HOT 1
- Get back to CRAN HOT 4
- FSelector:::information.gain.body using FSelectorRcpp:::information_gain - become a part of the FSelector HOT 1
- Typos in the Movitation vignette HOT 2
- Add `integer2numeric` to `information_gain` and `discretize` functions. HOT 1
- Compare similarities and differences with FSelector and FSelecotrRcpp in a vignette
- Filter request: Relief HOT 24
- Installation bug: "Error in if (nzchar(SHLIB_LIBADD)) SHLIB_LIBADD else character(): argument is of length zero" HOT 5
- RWeka::Discretize works and produces correct results while FSelectorRcpp::discretize issues many "Cannot find any split points for `Col_XXX`. Drops this column." warnings and incorrect results HOT 1
- solved
- Information gain equation in the documentation. HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fselectorrcpp.