What to do when you really ARE out of memory?

What is the solution for optimizing code when you really are just working with too large of a dataset?
Currently I need to perform triscatteredinterp using 3 vectors all (100,000,000 x 1).
scatteredInterpolant does not work any better in this instance.

Answers (3)

the cyclist
the cyclist on 4 Aug 2015
Edited: the cyclist on 4 Aug 2015
For very large datasets, processing a random sample of the data will often give satisfactory results.
Store the data in hierarchies such as octrees that allow you to extract a subset that fits within working memory to do the fine-grained work on.
The solution I used in the end was to break up each of my vectors into manageable chunks and execute TriScatteredInterp on each of them.
The interpolant is valid on the new grid but only gives solutions inside of the block from which it came. I then simply stitched these back together.
Thank you both for your input!

This question is closed.

Asked:

on 4 Aug 2015

Closed:

on 20 Aug 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!