Skip to content

Commit ad4f74d

Browse files
committed
Wrote function-specific parallelization details and OpenMP use for between(), CJ(), and fcoalesce()
1 parent b4ae3ef commit ad4f74d

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

man/openmp-utils.Rd

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,31 @@
3838
3939
\itemize{
4040
\item\file{between.c} - \code{\link{between}()}
41+
42+
Parallelism is used here to speed up range checks that are performed over the elements of the supplied vector. OpenMP is used here to parallelize:
43+
\itemize{
44+
\item The loops that check if each element of the vector provided is between the specified \code{lower} and \code{upper} bounds, for integer (\code{INTSXP}) and real (\code{REALSXP}) types
45+
\item Checking and handling of undefined values (such as NaNs)
46+
}
47+
4148
\item\file{cj.c} - \code{\link{CJ}()}
49+
50+
Parallelism is used here to speed up the creation of all combinations of the input vectors over the cross-product space. Better speedup can be expected when dealing with large vectors or a multitude of combinations. OpenMP is used here to parallelize:
51+
52+
\itemize{
53+
\item Element assignment in vectors
54+
\item Memory copying operations (blockwise replication of data using \code{memcpy})
55+
}
56+
4257
\item\file{coalesce.c} - \code{\link{fcoalesce}()}
58+
59+
Parallelism is used here to reduce the time taken to replace NA values with the first non-NA value from other vectors. Operates over the columns provided. OpenMP is used here to parallelize:
60+
\itemize{
61+
\item The operation that iterates over the rows to coalesce the data (which can be of type integer, real, or complex)
62+
\item The replacement of NAs with non-NA values from subsequent vectors
63+
\item The conditional checks within parallelized loops
64+
}
65+
4366
\item\file{fifelse.c} - \code{\link{fifelse}()}
4467
\item\file{fread.c} - \code{\link{fread}()}
4568
\item\file{forder.c}, \file{fsort.c}, and \file{reorder.c} - \code{\link{forder}()} and related

0 commit comments

Comments
 (0)