Products
  • Wolfram|One

    The definitive Wolfram Language and notebook experience

  • Mathematica

    The original technical computing environment

  • Notebook Assistant + LLM Kit

    All-in-one AI assistance for your Wolfram experience

  • Compute Services
  • System Modeler
  • Finance Platform
  • Wolfram|Alpha Notebook Edition
  • Application Server
  • Enterprise Private Cloud
  • Wolfram Engine
  • Wolfram Player
  • Wolfram Cloud App
  • Wolfram Player App

More mobile apps

Core Technologies of Wolfram Products

  • Wolfram Language
  • Computable Data
  • Wolfram Notebooks
  • AI & Linguistic Understanding

Deployment Options

  • Wolfram Cloud
  • wolframscript
  • Wolfram Engine Community Edition
  • Wolfram LLM API
  • WSTPServer
  • Wolfram|Alpha APIs

From the Community

  • Function Repository
  • Community Paclet Repository
  • Example Repository
  • Neural Net Repository
  • Prompt Repository
  • Wolfram Demonstrations
  • Data Repository
  • Group & Organizational Licensing
  • All Products
Consulting & Solutions

We deliver solutions for the AI era—combining symbolic computation, data-driven insights and deep technical expertise

  • Data & Computational Intelligence
  • Model-Based Design
  • Algorithm Development
  • Wolfram|Alpha for Business
  • Blockchain Technology
  • Education Technology
  • Quantum Computation

Wolfram Consulting

Wolfram Solutions

  • Data Science
  • Artificial Intelligence
  • Biosciences
  • Healthcare Intelligence
  • Sustainable Energy
  • Control Systems
  • Enterprise Wolfram|Alpha
  • Blockchain Labs

More Wolfram Solutions

Wolfram Solutions For Education

  • Research Universities
  • Colleges & Teaching Universities
  • Junior & Community Colleges
  • High Schools
  • Educational Technology
  • Computer-Based Math

More Solutions for Education

  • Contact Us
Learning & Support

Get Started

  • Wolfram Language Introduction
  • Fast Intro for Programmers
  • Fast Intro for Math Students
  • Wolfram Language Documentation

More Learning

  • Highlighted Core Areas
  • Demonstrations
  • YouTube
  • Daily Study Groups
  • Wolfram Schools and Programs
  • Books

Grow Your Skills

  • Wolfram U

    Courses in computing, science, life and more

  • Community

    Learn, solve problems and share ideas.

  • Blog

    News, views and insights from Wolfram

  • Resources for

    Software Developers

Tech Support

  • Contact Us
  • Support FAQs
  • Support FAQs
  • Contact Us
Company
  • About Wolfram
  • Career Center
  • All Sites & Resources
  • Connect & Follow
  • Contact Us

Work with Us

  • Student Ambassador Initiative
  • Wolfram for Startups
  • Student Opportunities
  • Jobs Using Wolfram Language

Educational Programs for Adults

  • Summer School
  • Winter School

Educational Programs for Youth

  • Middle School Camp
  • High School Research Program
  • Computational Adventures

Read

  • Stephen Wolfram's Writings
  • Wolfram Blog
  • Wolfram Tech | Books
  • Wolfram Media
  • Complex Systems

Educational Resources

  • Wolfram MathWorld
  • Wolfram in STEM/STEAM
  • Wolfram Challenges
  • Wolfram Problem Generator

Wolfram Initiatives

  • Wolfram Science
  • Wolfram Foundation
  • History of Mathematics Project

Events

  • Stephen Wolfram Livestreams
  • Online & In-Person Events
  • Contact Us
  • Connect & Follow
Wolfram|Alpha
  • Your Account
  • User Portal
  • Wolfram Cloud
  • Products
    • Wolfram|One
    • Mathematica
    • Notebook Assistant + LLM Kit
    • Compute Services
    • System Modeler
    • Finance Platform
    • Wolfram|Alpha Notebook Edition
    • Application Server
    • Enterprise Private Cloud
    • Wolfram Engine
    • Wolfram Player
    • Wolfram Cloud App
    • Wolfram Player App

    More mobile apps

    • Core Technologies
      • Wolfram Language
      • Computable Data
      • Wolfram Notebooks
      • AI & Linguistic Understanding
    • Deployment Options
      • Wolfram Cloud
      • wolframscript
      • Wolfram Engine Community Edition
      • Wolfram LLM API
      • WSTPServer
      • Wolfram|Alpha APIs
    • From the Community
      • Function Repository
      • Community Paclet Repository
      • Example Repository
      • Neural Net Repository
      • Prompt Repository
      • Wolfram Demonstrations
      • Data Repository
    • Group & Organizational Licensing
    • All Products
  • Consulting & Solutions

    We deliver solutions for the AI era—combining symbolic computation, data-driven insights and deep technical expertise

    WolframConsulting.com

    Wolfram Solutions

    • Data Science
    • Artificial Intelligence
    • Biosciences
    • Healthcare Intelligence
    • Sustainable Energy
    • Control Systems
    • Enterprise Wolfram|Alpha
    • Blockchain Labs

    More Wolfram Solutions

    Wolfram Solutions For Education

    • Research Universities
    • Colleges & Teaching Universities
    • Junior & Community Colleges
    • High Schools
    • Educational Technology
    • Computer-Based Math

    More Solutions for Education

    • Contact Us
  • Learning & Support

    Get Started

    • Wolfram Language Introduction
    • Fast Intro for Programmers
    • Fast Intro for Math Students
    • Wolfram Language Documentation

    Grow Your Skills

    • Wolfram U

      Courses in computing, science, life and more

    • Community

      Learn, solve problems and share ideas.

    • Blog

      News, views and insights from Wolfram

    • Resources for

      Software Developers
    • Tech Support
      • Contact Us
      • Support FAQs
    • More Learning
      • Highlighted Core Areas
      • Demonstrations
      • YouTube
      • Daily Study Groups
      • Wolfram Schools and Programs
      • Books
    • Support FAQs
    • Contact Us
  • Company
    • About Wolfram
    • Career Center
    • All Sites & Resources
    • Connect & Follow
    • Contact Us

    Work with Us

    • Student Ambassador Initiative
    • Wolfram for Startups
    • Student Opportunities
    • Jobs Using Wolfram Language

    Educational Programs for Adults

    • Summer School
    • Winter School

    Educational Programs for Youth

    • Middle School Camp
    • High School Research Program
    • Computational Adventures

    Read

    • Stephen Wolfram's Writings
    • Wolfram Blog
    • Wolfram Tech | Books
    • Wolfram Media
    • Complex Systems
    • Educational Resources
      • Wolfram MathWorld
      • Wolfram in STEM/STEAM
      • Wolfram Challenges
      • Wolfram Problem Generator
    • Wolfram Initiatives
      • Wolfram Science
      • Wolfram Foundation
      • History of Mathematics Project
    • Events
      • Stephen Wolfram Livestreams
      • Online & In-Person Events
    • Contact Us
    • Connect & Follow
  • Wolfram|Alpha
  • Wolfram Cloud
  • Your Account
  • User Portal
Wolfram Language & System Documentation Center
ParallelEvaluate
  • See Also
    • Parallelize
    • ParallelTry
    • DistributeDefinitions
    • ParallelNeeds
    • ParallelKernels
    • $KernelCount
    • RemoteEvaluate
    • CloudEvaluate
    • LocalSubmit
  • Related Guides
    • Parallel Computation Setup & Configuration
    • Parallel Computing
    • Remote Computation
    • Managing Remote and Parallel Kernels
    • Resource Sharing in Parallel Computing
    • Raspberry Pi
    • Background & Scheduled Tasks
  • Workflows
    • Run a Computation in Parallel
    • See Also
      • Parallelize
      • ParallelTry
      • DistributeDefinitions
      • ParallelNeeds
      • ParallelKernels
      • $KernelCount
      • RemoteEvaluate
      • CloudEvaluate
      • LocalSubmit
    • Related Guides
      • Parallel Computation Setup & Configuration
      • Parallel Computing
      • Remote Computation
      • Managing Remote and Parallel Kernels
      • Resource Sharing in Parallel Computing
      • Raspberry Pi
      • Background & Scheduled Tasks
    • Workflows
      • Run a Computation in Parallel

ParallelEvaluate[expr]

evaluates the expression expr on all available parallel kernels and returns the list of results obtained.

ParallelEvaluate[expr,kernel]

evaluates expr on the parallel kernel specified.

ParallelEvaluate[expr,{ker1,ker2,…}]

evaluates expr on the parallel kernels keri.

ParallelEvaluate[expr,kernels,h]

wraps the head h around the results before returning them.

Details and Options
Details and Options Details and Options
Examples  
Basic Examples  
Scope  
Generalizations & Extensions  
Options  
DistributedContexts  
Applications  
Properties & Relations  
Possible Issues  
Neat Examples  
See Also
Related Guides
Related Workflows
History
Cite this Page
BUILT-IN SYMBOL
  • See Also
    • Parallelize
    • ParallelTry
    • DistributeDefinitions
    • ParallelNeeds
    • ParallelKernels
    • $KernelCount
    • RemoteEvaluate
    • CloudEvaluate
    • LocalSubmit
  • Related Guides
    • Parallel Computation Setup & Configuration
    • Parallel Computing
    • Remote Computation
    • Managing Remote and Parallel Kernels
    • Resource Sharing in Parallel Computing
    • Raspberry Pi
    • Background & Scheduled Tasks
  • Workflows
    • Run a Computation in Parallel
    • See Also
      • Parallelize
      • ParallelTry
      • DistributeDefinitions
      • ParallelNeeds
      • ParallelKernels
      • $KernelCount
      • RemoteEvaluate
      • CloudEvaluate
      • LocalSubmit
    • Related Guides
      • Parallel Computation Setup & Configuration
      • Parallel Computing
      • Remote Computation
      • Managing Remote and Parallel Kernels
      • Resource Sharing in Parallel Computing
      • Raspberry Pi
      • Background & Scheduled Tasks
    • Workflows
      • Run a Computation in Parallel

ParallelEvaluate

ParallelEvaluate[expr]

evaluates the expression expr on all available parallel kernels and returns the list of results obtained.

ParallelEvaluate[expr,kernel]

evaluates expr on the parallel kernel specified.

ParallelEvaluate[expr,{ker1,ker2,…}]

evaluates expr on the parallel kernels keri.

ParallelEvaluate[expr,kernels,h]

wraps the head h around the results before returning them.

Details and Options

  • ParallelEvaluate has attribute HoldFirst.
  • Kernels can be specified either using KernelObject, as returned by Kernels[], or using their integer IDs, as returned by $KernelID. All can also be used.
  • The following properties can also be used to select a subset of all running kernels:
  • Allall kernels
    "CloudKernels"all cloud kernels
    "LinkKernels"all link kernels
    "LocalKernels"all kernels running locally
    "LWGKernels"all LightweightGrid kernels
    "OneKernelPerMachine"one kernel for each different machine
    "RemoteKernels"all kernels on remote machines
    "SshKernels"all SSH kernels
    "WSTPServerKernels"all WSTPServer kernels
  • The DistributedContexts option for ParallelEvaluate specifies which symbols appearing in expr have their definitions automatically distributed to all available kernels before the computation.
  • The default value is DistributedContexts:>$DistributedContexts with $DistributedContexts:=$Context, which distributes definitions of all symbols in the current context, but does not distribute definitions of symbols from packages.

Examples

open all close all

Basic Examples  (1)

Obtain each parallel kernel's unique ID number:

Obtain each parallel kernel's system process ID:

Scope  (9)

Use ParallelEvaluate to perform initializations on all parallel kernels:

Make definitions of local functions on all parallel kernels:

Obtain local properties of all parallel kernels:

Obtain a local property from a single kernel:

Access data from sources local to the parallel kernels:

Save results computed on the parallel kernels locally in unique files:

Verify that the files have been written:

Prevent local reevaluation of results returned from subkernels:

Run an evaluation on only one kernel per machine:

Run an evaluation only on all local kernels:

Run an evaluation only on all LightweightGrid kernels:

Generalizations & Extensions  (2)

Specify the kernels to query by a kernel object or a kernel ID:

Query several kernels:

All can be used to specify all available kernels:

All is equivalent to Kernels[]:

Options  (5)

DistributedContexts  (5)

By default, definitions in the current context are distributed automatically:

Do not distribute any definitions of functions:

Distribute definitions for all symbols in all contexts appearing in a parallel computation:

Distribute only definitions in the given contexts:

Restore the value of the DistributedContexts option to its default:

Applications  (4)

Tabulate properties of all parallel kernels:

Parallelize a Monte Carlo simulation by running the same code on all parallel kernels:

Combine the individual averages for a more accurate overall result:

Store large intermediate results locally on each parallel kernel:

Work with data stored locally:

Check whether all of these polynomials are irreducible:

Shared variables used for synchronization:

Run one search loop on each kernel until the computation is aborted:

Properties & Relations  (5)

ParallelEvaluate performs the same evaluation on each subkernel:

Parallelize distributes parts of an evaluation to each subkernel:

Deterministic calculations give the same result on each parallel kernel:

Calculations involving randomness give independent results on each parallel kernel:

Force the same result by setting SeedRandom:

Each parallel kernel has a distinct ID, which can be used to make expressions unique:

DistributeDefinitions uses ParallelEvaluate to transport definitions to all kernels:

An explicit ParallelEvaluate does the same:

Distributed definitions are remembered for new kernels:

The effects of ParallelEvaluate are not remembered:

ParallelNeeds uses ParallelEvaluate to run Needs on all parallel kernels:

Additionally all uses are remembered, so that new kernels also load needed packages:

ParallelEvaluate automatically distributes definitions of functions used:

Possible Issues  (2)

Side effects cannot be used between different parallel kernels:

Use a shared variable to support side effects:

Suppress the automatic distribution of definitions when making definitions with ParallelEvaluate:

Neat Examples  (2)

Find such that is prime, until the computation is manually aborted:

Given multiple running kernels on many different machines:

Load a resource function into the cache on each machine only once:

Use the resource function in all kernels:

See Also

Parallelize  ParallelTry  DistributeDefinitions  ParallelNeeds  ParallelKernels  $KernelCount  RemoteEvaluate  CloudEvaluate  LocalSubmit

Related Guides

    ▪
  • Parallel Computation Setup & Configuration
  • ▪
  • Parallel Computing
  • ▪
  • Remote Computation
  • ▪
  • Managing Remote and Parallel Kernels
  • ▪
  • Resource Sharing in Parallel Computing
  • ▪
  • Raspberry Pi
  • ▪
  • Background & Scheduled Tasks

Related Workflows

    Related Workflows
    ▪
  • Run a Computation in Parallel

History

Introduced in 2008 (7.0) | Updated in 2014 (10.0) ▪ 2020 (12.1)

Wolfram Research (2008), ParallelEvaluate, Wolfram Language function, https://reference.wolfram.com/language/ref/ParallelEvaluate.html (updated 2020).

Text

Wolfram Research (2008), ParallelEvaluate, Wolfram Language function, https://reference.wolfram.com/language/ref/ParallelEvaluate.html (updated 2020).

CMS

Wolfram Language. 2008. "ParallelEvaluate." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2020. https://reference.wolfram.com/language/ref/ParallelEvaluate.html.

APA

Wolfram Language. (2008). ParallelEvaluate. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ParallelEvaluate.html

BibTeX

@misc{reference.wolfram_2025_parallelevaluate, author="Wolfram Research", title="{ParallelEvaluate}", year="2020", howpublished="\url{https://reference.wolfram.com/language/ref/ParallelEvaluate.html}", note=[Accessed: 01-May-2026]}

BibLaTeX

@online{reference.wolfram_2025_parallelevaluate, organization={Wolfram Research}, title={ParallelEvaluate}, year={2020}, url={https://reference.wolfram.com/language/ref/ParallelEvaluate.html}, note=[Accessed: 01-May-2026]}

Top
Introduction for Programmers
Introductory Book
Wolfram Function Repository | Wolfram Data Repository | Wolfram Data Drop | Wolfram Language Products
Top
  • Products
  • Wolfram|One
  • Mathematica
  • Notebook Assistant + LLM Kit
  • Compute Services
  • System Modeler

  • Wolfram|Alpha Notebook Edition
  • Wolfram|Alpha Pro
  • Mobile Apps

  • Wolfram Engine
  • Wolfram Player

  • Volume & Site Licensing
  • Server Deployment Options
  • Consulting
  • Wolfram Consulting
  • Repositories
  • Data Repository
  • Function Repository
  • Community Paclet Repository
  • Neural Net Repository
  • Prompt Repository

  • Wolfram Language Example Repository
  • Notebook Archive
  • Wolfram GitHub
  • Learning
  • Wolfram U
  • Wolfram Language Documentation
  • Webinars & Training
  • Educational Programs

  • Wolfram Language Introduction
  • Fast Introduction for Programmers
  • Fast Introduction for Math Students
  • Books

  • Wolfram Community
  • Wolfram Blog
  • Public Resources
  • Wolfram|Alpha
  • Wolfram Problem Generator
  • Wolfram Challenges

  • Computer-Based Math
  • Computational Thinking
  • Computational Adventures

  • Demonstrations Project
  • Wolfram Data Drop
  • MathWorld
  • Wolfram Science
  • Wolfram Media Publishing
  • Customer Resources
  • Store
  • Product Downloads
  • User Portal
  • Your Account
  • Organization Access

  • Support FAQ
  • Contact Support
  • Company
  • About Wolfram
  • Careers
  • Contact
  • Events
Wolfram Community Wolfram Blog
Legal & Privacy Policy
WolframAlpha.com | WolframCloud.com
© 2026 Wolfram
© 2026 Wolfram | Legal & Privacy Policy |
English