Questions tagged [parallel-computing]

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

Filter by
Sorted by
Tagged with
14
votes
4answers
3k views

Any recommendations for unit-testing frameworks compatible with code/libraries that use MPI?

Usually, I write serial code, and when I do, I write unit tests with some xUnit-style testing framework (MATLAB xUnit, PyUnit/nose, or Google's C++ testing framework). Based on a cursory Google ...
7
votes
5answers
271 views

Computational science contests. Why arent there any?

I was wondering why there are no online or offline computational science contests? At least I couldn't find much by googling. I mean, like a topcoder for computational sciences. I assume one reason is ...
3
votes
4answers
11k views

When is MPI_Wait necessary for non-blocking calls?

I hope this is not too off-topic here -- I've asked it on SO but I'm hoping I'll get better answers here! I'm a little bit confused about when I should call MPI_Wait (or other variants such as: ...
9
votes
1answer
447 views

Is there some good mailing list for `Computational Science`?

I am wondering whether there is some very good mailing list or google groups for Computational Science, where we can discuss questions instead of only asking and replying questions. In fact, I am ...
8
votes
1answer
924 views

MPI policy for multiple asynchronous transfers

What is the policy of multiple overlapping asynchronous transfers in MPI? I have a program with several open asynchronous irecv operations. I find that transfers ...
8
votes
1answer
993 views

Solving a large non-hermitian generalised eigenvalue problem from a linear stability analysis using SLEPc

I have a generalised matrix problem: $A x = \lambda B x$ from a spectral method on a linear stability analysis problem. My matrix B is diagonal and positive semi-definite. A is non-hermitian and ...
10
votes
1answer
797 views

What are the differences between Parareal, PITA, and PFASST?

The Parareal, PITA, and PFASST algorithms are all across-the-domain techniques for parallelizing the solution of time-dependent problems in time. What are the guiding principles behind these methods?...
2
votes
1answer
83 views

Can you give me a detailed description of (spetral) deferred correction method?

I have just read "Accelerating the convergence of spectral deferred correction methods". The link is here: http://www.unc.edu/~junjia/papers/sdcgmres.pdf‎. But I wonder how to understand deferred ...
5
votes
3answers
1k views

Performance optimization or tuning possible for Scalapack Gemm?

I'm comparing the performance of distributed gemm, using Scalapack over OpenBLAS, with threaded gemm, using OpenBLAS. It seems quite hard for me to get scalapack to give better results than ...
1
vote
1answer
574 views

What kinds of size of matrix A that CHOLMOD can solve Ax=b

CHOLMOD is very fast, but I am just wondering what kinds of size A such that it can solve Ax=b. I have a A of 200,000 * 200,000, but it outputs errors" problem too large". I am very appreciated if ...
3
votes
2answers
642 views

How to make Elemental Gemm run quickly?

How to make Elemental Gemm run quickly? I have the following code: ...
1
vote
1answer
145 views

How to convert a Matrix to a DistMatrix in Elemental?

I have a Matrix<double> on a single core, the result of doing an MPI_Reduce. I want to do the Cholesky, so I need to ...
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 ...
3
votes
1answer
273 views

Optimal Scheduling of Parallel Tasks with Known Dependencies

This is maybe a trivial question, but I am stuck with the problem. Suppose we have a general graph: $$G=(V,E)$$ Each edge represents a task, each vertex represents a data for the task (hence each ...
4
votes
1answer
745 views

Libraries for distributed-memory Cholesky factorization?

What libraries can compute dense Cholesky factorizations in distributed-memory environments (preferably using MPI). I'm using C/C++, and have access to a cluster of between 1 and 40 nodes, where each ...
1
vote
1answer
241 views

Does scalapack need threaded or unthreaded blas?

I'm compiling a blas to use with scalapack. Some blases, such as openblas, are naturally multithreaded, but scalapack uses mpi, so maybe needs a single-threaded blas? My questions then are: does ...
11
votes
3answers
1k views

Best Methodologies for Managing a Mesh in Parallel Finite Element Computation?

I am currently developing a domain decomposition method for the solution of the scattering problem. Basically I am solving a system of Helmholtz BVPs iteratively. I discretize the equations using ...
1
vote
2answers
116 views

Reshaping a MultiVector in Trilinos

I'm using Trilinos for a problem and I have an Epetra_MultiVector object with 1 vector of length m*n*nFrames. I need to turn it ...
2
votes
0answers
455 views

Prediction model on GPU [closed]

I am doing a small project at school. I have done my code implementations in CUDA and did some performance measurements with real values, i.e. running the program with different number of threads, ...
5
votes
2answers
1k views

Computing matrix exponential with PETSc/SLEPc

My question is basically the best way to compute the matrix exponential in parallel. I've got a sequential code written in Python (https://github.com/hadsed/AdiaQC) and I need to extend it to run in a ...
10
votes
1answer
800 views

cuda and numerical methods with implicit time discretization

I am looking to port some code that resolves a set of partial differential equations (PDE) by the finite volume method in IMPLICIT form (for the time discretization). As result there is a tridiagonal ...
5
votes
1answer
449 views

Any useful application for smartphones in the world of computational science?

I was having this discussion with a colleague of mine a week ago and thought I might as well bring it here to a broader audience. That said, I am not certain this is a kind of question that is ...
2
votes
2answers
215 views

Speedup prediction of rotating mask filter

I am trying to do the speed up analysis of the rotating mask filter (section 4.2.3). Let $N^2$ be the pixels in the image and let $m^2$ be the neighborhood of a given pixel, what I have for my ...
1
vote
0answers
492 views

CUDA Mandelbrot Set effective bandwidth and optimization

I was reading through this article (very good article and excellent blog BTW) to do some measurements in my (very simple) implementation of the Mandelbrot Set. I'm using a Quadro 2000D card which has ...
3
votes
2answers
314 views

Is there MPI_Star instead of MPI_Win (window) for MPI_Get?

In FEM applications, each processor needs only data from neighboring processors, which gives a stencil or star pattern of communication. In MPI_Win for MPI_Get, one needs to setup a group of ...
5
votes
3answers
247 views

Under which conditions is better OMP_NUM_THREADS = 4 or 2 for multithread two-core CPU?

I am running my Fortran 95 numerical codes, whose structure is most times easily parallelized by little more than simply adding the corresponding OpenMP instruction before some critical DO sentences, ...
2
votes
1answer
239 views

Memory management in time-domain simulation

I develop a parallel time-domain DAE simulation software using OpenMP and Fortran 2003. The main algorithm is: ...
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 ...
18
votes
3answers
2k views

Log-log parallel scaling/efficiency plots

A lot of my own work revolves around making algorithms scale better, and one of the preferred ways of showing parallel scaling and/or parallel efficiency is to plot the performance of an algorithm/...
9
votes
2answers
4k views

Parallel computation of big covariance matrices

We need to compute covariance matrices with sizes ranging from $10000\times10000$ to $100000\times100000$. We have access to GPUs and clusters, we wonder what is the best parallel approach for ...
12
votes
4answers
1k views

Parallel (GPU) algorithms for asynchronous cellular automata

I have a collection of computational models that could be described as asynchronous cellular automata. These models resemble the Ising model, but are slightly more complicated. It seems as if such ...
2
votes
1answer
713 views

Multi-node jobs with Sun Grid Engine without MPI

I am trying to figure out how to write a proper job file for the Sun Grid Engine so I can run a parallel computation using Mathematica on multiple nodes. Unfortunately almost all tutorials on the ...
6
votes
1answer
2k views

MPI-based Implementations of FFT

In a numerical computation, I am required to take a multi-dimensional FFT on a distributed-memory cluster. The data is currently distributed using a distributed array in PETSc (DMDA). I initial ...
3
votes
0answers
34 views

An asynchronous version of the Covariance Matrix Adaption (CMA)?

Does anyone know of a variant of the CMA algorithm that is suitable for an asynchronous parallel implementation? The conventional version of the algorithm allows one to evaluate the fitness function ...
6
votes
1answer
4k views

Threaded OpenBlas benchmark slower than system blas?

I'm not sure if I did something wrong or if I just didn't understand the concept of an optimized BLAS. I'm a FEM engineer trying to optimize my setup on a small cluster computer (six nodes). I'm ...
1
vote
3answers
227 views

Determining Computing Requirements

I am looking at building/buying myself a workstation for scientific computing. I will be doing molecular dynamics simulations that are memory intensive (data on a large number of particles and a ...
3
votes
1answer
312 views

A better Fast Marching Method?

I am using the Fast Marching Method (FMM) to calculate shortest "distance" (traveltime) from some points. The way FMM works is: I keep a velocity function in RAM: V(xi,yj,zk). I also keep a priority ...
8
votes
1answer
3k views

What algorithm to use for parallel dense matrix inversion on at most 8 cores?

I need to implement parallel dense matrix inversion for a language I am using that appears to not have an existing library for this (specifically IDL using IDL Bridge for message passing). I am ...
3
votes
1answer
395 views

Limitations of Domain Decomposition Method (DDM) in Finite Element Analysis (FEA)?

The use of DDM in FEA makes parallel solution of the whole analysis e.g. assembly, solver etc possible. DDM splits the model in domains and runs them in parallel. Since there are interconnected nodes ...
11
votes
3answers
7k views

I am looking for a parallel dynamic graph library in C++

Hello scicomp community, I have worked in the area of graph algorithms using frameworks such as NetworkX (Python), JUNG and YFiles (Java). I am now entering the area of parallel and high perfomance ...
2
votes
1answer
314 views

Partitioning of mesh with 20 noded hexahedral elements [closed]

Is there a way to partition a mesh consisting of 20 noded hexahedral elements for parallel processing? I used METIS for partitioning mesh with 8 noded hexahedron elmements, which works fine but i don'...
2
votes
1answer
99 views

Cholesky Algorithm loop-Carried

I would like to know how to unroll loop-carried dependency inside the cholesky algorithm. What are the techniques that I should know to accomplish this work? I need to know it because I want to ...
5
votes
2answers
425 views

Effects of memory speed/architecture on Pardiso scaling

I am using a program that utilizes the PARDISO solver as part of the Intel math kernel library. I am currently in the process of deciding on a new computer to run the simulations on. I have a ...
3
votes
1answer
380 views

Parallelization of LSE solvers using CUDA

I want to know methods which are fully parallelizable on CUDA architecture. I have implemented the Jacobi and Conjugate Gradient methods and now Im thinking about the Bi-Conjugate gradient method. I ...
10
votes
2answers
431 views

Task-based shared-memory parallel libraries in Scientific Computing

In recent years, several libraries/software projects have appeared that offer some form or another of general-purpose data-driven shared-memory parallelism. The main idea is that instead of writing ...
10
votes
3answers
2k views

Thrust for GPU programming

I'm very new to GPGPU programming so please forgive me if the question is not particularly appropriate. From what I understand GPU programming is a very intricate piece of engineering work when ...
10
votes
2answers
780 views

Diagonalization of Dense Ill Conditioned Matrices

I am trying to diagonalize some dense, ill-conditioned matrices. In machine precision, results are inaccurate (returning negative eigenvalues, eigenvectors do not have the expected symmetries). I ...
11
votes
2answers
5k views

Guides on Python for shared-memory Parallel Programming

I have experience in coding OpenMP for Shared Memory machines (in both C and FORTRAN) to carry out simple tasks like matrix addition, multiplication etc. (Just to see how it competes with LAPACK). I ...
14
votes
5answers
576 views

Examples of PDE computations using parallelism in both space and time

In the numerical solution of initial boundary value PDEs, it is very common to employ parallelism in space. It is much less common to employ some form of parallelism in the time discretization, and ...
17
votes
5answers
1k views

How to address numerical non-associativity for parallel reduction?

A parallel reduction assumes that the corresponding operation is associative. This assumption is violated for addition of floating point numbers. You might ask why I care about this. Well, it makes ...