Skip to content

Add guide for R#38

Open
david-cortes-intel wants to merge 6 commits into
intel:mainfrom
david-cortes-intel:rlang
Open

Add guide for R#38
david-cortes-intel wants to merge 6 commits into
intel:mainfrom
david-cortes-intel:rlang

Conversation

@david-cortes-intel

Copy link
Copy Markdown
Contributor

Adds a guide for optimizing R workflows.

@rsiyer-intel rsiyer-intel requested review from adgubrud and Copilot and removed request for Copilot June 26, 2026 00:04

@adgubrud adgubrud left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Comment thread software/R/README.md

If requests mostly involve compute-heavy operations (e.g. matrix multiplications, as opposed to fetching data from online databases), it is recommended to limit the number of parallel requests to number of threads or to number of physical cores in the machine, as otherwise requests will compete for resources and this will cause slowdowns and decreased throughput. Likewise, If using [Kubernetes](https://kubernetes.io) (also known as 'k8s'), avoid allocating less than a full CPU core to a compute-heavy pod, and avoid fractional core allocations.

## Data frame operations

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For this section, is it possible to provide a summary/compact recommendation table/decision table (example - data size, operation type, memory constraints) that will help answer "which one should I pick?"

Comment thread software/R/README.md
conda install -c conda-forge libblas=*=*mkl* liblapack=*=*mkl*
```

**It's highly recommended to install these from the conda-forge channel**, where uploads are performed directly by Intel and the most recent versions are always available, compared to the Anaconda channel. The miniforge distribution by default installs packages exclusively from the conda-forge channel, and as such might be a more desirable choice than others.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will it help to provide links to conda-forge channel here?

Comment thread software/R/README.md

Those sparse objects will be accepted as input by many modeling-related packages, such as `glmnet`, `xgboost`, `ranger`, `rsparse` and others, which have routines to operate efficiently on them.

As a general rule, sparse representations only start being advantageous when the number of non-zeros in the data is less than 10%, but the exact threshold at which switching is optimal can vary a lot by use-case. If the amount of non-zeros is less than 1% however, it is very unlikely that a regular dense data representation would be more efficient when a sparse format is supported.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please fix following typos -

modifyin → modifying — line 3
environmnet → environment — line 86
sytem (in “sytem level”) → system — line 118
onMKL → oneMKL — line 122
apriori → a priori — line 159
PlumbeR → plumber — line 268
constitude → constitute — line 270

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants