-
Notifications
You must be signed in to change notification settings - Fork 4
/
libraries.page
77 lines (41 loc) · 1.63 KB
/
libraries.page
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
---
format: Markdown
title: C++ Libraries
...
# Boost
Period.
I have a specifically intense crush on the Boost Graph Library and Spirit.
Trivia: there are more people that have been in space than code
contributors to Boost.
# Signal Processing
## OpenCV
Computer vision library.
## FFTW (C library)
The "Fastest Fourier Transformation of the West", a must-have.
## ffmpeg (C library)
Video and audio encoder/decoder library. Second to none.
# GPU Rendering
- [Granite](https://github.com/Themaister/Granite) \
[related blog article](http://themaister.net/blog/2017/08/15/render-graphs-and-vulkan-a-deep-dive/)
- [DirectX Examples](https://github.com/Microsoft/DirectX-Graphics-Samples)
- [Vulkan Memory Allocator](https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator)
# High Performance Computing
## DASH
A Partitioned Global Address Space library, mimicking STL for high performance
computing clusters. \
Containers: array, unordered_map, list, narray (n-dim. array) \
Algorithms: essential STL equivalents, some use cases under development, great scalability for distributed sorting
## HPX
Similar to DASH, task-parallel programming model. \
Containers: no STL-compliant containers (no global random access or not distributed)
\
Algorithms: all STL algorithms, task-parallel implementations with robust scalability
## Blaze
The high performance math library. A real gem!
# Machine Learning
## Tensorflow
Of course.
# Python Bindings
Writing Python modules in C++ is a breeze thanks to `pybind11`. \
Python owes its success in HPC and data science to modules implemented in C++ for
performance, like scipy and numpy.