Questions tagged [spmd]

SPMD (single program, multiple data) is a technique employed to achieve parallelism; it is a subcategory of MIMD

In computing, (single program, multiple data) is a technique employed to achieve parallelism; it is a subcategory of .
Tasks are split up and run simultaneously on multiple processors with different input in order to obtain results faster.
SPMD is the most common style of parallel programming. It is also a prerequisite for research concepts such as active messages and distributed shared memory.
In SPMD, multiple autonomous processors simultaneously execute the same program at independent points, rather than in the lockstep that SIMD imposes on different data. With SPMD, tasks can be executed on general purpose CPUs; SIMD requires vector processors to manipulate data streams. Note that the two are not mutually exclusive.

Wikipedia page: http://en.wikipedia.org/wiki/SPMD

40 questions
1
vote
1 answer

In SPMD using GNU parallel, is processing the smallest files first the most efficient way?

This is pretty straight forward: Say I have many files in the folder data/ to process via some executable ./proc. What is the simplest way to maximize efficiency? I have been doing this to gain some efficiency: ls --sort=size data/* | tac |…
Matthew Turner
  • 3,564
  • 2
  • 20
  • 21
0
votes
0 answers

How to combine SPMD and loop together?

A parallel computing problem in matlab. I want to communicate between my labs, so I should use SPMD. If I need to run many generations to end, can I only put SPMD into the for loop. I realized that it would be very slow to do so, because I…
0
votes
1 answer

What is the reason behind parfeval's time overhead compared to a serial implementation?

I am trying to parallelize some code used in the Gauss-Seidel algorithm to approximate the solution of a Linear Equation System. In brief, for an NxN matrix, during one iteration, I am doing sqrt(N) sessions of parallel computation, one by one.…
catalyst
  • 25
  • 1
  • 4
0
votes
1 answer

Using matlab's spmd to compute simple triple integral is giving me incorrect solution, any thoughts on what I am doing wrong?

Using matlab's spmd to compute simple triple integral is giving me incorrect solution, any thoughts on what I am doing wrong? close all; clear all; clc; % Create a parallel pool if none exists if isempty(gcp()) parpool(); end nworkers =…
0
votes
0 answers

How to properly use spmd in matlab with handle classes and synchonize data between workers

my problem is following: I have a handle class with many objects and I want to link them to each other. So my vertex(1) from my class vertex needs to be linked to vertex(2) and vertex(3), so that my vertex(1) has the properties…
Marc Laub
  • 11
  • 1
0
votes
1 answer

MatLab Parallel computing toolbox: using more cores for same task

I have a laptop with 4 physical cores, and the MatLab parallel computing toolbox. I need to perform two independent task (really expensive, let's say to compute the largest eigenvalue of a dense,large, matrix). So, I want to distribute the tasks to…
0
votes
0 answers

Asynchronous Parallel Computing in MATLAB?

I am looking to utilize the labSend, labReceive functionality with spmd in MATLAB to execute perform the following: Lab1, run a global optimization routine and pass an intermediate result to Lab2 Lab2, wait for the intermediate result from Lab1…
Clark
  • 133
  • 4
0
votes
1 answer

Using MPI_PUT in fortran and different ranks have different displacements using c_loc

I have MPI ranks split up to calculate different parts an an array, then I want to put/send those slices onto a different rank that doesn't participate in the calculation. That rank is the master of a new communicator set up to do other things with…
byrdman1982
  • 109
  • 7
0
votes
2 answers

Can I use mpiexec to run the same executable with different command line arguments for the executable each time?

I'm new to distributed operating system. And I need to train about multiple machine learning models with supercomputers. I need to run the same training script multiple times, and for each run passing the script with a different command line…
Tony L
  • 41
  • 1
  • 7
0
votes
1 answer

How to use SPMD for different input variables and save the output in order?

I am using a simulated annealing algorithm to optimize my problem, I have to do it for 100 different input variables and save the output for all variables in order. the problem is that I don't know how to implement spmd in my code to do parallel…
0
votes
1 answer

How to save intermediate iterations during SPMD in MATLAB?

I am experimenting with MATLAB SPDM. However, I have the following problem to solve: I am running a quite long algorithm and I would like to save the progress along the way in case the power gets cut, someone unplugs the power plug or memory error.…
user89073
  • 317
  • 1
  • 3
  • 11
0
votes
0 answers

Could not resolve dependencies for project spmf ca.pfv pom.xml

I am working on open source maven project that use several mining dependencies. after write this command into component mvn clean install I got ERROR in pom.xml file,enter code here that version of spmf is…
Farbod Aprin
  • 990
  • 1
  • 10
  • 20
0
votes
0 answers

creatjob for number of jobs with 25 workers each reading data and writing results

I am using MATLAB 2017a with additional toolboxess i.e. image processing, statistics, parallel processing and cluster computing with a license for 300 workers. The operating system is Windows server 2012 R2 with 1 TB of memory per 25 workers. For…
Hein
  • 1
  • 1
0
votes
1 answer

how to distribute a vector between workers in a spmd block

I have a spmd block inside a for-loop. I need a 2*9 vector called Aa to be distributed between three or more workers, some calculations are performed and as a result, few matrices and vectors are generated. then the matrices of each worker and all…
0
votes
1 answer

Why is SPMD running time bigger than sequential - matlab

I've used spmd to calculate two piece of code simultaneously. The computer which I'm using have a processor with 8 cores.which means the communication overhead is something like zero! I compare the running time of this spmd block and same code…
user5871360