Skip to main content

All Questions

Tagged with or
Filter by
Sorted by
Tagged with
67 votes
13 answers
52k 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 ...
drjrm3's user avatar
  • 2,159
57 votes
7 answers
23k 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. ...
cfdgeek's user avatar
  • 703
37 votes
7 answers
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,...
Aron Ahmadia's user avatar
  • 6,911
35 votes
1 answer
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 ...
Szabolcs's user avatar
  • 2,600
25 votes
5 answers
5k 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 ...
tel's user avatar
  • 1,370
24 votes
3 answers
21k 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....
FrenchKheldar's user avatar
23 votes
6 answers
5k 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?
Allan P. Engsig-Karup's user avatar
20 votes
3 answers
3k 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/...
Pedro's user avatar
  • 9,563
19 votes
5 answers
7k 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 ...
Fomite's user avatar
  • 2,403
19 votes
4 answers
14k 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 ...
Andrew's user avatar
  • 711
18 votes
5 answers
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 ...
apetros85's user avatar
  • 333
17 votes
4 answers
10k 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, ...
tmaric's user avatar
  • 1,916
17 votes
3 answers
357 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. ...
Tangurena's user avatar
  • 596
16 votes
2 answers
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 ...
gnzlbg's user avatar
  • 1,085
16 votes
3 answers
742 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 ...
Fomite's user avatar
  • 2,403
15 votes
4 answers
4k 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 ...
user4624937's user avatar
14 votes
4 answers
36k 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 ...
seb's user avatar
  • 994
13 votes
5 answers
612 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 ...
Allan P. Engsig-Karup's user avatar
11 votes
1 answer
261 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. ...
Jed Brown's user avatar
  • 25.8k
10 votes
2 answers
260 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 ...
Tomas Creemers's user avatar
10 votes
4 answers
2k 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 ...
Sebastian's user avatar
  • 317
10 votes
2 answers
466 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 ...
Pedro's user avatar
  • 9,563
9 votes
2 answers
10k 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 ...
David Z's user avatar
  • 3,413
8 votes
4 answers
395 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 ...
shuhalo's user avatar
  • 3,720
8 votes
2 answers
1k 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 ...
Sam Hatfield's user avatar
8 votes
4 answers
230 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 ...
NuclearAlchemist's user avatar
8 votes
2 answers
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 ...
Chandan's user avatar
  • 183
8 votes
4 answers
1k 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?
mbq's user avatar
  • 533
8 votes
2 answers
262 views

How to find a computational bottleneck

I am a PhD student and my lab has developed a code to run simulations. It relies on external libraries and code my lab has written. I've run a strong scaling study which shows poor performance, see ...
nyaki's user avatar
  • 81
8 votes
1 answer
417 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 ...
shuhalo's user avatar
  • 3,720
8 votes
2 answers
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 ...
shuhalo's user avatar
  • 3,720
8 votes
1 answer
153 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 ...
Allan P. Engsig-Karup's user avatar
7 votes
5 answers
289 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 ...
Spiralarchitect's user avatar
7 votes
5 answers
332 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 ...
Ami's user avatar
  • 241
7 votes
4 answers
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 ...
Open the way's user avatar
7 votes
1 answer
237 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 ...
Emre's user avatar
  • 348
6 votes
2 answers
2k 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) ...
HCSthe2nd's user avatar
  • 163
6 votes
3 answers
6k 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 ...
ShadowWarrior's user avatar
6 votes
1 answer
296 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 ...
Reid.Atcheson's user avatar
6 votes
1 answer
679 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 ...
FrenchKheldar's user avatar
5 votes
5 answers
360 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 ...
Allan P. Engsig-Karup's user avatar
5 votes
2 answers
6k 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 ...
gpuguy's user avatar
  • 181
5 votes
3 answers
288 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 ...
Michael Schlottke-Lakemper's user avatar
5 votes
1 answer
128 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 ...
Nick Alger's user avatar
  • 3,225
5 votes
1 answer
117 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 ...
Quevvy's user avatar
  • 51
4 votes
3 answers
3k 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, ...
Ayush Agrawal's user avatar
4 votes
2 answers
347 views

Direct Numerical Simulation of reacting flows

I need to write a DNS code for simulating reacting flows in turbulent conditions. The code has to be highly scalable, because the computational cost of simulations is expected very large. My idea is ...
alberto's user avatar
  • 41
4 votes
2 answers
599 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 ...
user3482876's user avatar
4 votes
5 answers
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 ...
NuclearAlchemist's user avatar
4 votes
2 answers
3k 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 ...
Truman Ellis's user avatar