Fast parallel sort
fsort.RdSimilar to base::sort but fast using parallelism. Experimental.
Arguments
- x
A vector. Type double, currently.
- decreasing
Decreasing order?
- na.last
Control treatment of
NAs. IfTRUE, missing values in the data are put last; ifFALSE, they are put first; ifNA, they are removed; if"keep"they are kept with rankNA.- internal
Internal use only. Temporary variable. Will be removed.
- verbose
Print tracing information.
- ...
Not sure yet. Should be consistent with base R.
Details
Process will raise error if x contains negative values.
Unless x is already sorted fsort will redirect processing to slower single threaded order followed by subset in following cases:
data type other than double (numeric)
data having
NAsdecreasing==FALSE
Examples
x = runif(1e6)
system.time(ans1 <- sort(x, method="quick"))
#> user system elapsed
#> 0.107 0.003 0.109
system.time(ans2 <- fsort(x))
#> user system elapsed
#> 0.032 0.004 0.019
identical(ans1, ans2)
#> [1] TRUE