Wolfram Language & System 11.0 (2016)|Legacy Documentation

This is documentation for an earlier version of the Wolfram Language.View current documentation (Version 11.2)

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)