Questions tagged [parallel-computing]

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

Filter by
Sorted by
Tagged with
0 votes
0 answers
41 views

Parallel vs Serial computing using Python Qutip. Why is serial faster?

I am trying to learn parallel computing using qutip's parallel_map function. I've tried to write a basic and simple code to understand the differences between parallel and serial calculation of ...
1 vote
1 answer
110 views

Is it possible to run a Metropolis Monte Carlo simulation in parallel?

Is it possible to run a Metropolis Monte Carlo simulation in parallel? Suppose I perform a Metropolis Monte Carlo simulation using four threads. Suppose, the programming source code divides a ...
0 votes
1 answer
77 views

Non-dimensionalizing the Ideal MHD System

Non-dimensionalization is a really frustrating topic for me, and I imagine many others, because in school it was glossed over while being really important to implementing a simulation. I'm writing a ...
-1 votes
1 answer
105 views

What is the name of the theory that combines 3d discretized surfaces and distributed numerical algebra

I've looked into distributed numerical computation work before, but I've realized that 3D applications are all about 3d surfaces and meshes.So I'd like to look into related work on mesh and parallel ...
11 votes
1 answer
3k views

What is the state of the art algorithm for diagonalizing real symmetric matrices?

There are many methods for diagonalizing matrices, probably the most widely used is the combination of Householder transformations and the QR algorithm. Is there any superior method for diagonalizing ...
0 votes
1 answer
99 views

row and column based distributed LU factorization

The LU parallel computation theories I've seen are based on $M\times N$ mesh computations, is there a theory for one dimensional device mesh LU parallel decomposition? For example, $A$ is a matrix. we ...
2 votes
2 answers
476 views

Iteration counts of AMG solver changes in parallel

I am solving the linear elasticity equation within a FEM library with a complex 3D geometry. The resulting linear system is solved with CG, preconditioned by AMG (Algebraic Multigrid). The computed ...
2 votes
0 answers
60 views

Diagonalization of large sparse matrix, computational programme recommendation and methods

According to this link, All eigenpairs of large sparse symmetric matrix. The guy @Baranas seems to have given a very confident answer about solving the whole Eigen spectrum. May I know if anyone has ...
0 votes
2 answers
602 views

PhD in scientific computing to be a scientific programmer

Intro and disclaimer: this question concerns developing a career in Scientific Computing in industry, starting from an (applied) mathematics background, say an MSc. It definitely arises from my ...
0 votes
1 answer
125 views

Lattice Boltzmann method parallelization

I'm learning about the lattice Boltzmann method (LBM) and how it can be parallelized. On Wikipedia, they say, "The LBM was designed from scratch to run efficiently on massively parallel ...
2 votes
0 answers
75 views

OpenMP Fortran array operations in target regions

I am asking this here for the possibility that someone here is familiar with OpenMP offloading. Is there some other way to parallelise Fortran array operations outside of unrolling the loops of the ...
0 votes
0 answers
29 views

Parallel Block-Structured class abstraction for FDM

I’m currently developing a FDM/FVM (using contravariant coordinates) code using Fortran and Co-Arrays (SIMD, in general), and so far I have all sparse matrix (BiCGStab, working on AMG) solvers and ...
3 votes
1 answer
312 views

Under what circumstances is parallel scaling of the finite element method not "solved"?

I see things like this deal.II example, (ctrl + f for "superMUC") which seems to show some pretty impressive scaling (nearly twice as fast for twice as many CPU cores for a wide range of ...
1 vote
0 answers
41 views

Where to find datasets to research the optimal parameter search space for HPC systems? [closed]

I am a student researcher who is new to the HPC domain. I have recently taken a project where I am working on optimizing the parameter search space (both application level and hardware level ...
2 votes
0 answers
158 views

Why GPU scaling (speedup) is usually worse than CPU scaling?

Let's define scaling, as how linear the speedup of using more than one GPU or CPU is. For example, having 2 GPUs gives you 2x faster execution time. I have noticed that in many software (e.g. ...
2 votes
1 answer
217 views

Parallelize pseudo inverse of a matrix using Lapacke

I am currently using the protocol described in https://stackoverflow.com/questions/55599950/computation-of-pseidoinverse-with-svd-in-c-using-blas-and-lapacke to compute the pseudo inverse of a matrix. ...
0 votes
2 answers
96 views

How to define a global index from local index and rank in parallel computing

Suppose I have 4 processes and each process has $n_i, i=0,1,2,3$ elements. In particular, with rank $0$, we have loc indices list $[0,1,\ldots, n_{0}-1]$ and $1$, we have loc indices list $[0,1,\ldots,...
1 vote
1 answer
231 views

How does a blocking MPI all to all synchronization work?

I was trying to understand more in detail how a blocking MPI all to all really work. Of course, the actual all to all traffic is pretty straightforward, what I can't understand is how it is able to &...
0 votes
0 answers
55 views

Calculate the time taken to run an algorithm on GPU

I want to calculate the total time taken for a fixed code run using an NVIDIA GPU (for instance, Tesla K40). The code has to run 1 million single-bit comparisons. All the comparisons are independent ...
0 votes
0 answers
85 views

where to use multiprocessing in multi-loop program

I am running a program that uses [a lot of] looping to perform a type of bootstrap analysis. The computational step - PCA - can take a long time (60+) seconds, which means that collectively this ...
3 votes
1 answer
65 views

Measurement of observables in Parallel Tempering Monte Carlo simulations

I'm doing Metropolis-Hastings Monte Carlo simulations of a classical spin Hamiltonian at different temperatures using the parallel tempering algorithm. I have managed to obtain constant exchange rates ...
0 votes
1 answer
95 views

Pythonic way of finding RMS in large dataset

I am working on a fluid mechanics problem with a 4-D dataset (time,x,y,z). I am trying to find the RMS values such as $\overline{u^\prime u^\prime}$,$\overline{v^\prime v^\prime}$,$\overline{w^\prime ...
0 votes
1 answer
78 views

Distributed Optimization of Least Powers

I have $F_i \in \mathbb{R}^{m}$, $y_i \in \mathbb{R}$, $\beta_i \in (1,\infty)$ for $i = 1,\ldots, n$. I would like to solve the following convex optimization problem $$\min_{x} \sum_{i = 0}^n |F_i\...
0 votes
2 answers
399 views

Searching for recent code source for "Parallel scientific computing in C++ and MPI "

I am learning C++ scientific computing with "Parallel scientific computing in C++ and MPI A Seamless Approach to Parallel Algorithms and their Implementation" since it kept coming up a lot ...
2 votes
2 answers
154 views

How can I write a GPGPU program that can run on any GPU?

Here is my objective: I want to code a ray tracing engine in C++ that can be run on any GPU. That means that it should work on NVIDIA GPUs, AMDs, or even Intel Graphics chipsets. The choice of C++ was ...
0 votes
0 answers
68 views

Is there a mathematical algorithm that can determine whether a problem is parallelizable?

Is there a mathematical algorithm that can determine whether a problem is parallelizable? Possibly similar to how the definition for "computable" works out: https://en.wikipedia.org/wiki/...
2 votes
0 answers
93 views

How to find eigvals/eigvecs of huge symmetric tridiagonal matrix using multiple processes or threads?

In python, there is a function in scipy (scipy.linalg.eigh_tridiagonal) which is extremely efficient for an exact diagonalization of a symmetric tridiagonal matrix (...
5 votes
3 answers
316 views

Deep learning using Distributed linear algebra

Is there any deep learning library based on Trillinos or Petsc linear algebra?
4 votes
0 answers
360 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 ...
0 votes
1 answer
2k views

Solve a large-scale linear system of equations with millions of unknowns

I have a large-scale system of linear equations: $Ax = b$, where $A$ is an $n\times n$ square symmetric positive definite matrix (not sparse), $b$ is an $n \times 1$ vector and $x$ is $n\times 1$ ...
4 votes
0 answers
176 views

How amenable is this 2D Frenkel–Kontorova-like energy minimization problem in Python to the use of a modest PC + GPU? (Heavy reliance on indexing)

@Richard's answer to Going to try to move some of my scipy/numpy calculation to a new GPU, how to avoid disappointing results? is quite helpful, and as promised I've added a simple running example ...
5 votes
2 answers
645 views

Direct solvers and domain decomposition for FEM

In the finite element method, in order to use MPI, we need to decompose the domain into sub-domains first. Then my question is whether we can solve each sub-domain using a direct solver? Of course, ...
3 votes
0 answers
141 views

Numerical calculation of out-of-time order correlators (OTOCs)

I want to numerically calculate OTOCs for different quantum mechanical systems. Consider the following Hamiltonian $$H=p_x^2+p_y^2+x^2y^2$$ and I want to calculate the following OTOC $$C_T(t)=-\left&...
1 vote
2 answers
2k views

Using OpenMP in Fortran for common array operations

In Fortran, given arrays A(1000000) and B(1000000), and to compute the sum you simply write: C = A + B However, when I want to implement OpenMP, I have to write ...
3 votes
1 answer
385 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 ...
18 votes
1 answer
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 ...
2 votes
1 answer
114 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
2 answers
291 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
1 answer
143 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
2 answers
456 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
2 answers
378 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
0 answers
321 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
3 answers
761 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
1 answer
204 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
0 answers
84 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
1 answer
287 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
0 answers
47 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
1 answer
531 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
3 answers
264 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
3 answers
642 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 ...

1
2 3 4 5
7