I'm following the instructions for integration: https://satijalab.org/seurat/articles/integration_introduction.html

And it's taking a while to run:

immune.anchors <- FindIntegrationAnchors(object.list = ifnb.list, normalization.method = "SCT",
    anchor.features = features)

I'm integrating 6 datasets.

Is this function designed well for large amount of data?


1 Answer 1


Are you using the same data from the integration tutorial or using your own data? How many cells/genes are in your dataset?

Seurat's default integration method (CCA) is known to be runtime/memory intensive. It can handle large datasets but may require lots of CPU cores/memory. I have found that the amount of RAM also seems to increase as more CPU cores are used. That said, I have been able to run the integration tutorial with the included dataset on an 8GB laptop.

The easiest solution is to simply use more resources when integrating: increase the amount of RAM and consider using multiple cores (there is a separate Seurat tutorial on parallelization). If you are encountering runtime/memory issues and you cannot scale up your resources, I would suggest looking at alternative integration methods:

  1. Seurat includes another integration approach, RPCA which is supposed to be less memory intensive at the cost of being more conservative with integration
  2. There are several other integration methods that provide similar results. I have used Harmony and found that it requires significantly less resources than the Seurat integration approaches (both CCA and RPCA). A quick google search of single cell RNA-seq integration methods will turn up other popular methods with benchmarks to compare and contrasts different approaches.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.