README.md

RcppXsimd

CRAN_Status_Badge

Overview

This library provides an Rcpp wrapper around Xsimd that is a modern, portable C++14 header-only library for SIMD intrinsics and parallelized, optimized math implementations.

Example

library(RcppXsimd)
?supportsAVX

if (supportsAVX()) {
  Sys.setenv(PKG_CPPFLAGS = "-mavx")
  Rcpp::sourceCpp(verbose = TRUE, code='
    // [[Rcpp::plugins(cpp14)]]
    // [[Rcpp::depends(RcppXsimd)]]

    #include <Rcpp.h>
    #include "xsimd/xsimd.hpp"

    // [[Rcpp::export]]
    void demoAVX() {
      xsimd::batch<double, 4> a(1.0);
      xsimd::batch<double, 4> b(1.0);
      Rcpp::Rcout << a << " + " << b << " = " << (a + b) << std::endl;
    }')
  demoAVX()
} else {
  message("AVX is not supported")
}

Development status

Build Status

Build status

Acknowledgements



Try the RcppXsimd package in your browser

Any scripts or data that you put into this service are public.

RcppXsimd documentation built on Jan. 22, 2021, 1:06 a.m.