Questions tagged [hpc]

High Performance Computing generally uses large arrays of computers connected in clusters or grids.

Filter by
Sorted by
Tagged with
59
votes
12answers
35k views

C++ vs Fortran for HPC

In my computational science PhD program, we are working almost exclusively in C++ and Fortran. It seems like some professors prefer one over the other. I am wondering which one is 'better' or if one ...
45
votes
7answers
11k views

Is it a good idea to use vector<vector<double>> to form a matrix class for high performance scientific computing code?

Is it a good idea to use vector<vector<double>> (using std) to form a matrix class for high performance scientific computing code? If the answer is no. ...
37
votes
7answers
2k views

What programming paradigms should I be investing in if I want my code to run on petascale machines in the future?

It's pretty clear from a survey of the top500 that the industry is trending towards an exponential increase in processing cores. The largest supercomputers all use MPI for communication between nodes,...
35
votes
1answer
14k views

CUDA vs OpenCL as of late 2013

How do CUDA and OpenCL compare to each other as of late 2013 from a programmer's perspective? My group is thinking about trying to make use of GPU computing. Would we be limiting ourself ...
23
votes
5answers
4k views

When is building a cluster in the cloud cheaper than building one in my lab for MD simulations?

An Amazon EC2 compute cluster costs about \$800-\$1000 (depending on duty cycle) per physical CPU core over the course of 3 years. In our last round of hardware acquisition, my lab picked up 48 cores ...
22
votes
6answers
4k views

Future of OpenCL?

The OpenCL programming paradigm promises to be a royalty free opens standard for heterogenous computing. Should we invest our time in developing software based on OpenCL? Pros/cons?
22
votes
3answers
19k views

Intel Fortran Compiler: tips on optimization at compilation

I will start with my personal experience in our lab. Back in the ifort 9 and 10 days, we used to be quite aggressive with the optimizations, compiling with -O3 and processor specific flags (-xW -xSSE4....
19
votes
5answers
3k views

Parallel Scientific Computation Software Development Language?

I want to develop a parallel scientific computation software from scratch. I want some thoughts on which language to start. The program involves reading/writing data to txt files and doing heavy ...
18
votes
5answers
6k views

State of the Mac OS in Scientific Computing and HPC

Back towards the dawn of OS X, there seemed to be a great deal of hubbub, at least in the Mac world (I was nowhere near scientific computing at the time) about the Mac OS as a platform for scientific ...
17
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/...
17
votes
4answers
10k views

Do currently available GPUs support double precision floating point arithmetic?

I have run the molecular dynamics (MD) code GROMACS on a Ubuntu Linux cluster consisting of nodes containing 24 Intel Xeon CPUs. My particular point of interest turns out to be somewhat sensitive to ...
17
votes
3answers
331 views

Desktop software with HPC resources for back end number crunching

Our workgroup produces a desktop application that simulates building energy performance. It is a .NET application and when the user is running a lot of simulations, they can be quite time consuming. ...
16
votes
4answers
3k views

Should I rent computing resources, or buy my own computers

Since this question is related to computation, I decided to post here. Hopefully it will be seen as appropriate. I've just started running atmospheric and oceanic models, and I realize that I need ...
16
votes
4answers
8k views

Profiling CFD code with Callgrind

I'm using Valgrind + Callgrind to profile a solver I have written. As the Valgrind user manual states, I've compiled my code with the debugging options for the compiler: "Without debugging info, ...
16
votes
2answers
2k views

Boost::mpi or C MPI for high performance scientific applications?

The thing I dislike most about MPI is dealing with datatypes (i.e. data maps/masks) because they don't fit that nicely with object oriented C++. boost::mpi only ...
16
votes
3answers
589 views

How should I study creating and programming HPC systems?

I'm in a field that doesn't necessarily do a great deal of HPC work, and when it does encounter it, it's often the result of researchers from other fields exploring new applications to their methods ...
13
votes
5answers
560 views

How much should scientific software be optimized?

For applications requiring significant computational resources, high performance can be a critical factor when it comes to delivering scientific results or achieving "break-throughs" in reasonable ...
11
votes
1answer
251 views

Statistical models for local memory/compute, network latency, and bandwidth jitter in HPC

Parallel computation is frequently modeled using a deterministic local rate of computation, latency overhead, and network bandwidth. In reality, these are spatially variable and non-deterministic. ...
10
votes
2answers
206 views

Communication overhead in supercomputing

I am looking for credible references stating how much resources supercomputers spend on coordinating versus doing actual task-related work. Resources could be available processing power but even Watts ...
10
votes
2answers
413 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 ...
9
votes
4answers
1k views

What is a robust, iterative solver for large 3-d linear-elastic problems?

I'm diving into the fascinating world of finite element analysis and would like to solve a large thermo-mechanical problem (only thermal $\rightarrow$ mechanical, no feedback). For the mechanical ...
8
votes
3answers
28k views

Difference between Nodes and CPUs when running software on a cluster?

I'm looking into moving some computations of mine to a data center to get more computation power. In the context of this process, I am getting confused by the differentiation of a computation node and ...
8
votes
4answers
367 views

(How) do you take into account memory fragmentation?

I use an example from finite element theory, but anybody who maintains a large datastructure and successively extends it will find something similar. Suppose I have an unstructured mesh of points and ...
8
votes
2answers
1k views

Intel Knights Landing work loads vs NVIDIA GeForce

There are lot of articles being written about how the newly launched Intel Xeon Phi will steal the HPC\Super Computer market share from the competitors. Intel Knights is equipped with 72 cores and 4 ...
8
votes
4answers
328 views

Prolonging PBS job

It is quite painful to discover that a few-day long job is going to be prematurely killed due to an error in setting walltime limit for it. Is there a way to change it for a running PBS job?
8
votes
1answer
376 views

Red(-Green)-Refinement vs. Newest-Vertex-Bisection

What are the "Pros and Cons" for these two methods of mesh-refinement? Both seem to be the prevalent methods. I can naturally imagine that global red refinement is comparatively easy to implement and ...
8
votes
1answer
142 views

Anyone knows references summarizing the history of supercomputing?

Anyone knows references summarizing the history and ideas behind supercomputing including mentioning of developments in parallel programming languages, applications, startup companies (some was ...
7
votes
5answers
298 views

External hardware resources for running long and computationally intensive simulations

I've written code for an obstructed random walker simulation and I want to run long simulations (6 hours or more on my computer). I don't want to run this simulation on my computer because I will want ...
7
votes
5answers
266 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 ...
7
votes
2answers
666 views

Why does sparse linear algebra have a low arithmetic intensity?

I often see the terms "low arithmetic intensity" and "memory-bound" associated with sparse matrix operations. However, my intuition is that a sparse matrix operation should be less memory-bound, if ...
7
votes
4answers
3k views

Best hardware solution for microsecond Molecular Dynamics

We would like to reach Molecular Dynamics simulation of proteins with around 20000 atoms in explicit water with trajectories of around 1 microsecond each. We are looking at different options for ...
7
votes
4answers
196 views

Removing non-determinism from molecular dynamics code

I've been looking through the other answers, and I haven't found a good answer yet. I'll describe the simulation I am running, and then the problems. The program simulates particles undergoing ...
7
votes
3answers
5k views

What is the best high performance computing platform for engineering simulations?

What is the best platform for high performance computing (HPC)? Windows is long gone, I think. So only Unix and Linux stand the chance. What platform will strongly back my interest on computational ...
7
votes
2answers
7k views

What does the priority of a PBS job really mean?

The qsub command which submits PBS jobs has a -p option that allows you to set the priority. From the man page: Defines the ...
7
votes
1answer
228 views

Online resources for reviewing graphics cards for GPGPU

Can anyone recommend a site that maintains up-to-date reviews of graphics cards for GPGPU use? Most benchmarks focus on gaming performance, whereas I am interested in the performance of scientific ...
7
votes
2answers
2k views

Shape regularity in higher dimensions

In Finite Element theory, and other methods in scientific computing for PDEs, one uses meshes which fulfill several regularity criteria, many of them being equivalent. It is of interest to have ...
6
votes
2answers
1k views

Borrow computational power from machines around me

I'm a computational chemist working with little computational power and dealing with increasingly demanding chemical systems. My work machines are part of a big network (mixed with windows and linux) ...
6
votes
1answer
195 views

Working with large mesh files

I am working on some medium to large scale finite element codes. By using established and available tools I am able to have an algorithm that scales well up to about 10,000 cores. Investigating ...
6
votes
1answer
530 views

Benchmarking performance in CFD: how to compare machines and codes?

Informally in our lab, we have developed 2 metrics to compare CFD solvers over the range of machines we have access to. One is called COMP, which stands for COde Machine Performance. This single ...
5
votes
5answers
345 views

Will MPI continue to be a popular basis writing scalable massively parallel solvers on future many-core CPUs? [duplicate]

Possible Duplicate: What programming paradigms should I be investing in if I want my code to run on petascale machines in the future? Having entered the multi-core era (som already refers to as ...
5
votes
2answers
5k views

Where can I get access to GPU cluster for educational purpose?

I want to work on NVIDIA GPU cluster for my thesis. But the cost of clusters are too high for me to bear. Although I can buy a couple of latest GPU cards, but buying cluster is impossible for me at ...
5
votes
3answers
253 views

How to efficiently structure simulation data in memory for cells with varying degrees of freedom?

For a discontinuous Galerkin-based simulation I need to store cell-based simulation data in memory. Since the order of the polynomial approximation $N_p$ may vary between cells, I wonder what the most ...
5
votes
1answer
107 views

Additional cost associated with quad (or higher) precision

In going from double precision to quad (or higher) precision, roughly how much of a performance hit is taken on various architectures and frameworks. Do floating point operations take twice as much ...
5
votes
1answer
61 views

Is there a way to ensure that PBS array jobs will be run in order?

I run many PBS scripts that take advantage of the job array structure for similar jobs (e.g. 12345[0] through 12345[9]). With the way that the code is written, job [0] needs to run first, and then any ...
4
votes
3answers
2k views

A good, simple book/resource on Parallel Programming in C++ for scientific computing

I am a Mechanical Engineering grad student, currently working on a project which will be scaled up in the new future to require quite some processing power. I am using C++ for the code that I have, ...
4
votes
2answers
254 views

Leveraging scipy for matrix free finite elements

This will be a very general question. I have a 3D finite element code in Python which I would like to extend to handle "large" problems (~10^8 unknowns in the global system). Right now I am using the ...
4
votes
5answers
2k views

Finding the correct Molecular Dynamics library

I just started working on some Biophysics research, and I was looking around for a good MD library to use. There is one right now at the university set up in C, with openMC parallelization, but the ...
4
votes
2answers
2k views

Many processors reading a single HDF5 file

I'm working on a code that we eventually plan to scale up to 10's or 100's of thousands of processors (using MPI). I have a single HDF5 file (mesh nodes and connectivity, etc) that needs to be read ...
4
votes
3answers
152 views

Offline (visualisation) rendering in scientific computing

I need to simulate the movement of a large number of agents. The processes that govern the agents' movement are complex and so the entire process requires parallelisation. The output from this ...
4
votes
1answer
514 views

Increasing thread number degrades performance

I have a problem with parallelization and the brownian dynamics (molecular dynamics) code that I am using. We have our own home-grown framework at the university, and recently we've made the change ...