Parallelization
This feature is not supported on the Wolfram Cloud.

Parallelization
is an option for Compile that specifies whether it should create a compiled function that could run in parallel.

DetailsDetails

  • Parallelization applies to the execution of the compiled function.
  • Compiled functions only run in parallel if Listable is one of the RuntimeAttributes and the function threads over list arguments.
  • Compiled functions run in parallel using multiple threads of execution.
  • Typically, $ProcessorCount is used to determine how many threads are used.
  • If a compiled function running in parallel has several threads trying to call ordinary Wolfram Language code, only one thread can do this at any time.
  • The following settings can be used:
  • Truecreate parallel code
    Falsecreate single-thread code
    Automaticuse parallelization for optimal arguments

ExamplesExamplesopen allclose all

Basic Examples  (1)Basic Examples  (1)

Listable compiled functions can execute in parallel:

In[1]:=
Click for copyable input
Out[1]=

This shows the operation running sequentially:

In[2]:=
Click for copyable input
Out[2]=

Typically, $ProcessorCount is used to determine how many threads can be used:

In[3]:=
Click for copyable input
Out[3]=
Introduced in 2010
(8.0)