Developer at MathWorks, working on Parallel Computing Toolbox. Professional Interests: parallel computing, distributed arrays, gpu

Answered

Using parallel workers to edit same Simulink model?

In short: no - you cannot make simultaneous changes to a single Simulink model file from multiple processes (i.e. the multiple M...

Using parallel workers to edit same Simulink model?

In short: no - you cannot make simultaneous changes to a single Simulink model file from multiple processes (i.e. the multiple M...

10일 ago | 1

| accepted

Answered

parfor energyplus co-simulation toolbox

I think the problem here is that the toolbox is not designed to be run multiple times simultaneously on a single machine. I took...

parfor energyplus co-simulation toolbox

I think the problem here is that the toolbox is not designed to be run multiple times simultaneously on a single machine. I took...

10일 ago | 0

| accepted

Answered

How can one create an object in MATLAB that behaves like an array?

To make an object in MATLAB that is a single object that behaves like an array, you need to overload a bunch of methods to do wi...

How can one create an object in MATLAB that behaves like an array?

To make an object in MATLAB that is a single object that behaves like an array, you need to overload a bunch of methods to do wi...

18일 ago | 1

| accepted

Answered

How to call a user-defined function within a parfor loop

You should call addAttachedFiles outside the parfor loop.

How to call a user-defined function within a parfor loop

You should call addAttachedFiles outside the parfor loop.

18일 ago | 0

Answered

Is there a technical limitation/design choice preventing dynamic allocation of parfor workload?

The parfor implementation already attempts to take account of this sort of situation - behind the scenes, the loop is split up i...

Is there a technical limitation/design choice preventing dynamic allocation of parfor workload?

The parfor implementation already attempts to take account of this sort of situation - behind the scenes, the loop is split up i...

약 1달 ago | 1

Answered

Speed up big matrix multiplication (Parallel Processing/GPU)

You should take advantage of: Implicit dimension expansion, and The new multi-dimension arguments to sum and then perform the...

Speed up big matrix multiplication (Parallel Processing/GPU)

You should take advantage of: Implicit dimension expansion, and The new multi-dimension arguments to sum and then perform the...

약 1달 ago | 1

Answered

how do I slice a variable? parfor loop

The problem here is that the parfor machinery cannot tell that you are completely overwriting quantity and Quantity_av in your i...

how do I slice a variable? parfor loop

The problem here is that the parfor machinery cannot tell that you are completely overwriting quantity and Quantity_av in your i...

약 1달 ago | 2

Answered

The variable x in a parfor cannot be classified

Hm, I didn't see that precise error. I modified your example just a little so that it was actually executable, like so: n = 4; ...

The variable x in a parfor cannot be classified

Hm, I didn't see that precise error. I modified your example just a little so that it was actually executable, like so: n = 4; ...

약 1달 ago | 0

Answered

Variable to track parfor loop progress

@Matt J posted the simplest option which is to have the parfor loop display data. If you need more sophistication, you can use D...

Variable to track parfor loop progress

@Matt J posted the simplest option which is to have the parfor loop display data. If you need more sophistication, you can use D...

약 2달 ago | 1

Answered

How to run multiple cores without graphical interfaces?

I'm guessing you're starting MATLAB by running matlab -nojvm. This will not allow parpool to work. Use matlab -nodisplay instead...

How to run multiple cores without graphical interfaces?

I'm guessing you're starting MATLAB by running matlab -nojvm. This will not allow parpool to work. Use matlab -nodisplay instead...

약 2달 ago | 1

| accepted

Answered

Is there a way to change number of worker in a created parpool?

Unfortunately, there is currently no way to increase the number of workers in a parallel pool. One approach that might possibly ...

Is there a way to change number of worker in a created parpool?

Unfortunately, there is currently no way to increase the number of workers in a parallel pool. One approach that might possibly ...

약 2달 ago | 1

Answered

How can I store dates as arrays for further process when using Matlab GPU computing?

If you know the reduction operation you wish to perform on z, then you might be able to update a "running total" as the while lo...

How can I store dates as arrays for further process when using Matlab GPU computing?

If you know the reduction operation you wish to perform on z, then you might be able to update a "running total" as the while lo...

2달 ago | 0

Answered

Strange sparse matrix error on GPU

The maximum number of elements in a gpuArray is intmax('int32'). In this case, the scalar addition is forcing your sparse matrix...

Strange sparse matrix error on GPU

The maximum number of elements in a gpuArray is intmax('int32'). In this case, the scalar addition is forcing your sparse matrix...

2달 ago | 0

| accepted

Answered

Issue with Simulink Model Simulation inside Parfor ?

As @Sean says, parsim is the way to go if you can. However, as a workaround, you might get away with doing something like this: ...

Issue with Simulink Model Simulation inside Parfor ?

As @Sean says, parsim is the way to go if you can. However, as a workaround, you might get away with doing something like this: ...

2달 ago | 1

| accepted

Answered

How can I launch a script as an LSF job from the Matlab console?

Yes, you can use the batch command to do this. You'll need Parallel Computing Toolbox installed on your desktop MATLAB client, a...

How can I launch a script as an LSF job from the Matlab console?

Yes, you can use the batch command to do this. You'll need Parallel Computing Toolbox installed on your desktop MATLAB client, a...

2달 ago | 1

| accepted

Answered

isempty slow on GPU

I think there are a couple of things going on here. Firstly, enabling the profiler introduces overheads - particularly to GPU-r...

isempty slow on GPU

I think there are a couple of things going on here. Firstly, enabling the profiler introduces overheads - particularly to GPU-r...

2달 ago | 0

Answered

Checking if persistent variable exists on GPU: check if 'data no longer exists on the GPU' for a variable.

You need existsOnGPU, like so: x = gpuArray(1); assert(existsOnGPU(x)); reset(gpuDevice); assert(~existsOnGPU(x));

Checking if persistent variable exists on GPU: check if 'data no longer exists on the GPU' for a variable.

You need existsOnGPU, like so: x = gpuArray(1); assert(existsOnGPU(x)); reset(gpuDevice); assert(~existsOnGPU(x));

2달 ago | 0

| accepted

Answered

Accessing gpuDevice WITHOUT resetting it, and without carrying around a gpuDevice handle, or declaring a global

You can simply use gpuDevice() with no input arguments to access the currently selected GPU device without resetting it.

Accessing gpuDevice WITHOUT resetting it, and without carrying around a gpuDevice handle, or declaring a global

You can simply use gpuDevice() with no input arguments to access the currently selected GPU device without resetting it.

2달 ago | 1

| accepted

Answered

After uninstalling CUDA toolkit still MATLAB responds for gpuDevice() !!

MATLAB and Parallel Computing Toolbox need the CUDA driver to be installed on your system, not the CUDA toolkit. I admit it is...

After uninstalling CUDA toolkit still MATLAB responds for gpuDevice() !!

MATLAB and Parallel Computing Toolbox need the CUDA driver to be installed on your system, not the CUDA toolkit. I admit it is...

3달 ago | 1

Answered

How to reset job numbering in MATLAB Distributed Computing Server?

Unfortunately, there is indeed no way to do that (using the MATLAB Job Scheduler) without shutting down the jobmanager, and star...

How to reset job numbering in MATLAB Distributed Computing Server?

Unfortunately, there is indeed no way to do that (using the MATLAB Job Scheduler) without shutting down the jobmanager, and star...

3달 ago | 0

Answered

How to measure parfeval() execution time?

A parallel.Future instance has StartDateTime and FinishDateTime properties - you can subtract these to get an idea of the execut...

How to measure parfeval() execution time?

A parallel.Future instance has StartDateTime and FinishDateTime properties - you can subtract these to get an idea of the execut...

3달 ago | 0

Answered

Advantages of parpool vs. job/tasks vs. multiple batches?

If you want to be able to quit the client machine while the process is running, then either |batch| or |createJob| & |createTask...

Advantages of parpool vs. job/tasks vs. multiple batches?

If you want to be able to quit the client machine while the process is running, then either |batch| or |createJob| & |createTask...

4달 ago | 0

| accepted

Answered

Why does batch generate a different sequence of random numbers even when seeding the rng?

The problem here is that desktop MATLAB has a different default random number generator type than a Parallel Computing Toolbox w...

Why does batch generate a different sequence of random numbers even when seeding the rng?

The problem here is that desktop MATLAB has a different default random number generator type than a Parallel Computing Toolbox w...

4달 ago | 1

| accepted

Answered

Parfeval - Memory consumption piling up - Clear output data?

It would be really helpful if you could come up with an <https://stackoverflow.com/help/mcve mvce> to demonstrate the problem, a...

Parfeval - Memory consumption piling up - Clear output data?

It would be really helpful if you could come up with an <https://stackoverflow.com/help/mcve mvce> to demonstrate the problem, a...

4달 ago | 0

| accepted

Answered

How can I send data on the fly to a worker when using parfeval?

I think it's possible to do this sort of thing by getting the workers to create a <https://uk.mathworks.com/help/distcomp/parall...

How can I send data on the fly to a worker when using parfeval?

I think it's possible to do this sort of thing by getting the workers to create a <https://uk.mathworks.com/help/distcomp/parall...

4달 ago | 0

| accepted

Answered

Can parfor be used in my case?

The problem here turns out to be quite simple to work around. You're assigning to elements of |TCP_m| in the loop over |m|, but ...

Can parfor be used in my case?

The problem here turns out to be quite simple to work around. You're assigning to elements of |TCP_m| in the loop over |m|, but ...

4달 ago | 0

| accepted

Answered

How can I run this parfor loop?

One of the primary requirements of a |parfor| loop is that the iterations must be <https://uk.mathworks.com/help/distcomp/ensure...

How can I run this parfor loop?

One of the primary requirements of a |parfor| loop is that the iterations must be <https://uk.mathworks.com/help/distcomp/ensure...

4달 ago | 1

Answered

R2018b release notes has "batchsim"... how is this different than Parallel Computing Toolbox?

<https://uk.mathworks.com/help/simulink/slref/batchsim.html |batchsim|> is new in R2018b, and is designed to work with Parallel ...

R2018b release notes has "batchsim"... how is this different than Parallel Computing Toolbox?

<https://uk.mathworks.com/help/simulink/slref/batchsim.html |batchsim|> is new in R2018b, and is designed to work with Parallel ...

5달 ago | 0

Answered

multiple cprintf in parallel loop problem

To stop the output being interleaved, you need to send all the stuff to be printed as a single message. Here's one way: q...

multiple cprintf in parallel loop problem

To stop the output being interleaved, you need to send all the stuff to be printed as a single message. Here's one way: q...

5달 ago | 0

| accepted

Answered

cprintf not working in parallel situation

The way |cprintf| is implemented relies on manipulating the command window in a way that simply cannot be done for a parallel wo...

cprintf not working in parallel situation

The way |cprintf| is implemented relies on manipulating the command window in a way that simply cannot be done for a parallel wo...

5달 ago | 1

| accepted