Questions tagged [parallel-computing]

The study of solving computational problems by exploiting the use of multiple processors simultaneously.

Filter by
Sorted by
Tagged with
3
votes
1answer
105 views

Multi threaded finite element assembly implementation

What is typically the best way to multi thread the assembly loop in a finite element code? Does anyone have experience with implementing this, that they can share? I can think of a couple of ways of ...
1
vote
0answers
75 views

Can you provide an example of an algorithm that has strong scalability but not weak scalability? Can you also provide an example the other way around?

Strong Scaling and Amdahl's Law Strong scaling is a measure of how, for a fixed overall problem size, the time to solution decreases as more processors are added to a system. An application that ...
18
votes
1answer
2k views

How to Run MPI-3.0 in shared memory mode like OpenMP

I am parallelizing code to numerically solve a 5 Dimensional population balance model. Currently I have a very good MPICH2 parallelized code in FORTRAN but as we increase parameter values the arrays ...
1
vote
1answer
73 views

MPI vs OPENMP usage for boundary element method

I have an implementation question with MPI and OPENMP. I have a large three-dimensional surface mesh divided into elements. I want to loop over each element (outer loop) and compute an integral over ...
1
vote
2answers
102 views

Affecting parts of an array outside MPI process efficiently

This was originally asked on Stackoverflow but instead of migrating it was suggested I repost here and delete that one. I've tried to clarify based on comments there. I'm new to MPI, but I am trying ...
2
votes
1answer
89 views

Vectorization Matlab/Octave of Markov Matrix Powers

I have just created a code snippet in Octave/Matlab that aims to create a plot which shows the accuracy of an initial probability vector $\vec{\pi}$ derived from the transition probability matrix $\...
0
votes
2answers
59 views

Passing in user inputs with mpirun

I am building a quantum circuit simulator using mpi4py. The simulator takes user inputs to build the initial system and quantum gates the system passes through. I can get the code to work if I do not ...
3
votes
2answers
207 views

OpenMP: parallelizing calculation of pair interaction forces

I recently started to learn OpenMP. Albeit I have developed some intuition I still have some doubts on how to proceed under certain circumstances that are very useful for computational physicists. My ...
1
vote
0answers
56 views

Why does Eigen allocate a temporary to evaluate A.noalias() = B.transpose()*C in parallel?

I wrote a program which iteratively transforms data using matrix multiplications. To minimize the number of large memory allocations, I use two roughly equal-sized ...
0
votes
3answers
214 views

How to apply the boundary condition when global stiffness matrix is stored in csr format? [duplicate]

I am solving the poisson equation and I constructed the global stiffness matrix in compressed row storage format. Then I wrote the preconditioned conjugate gradient solver for solving the system of ...
0
votes
1answer
44 views

MPI_Test not progressing MPI_Isend/MPI_Irecv requests

I am running a CFD simulation with a 200,000-vertex mesh. I've decomposed the mesh into 2 load-balanced sub-domains to test my parallel implementation. In the specific function that I am time-...
0
votes
0answers
38 views

Output solution vector in Petsc

I am using petsc to solve a linear elasticity problem discretized by finite elements.The initial mesh is read by a mesh file and the distribution in each processor is done using METIS.I am using only ...
5
votes
1answer
152 views

Solving PDEs in parallel

I have read different approaches on how to solve pdes in parallel which are discretized using finite element method. For example: Non-overlapping domain decomposition approach as mentioned in https://...
0
votes
0answers
33 views

Methodology to develop parallel GPU simulations

I'm quite new to GPU or in general parallel programming. I am working on a Lattice-Boltzmann simulation that should be parallelized on GPU's. I wanted to asked more experienced people how to attack ...
2
votes
1answer
188 views

Can one safely use an OpenMP parallel loop with Armadillo?

I have a C++ code performing some Armadillo computations in a loop. I'd like to parallelize this loop with OpenMP. But Armadillo automatically uses OpenMP for some computations. So, would the OpenMP ...
2
votes
3answers
239 views

C standard for computational science

Which C standard should be used for computational science code ? Should we keep compatibility with C89/90/ANSI or jump to C99 or C11 ? Context: Code will use third-party : BLAS, LAPACK, MKL, ...
0
votes
3answers
409 views

Parallel output in ASCII-format with MPI

After some parallel computations, I need to write the results in a file and for plotting reasons, I want them in ASCII format. Because of performance issues, I want to avoid to ...
24
votes
10answers
9k views

Are there any embarrassingly parallel tasks that require a CPU rather than GPU?

I am looking for tasks that are unsuitable for GPUs gain significant speedup as more CPU nodes are added don't require large data transfer or inter-thread communication between nodes. Do any ...
1
vote
1answer
109 views

How to debug segmentation faults in large problems?

I am sorry if this question seems like off topic or opinion based, but I was not sure how to go about it. I am currently working on a 100k x 100k positive definite linear system and trying to solve it ...
1
vote
1answer
87 views

preconditioner for $u''(x)=\sin(x)$

I am interested in finding preconditioner to solve the problem for one dimensional problem $u''(x)=\sin(x), u(0)=u(1)=0$ using Dirichlet-Neumann method. The preconditioner $M$ coming from Dirichlet-...
6
votes
1answer
285 views

Parallelize Scipy iterative methods for linear equation systems(bicgstab) in Python

I need to solve linear equations system Ax = b, where A is a sparse CSR matrix with size 500 000 x 500 000. I'am using scipy.bicgstab and it takes almost 10min to solve this system on my PC and I need ...
41
votes
3answers
4k views

What's the state of the art in parallel ODE methods?

I'm currently looking into parallel methods for ODE integration. There is a lot of new and old literature out there describing a wide range of approaches, but I haven't found any recent surveys or ...
1
vote
0answers
87 views

performance comparison between PETSc and SLATE

We want to start a new project to solve a large-scale inverse problem (O(10^6) number of parameters) to invert for subsurface wave speeds. We will use FEM to solve forward and adjoint PDEs. In our ...
3
votes
1answer
95 views

GPGPU/FPGA programming for Combinatorial Analysis

Recently, I have taken an interest in performing combinatorial analysis for the game of 21 (blackjack) and attempted to use my AMD APU to try and thread the program via the 4 cores on the chip. ...
1
vote
0answers
52 views

Multigrid Reduction In Time Convergence

I am trying to solve a 2D dynamic linear elasticity model parallel in time using Xbraid. The spatial domain is [0,1]x[0,1] and time domain [0,1]. For time integration I am using a backward Euler ...
2
votes
0answers
151 views

Parallel In Time with Multigrid

I am trying to solve the linear finite element equation $M\ddot{u}+Ku=F(t)$, where $M$ is the mass matrix ,$K$ the stiffness matrix and $F(t)$ the external load vector, parallel in time using XBraid ...
3
votes
1answer
193 views

Dirichlet Boundary Condition finite difference method using sparse-matrix $Ax = b$ system

I am trying to solve the boundary value problem for heat equation: $$ u_{xx} + u_{yy} = f(x,y) $$ where the solution $u(x,y) \in [0,1] \times [0,1]$ and the Dirichlet boundary condition $u(x,y) = ...
0
votes
1answer
103 views

Access PETSc data in totalview?

Is it possible to view the data stored in the various PETSc data types from within totalview? Ordinarily, PETSc types are integers which act as pointers to the actual data (obviously my understanding ...
2
votes
3answers
392 views

On the reordering of sparse matrices

I have been reading on different techniques used to reorder sparse matrices to achieve better performance, the most popular being the Cuthill-McKee or Reverse Cuthill-McKee algorithm. Most of those ...
2
votes
1answer
60 views

Understading memory sharing in a GPGPU using a lattice example

I am new in the GPUs world, I used them in Matlab ambient so I didn't need to appreciate the subtleties of these devices. I know that a GPU can be divided into multiprocessors (also called Streaming ...
10
votes
5answers
10k views

Best choice of solver for a large sparse symmetric (but not positive definite) system

I am presently working on solving very large symmetric (but not positive definite) systems, generated by some certain algorithms. These matrices have a nice block sparsity which can be used for ...
4
votes
4answers
1k views

CPU usage when a MPI rank waits during a blocking communication

A typical way of dealing with I/O in MPI parallel programs is to either read all data to a single node and dispatch to the other nodes accordingly, or send all data to a single node and write from ...
1
vote
2answers
114 views

Parallelisation strategies for mixed FE formulations

Mixed FE formulations with LBB-stable elements require two different meshes for the primary and the constraint variables, for example, displacement and pressure. With continuous approximation for the ...
0
votes
1answer
220 views

openmp critical

Following this question, for the code below (from MS OpenMP docs example) ...
0
votes
0answers
313 views

Openmp critical section inside if conditional statement

I have a function like this void foo(x, *y) { some calculations if (x > *y) { *y = x/2; } more calculations } My parallel section is <...
2
votes
5answers
500 views

FEM and High Performance Computing

Suppose we want to solve an FEM problem in terms of HPC. What is the most usual way to do it: Using an open-source software like mfem,deal.ii etc.. or, Assembly the system by your own(read mesh file,...
2
votes
0answers
67 views

OpenMP inconsistently segfaulting

I parallelized my code with openMP, and now have this bug in my code that's really odd. If it's the first time I run on a computer, it segfaults, but if I run the program again it runs fine. I've ...
0
votes
1answer
91 views

How to use 8-cores CPU as a single-core more (8x) powerful CPU?

I use python for my algorithm which uses only one core and I need more processing speed. I have i7 6700K CPU with 8 cores. How to convert them to one core to have a total performance of 8 cores? ...
1
vote
1answer
154 views

Parallel integration of dynamical systems

I need to solve the following problem: $$ \begin{cases} \dot{\vec{x(t)}} = A\vec{x(t)} + u(t)D\vec{x(t)} + u(t)\vec{b}, & x \in (0, T), \\ \vec{x(0)} = \vec{0}, \end{cases}$$ where $u(t)$ is known ...
59
votes
4answers
10k views

How mature is the "Julia" scientific computing language project?

I'm considering learning a new language to use for numerical/simulation modelling projects, as a (partial) replacement for the C++ and Python that I currently use. I came across Julia, which sounds ...
4
votes
2answers
213 views

Deep learning using Distributed linear algebra

Is there any deep learning library based on Trillinos or Petsc linear algebra?
0
votes
1answer
51 views

problem in interface operator

https://www.unige.ch/~gander/Preprints/42540.pdf. here I have a problem in section $4,$ of approximating the symbol $\sigma_i(k)$. My understanding is, to get back the operator $S_i$ we have to use ...
2
votes
1answer
84 views

Parallel, matrix-free estimate of the trace

What would be the best way to estimate the trace of a large, distributed matrix, if one only know its action on a vector throug a parallel "matvec" routine? In the application I am interested in, the ...
1
vote
1answer
155 views

C++ - Starting paraller instances of an executable from a C++ code

Can I start parallel run of LAMMPS from inside a C++ code. Is it possible to compile my code and then do mpirun with my compiled code. I also have one system command inside the code, which starts ...
2
votes
1answer
90 views

Mesh partition quality

I am working on static FE mesh partitioning and in order to achieve a good quality partitioning I want to know how to drecrease interprocessor communication by increasing the connectivity of elements ...
2
votes
2answers
209 views

How to compute 16 different simulations on parallel with pbs script on the same machine

I have a 32 cores machine, and I need to run 16 different dynamics simulations in parallel on it. I want the 16 jobs to run in parallel, not sequentially, on the same machine. The 16 dynamics input ...
14
votes
3answers
3k views

Why would you need frameworks like MPI when you can multi-task using threads?

MPI is an interface which enables us to create multiple processes to be run on a single machine or on a cluster of machines, and enables message passing or in short sorts of communication between ...
1
vote
1answer
75 views

Parallel solution of PDEs

Which is the best approach to solve a PDE in parallel: 1.To split the mesh the mesh in N parts and every processor works on its own part or 2.To take the global linear system Ax=b and solve it in ...
0
votes
3answers
127 views

How to store a TB size array in C++ on a cluster

I want to do a huge simulation that requires ~ 1 TB of data to describe a bunch of interacting particles (each has different interactions). Is it possible to store this data in an array in C++, so ...
0
votes
1answer
67 views

Parallel mesh partitioning

When a mesh partitioning takes place and every process works on a part of the mesh is any way to rename the global numbering of nodes(on each process) into a local numbering?Is there any software that ...

1
2 3 4 5 6