an atomic vector (note that currently only integer64 is supported)
nunique
giving correct number of unique elements can help reducing the size of the hashmap
has.na
boolean scalar defining whether the input vector might contain NAs. If we know we don't have NAs, this may speed-up.
Note that you risk a crash if there are unexpected NAs with has.na=FALSE
stable
boolean scalar defining whether stable sorting is needed. Allowing non-stable may speed-up.
optimize
by default ramsort optimizes for 'time' which requires more RAM,
set to 'memory' to minimize RAM requirements and sacrifice speed
x with a cache that contains the result of the expensive operations, possible together with small derived information (such as nunique.integer64) and previously cached results.
Details
The result of relative expensive operations hashmap, ramsort, ramsortorder and ramorder can be stored in a cache in order to avoid multiple excutions. Unless in very specific situations, the recommended method is hashsortorder only.
See Also
cache for caching functions and nunique for methods bennefitting from small caches