Project

General

Profile

Elements of Research Computing » History » Version 8

Miguel Dias Costa, 15/11/2011 14:22

1 1 Miguel Dias Costa
h1. Elements of Research Computing
2 1 Miguel Dias Costa
3 8 Miguel Dias Costa
The goal of this document is to introduce some general concepts, tools and best practices for research oriented computing. Advanced documents for specific topics can be arranged according to demand. Authors/speakers for specific topics are also welcome.
4 1 Miguel Dias Costa
5 3 Miguel Dias Costa
h2. Preliminary remarks
6 3 Miguel Dias Costa
7 3 Miguel Dias Costa
The categorization "Research Computing" was chosen because, on one hand, that's the audience of this document, researchers that use computational tools; on the other hand, traditional terms like HPC, Grid, Cloud tend to separate from the onset the infrastructure that is going to be used to solve a specific problem, but in most cases one doesn't know what the best infrastructure(s) will be.
8 3 Miguel Dias Costa
9 3 Miguel Dias Costa
In any case, not all aspects of Research Computing will be covered - we will focus mainly on non-interactive "jobs" that have some sort of intensive requirement such as performance, memory, network, storage, etc.
10 3 Miguel Dias Costa
11 3 Miguel Dias Costa
h2. Some terminology
12 3 Miguel Dias Costa
13 3 Miguel Dias Costa
* High Performance
14 3 Miguel Dias Costa
** perform a specific task in a short period of time (e.g. low latency)
15 3 Miguel Dias Costa
16 3 Miguel Dias Costa
* High Throughput
17 3 Miguel Dias Costa
** perform many tasks in a fixed period of time (e.g. high bandwidth)
18 3 Miguel Dias Costa
19 3 Miguel Dias Costa
* Concurrent
20 3 Miguel Dias Costa
** concurrency is a property of the algorithm (e.g. independence of tasks)
21 3 Miguel Dias Costa
22 3 Miguel Dias Costa
* Parallel
23 3 Miguel Dias Costa
** concurrent parts of an algorithm can (or not) be run in parallel
24 3 Miguel Dias Costa
25 3 Miguel Dias Costa
* Distributed
26 3 Miguel Dias Costa
** distributed generally means loosely parallel (e.g. asynchronous)
27 3 Miguel Dias Costa
28 3 Miguel Dias Costa
* Grid
29 3 Miguel Dias Costa
** Grid usally means a collection of clusters with interoperability at scheduler level
30 3 Miguel Dias Costa
31 3 Miguel Dias Costa
* Cloud
32 3 Miguel Dias Costa
** Cloud means a lot of different things (e.g. Infraestructure/Platform/Software as Services)
33 3 Miguel Dias Costa
34 3 Miguel Dias Costa
h2. Aspects of Research Computing
35 3 Miguel Dias Costa
36 6 Miguel Dias Costa
* [[Reproducibility]]
37 6 Miguel Dias Costa
* [[Project management]]
38 6 Miguel Dias Costa
* [[Coding]]
39 6 Miguel Dias Costa
* [[Debugging]]
40 1 Miguel Dias Costa
* [[Profiling]]
41 6 Miguel Dias Costa
* [[Optimization]]
42 5 Miguel Dias Costa
* [[Parallelization]]
43 8 Miguel Dias Costa
* ...