You can set OMP_NUM_THREADS to how many threads you want.
We discuss this very briefly in the section on performance examples. It seems we assume you are familiar with OpenMP. The various compilers will document this better than we have, along with the environment variables they honor (which of course will depend on which compiler you are using). These can be used also to control affinity, which you may find useful if you are trying to limit the Octave application to part of the machine.
The documentation for FAST_MALLOC and memory usage is not directly related to what you are asking about.
I suspected that a magic environment variable would be the answer! I set this environment variable:
Then ran octave on a big problem. It worked perfectly, I see octave using 8 cores instead of 16. Thank you so much.