9

I know that the command LaunchKernels[] starts up four kernels on my machine:

LaunchKernels[]
{KernelObject[1, "local"], KernelObject[2, "local"], 
 KernelObject[3, "local"], KernelObject[4, "local"]}

I also figured out that the command SetOptions[EvaluationNotebook[], Evaluator -> "xyz"]; should then set the given Notebook to be evaluated on some kernel "xyz", but I cannot find the right syntax for this "xyz" to refer to for instance KernelObject[1, "local"]. What should I write there?

EDIT

This is the relevant command: FrontEndExecute[FrontEndToken["ModifyEvaluatorNames"]]. Create a couple Kernel names and evaluate in parallel.

Szabolcs
  • 234,956
  • 30
  • 623
  • 1,263
Kagaratsch
  • 11,955
  • 4
  • 25
  • 72

1 Answers1

12

LaunchKernels launches subkernels used for parallel calculations. These are not meant to and cannot be set to as the evaluator for a notebook.

To set the evaluator for a notebook, use Evaluation -> Kernel Configuration Options to set up a new kernel, then use Evaluation -> Notebook's Kernel to assign it to the current notebook.

Szabolcs
  • 234,956
  • 30
  • 623
  • 1,263
  • 4
    Can I automatically have Mathematica start a Kernel for each Notebook? I don't like the "everything is shared" approach of Mathematica, so I would love to have a distinct Kernel + Context for each Notebook by default. – Thomas Fankhauser Sep 01 '15 at 09:58
  • @ThomasFankhauser I wouldn't bother. Usually licenses allow running only a limited number of kernels, which would set a limit on this. Within that limit, it would be possible to hack something together, but I'm not sure it's worth it as I don't find this type of workflow useful. If you ask a question someone might get interested and write an answer about how to hack it together. Do take a look at using notebook-specific contexts, which create the illusion of localization within notebooks, but use the same kernel. – Szabolcs Sep 01 '15 at 10:35
  • 3
    Okay thanks for your response. Coming from programming, it's just very unusual to clutter everything together, where you need to wait for evaluations in different notebooks. I think, for sharing the package system should be used and not more. But thanks, you helped me! – Thomas Fankhauser Sep 01 '15 at 11:07