[R-sig-Geo] slow computation progress for calc function
Sara Shaeri
@@r@@h@er| @end|ng |rom y@hoo@com
Tue Jun 25 09:55:59 CEST 2019
Dear Ákos,
I tried it on a small partition of my data. However, the processing time is the same :(. Any other suggestion?
-------------------------
Sara Shaeri KarimiPhD Candidate, Department of Environmental SciencesFaculty of Science and EngineeringMacquarie University, NSW 2109 Australia
Researchgate
Linkedin
On Tuesday, June 25, 2019, 4:33:34 PM GMT+10, Bede-Fazekas Ákos <bfalevlist using gmail.com> wrote:
Dear Sara,
it is faster if you first convert the integer vector to logical, and
then run rle().
set.seed(12345)
random_sample <- sample.int(n = 10, size = 1e5, replace = TRUE) - 1
original <- function(x){
y <- rle(x)
return(max(y$lengths[y$values == 0]))
}
faster <- function(x){
y <- rle(x == 0)
return(max(y$lengths[y$values]))
}
original(random_sample) == faster(random_sample)
library(microbenchmark)
microbenchmark(
original(random_sample),
faster(random_sample)
)
Hence, this may be faster:
interflood <- clusterR(all_predictions, calc, args=list(function(x){y <-
rle(as.numeric(x) == 0; return(max(y$lengths[y$values]))}))
HTH,
Ákos Bede-Fazekas
Hungarian Academy of Sciences
2019.06.25. 3:32 keltezéssel, Sara Shaeri via R-sig-Geo írta:
> Dear community,
> I’m trying to use the Calc function in a raster stack (8000 binary format rasters). Each raster covers 2,421,090 cells, as such, I’m using parallel coding to make the most of the available cores for this computation, however, this process is extremely slow on a 36 core and 76 Gb RAM. How could I speed up the calculations? This is the code I’m using:
>
> beginCluster(30)
>
> interflood <- clusterR(all_predictions, calc, args=list(function(x){y <- rle(as.numeric(x));return(max( y$lengths[y$values == 0]))}))
>
> endCluster()
>
>
> RegardsSara
>
>
> -------------------------
> Sara Shaeri KarimiPhD Candidate, Department of Environmental SciencesFaculty of Science and EngineeringMacquarie University, NSW 2109 Australia
> Researchgate
> Linkedin
>
>
>
>
>
>
> [[alternative HTML version deleted]]
>
> _______________________________________________
> R-sig-Geo mailing list
> R-sig-Geo using r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-sig-geo
>
_______________________________________________
R-sig-Geo mailing list
R-sig-Geo using r-project.org
https://stat.ethz.ch/mailman/listinfo/r-sig-geo
[[alternative HTML version deleted]]
More information about the R-sig-Geo
mailing list