Skip to content

Commit 3a55ef0

Browse files
committed
forder benchmark
1 parent 4421958 commit 3a55ef0

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

inst/benchmarks/forder.Rraw

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
library(data.table)
2+
benchmark = data.table:::benchmark
3+
options(datatable.env = data.table:::benchmarkEnv(commandArgs()))
4+
set.seed(108)
5+
6+
forderv = data.table:::forderv
7+
8+
N = 1e9L
9+
# integer
10+
DT = data.table(x=sample.int(N))
11+
benchmark(1.01, forderv(DT, "x"), desc=paste("forder", typeof(DT$x), nrow(DT), "unq"))
12+
benchmark(1.02, forderv(DT, "x", retGrp=TRUE), desc=paste("forder", typeof(DT$x), nrow(DT), "unq"))
13+
DT = data.table(x=sample.int(2L, N, TRUE))
14+
benchmark(1.11, forderv(DT, "x"), desc=paste("forder", typeof(DT$x), nrow(DT), "grpn2"))
15+
benchmark(1.12, forderv(DT, "x", retGrp=TRUE), desc=paste("forder", typeof(DT$x), nrow(DT), "grpn2"))
16+
17+
# double
18+
DT = data.table(x=rnorm(N))
19+
benchmark(2.01, forderv(DT, "x"), desc=paste("forder", typeof(DT$x), nrow(DT), "unq"))
20+
benchmark(2.02, forderv(DT, "x", retGrp=TRUE), desc=paste("forder", typeof(DT$x), nrow(DT), "unq"))
21+
DT = data.table(x=sample(rnorm(2L), N, TRUE))
22+
benchmark(2.11, forderv(DT, "x"), desc=paste("forder", typeof(DT$x), nrow(DT), "grpn2"))
23+
benchmark(2.12, forderv(DT, "x", retGrp=TRUE), desc=paste("forder", typeof(DT$x), nrow(DT), "grpn2"))
24+
25+
# character
26+
DT = data.table(x=paste0("id", sample.int(N)))
27+
benchmark(3.01, forderv(DT, "x"), desc=paste("forder", typeof(DT$x), nrow(DT), "unq"))
28+
benchmark(3.02, forderv(DT, "x", retGrp=TRUE), desc=paste("forder", typeof(DT$x), nrow(DT), "unq"))
29+
DT = data.table(x=sample(paste0("id", sample.int(2L)), N, TRUE))
30+
benchmark(3.11, forderv(DT, "x"), desc=paste("forder", typeof(DT$x), nrow(DT), "grpn2"))
31+
benchmark(3.12, forderv(DT, "x", retGrp=TRUE), desc=paste("forder", typeof(DT$x), nrow(DT), "grpn2"))

0 commit comments

Comments
 (0)