SAUCE
Home
Events
Listing
Future
Previous
Accelerated Computing with GPUs 2020
Data Mining - Winter 20/21
High Performance Computing 2019
Einführung in die Bioinformatik WS19/20
Computational Logic
Parallel Algorithms and Architectures 2019
DSEA Praktikum 2018/19
Deep Learning 2018
High Performance Computing 2018
Parallel Algorithms and Architectures 2018
Datenstrukturen und effiziente Algorithmen Ws 18/19
EiP SoSe 18
bio-st-18
EiP WS 2017/18
High Performance Computing 2017
Datenstrukturen und effiziente Algorithmen WiSe 17/18
PS SS 2017
Einfuehrung in die Programmierung SS17
Parallel Algorithms and Architectures 2017
High Performance Computing 2016
DSEA 2016/17
EiP WS2016/17
Parallel Algorithms and Architectures 2016
PS SS 2016
Krypto SS 2016
EiP SS 2016
DSEA Praktikum WS 2015/16
DSEA WS 2015/16
News
Documentation
About
Changelog
Roadmap
Deutsche Dokumentation
Tips and Tricks
Test configuration
Language information
Contact
Login
High Performance Computing 2019
Sheet 7 (Atomics, Queue)
Pair Programming
Sheet 2 (AVX Shuffles, Instruction Parallelism)
Sheet 3 (Stochastic PI, Shallow Deep Learning)
Sheet 4 (Conjugate Gradient with MPI, Asynchronous 2D Jacobi Partitioning)
Sheet 6 (std::async, block-cyclic distribution)
Sheet 7 (Atomics, Queue)
Sheet 8 (Sorting, Riemann Zeta)
Sheet 5 (Reverse-Engineering MPI, SUMMA)
Sheet 9 (Data Dependencies, Triangular Matrix Vector)
Sheet 10: Lockfree Hashmaps
Sheet 11 (Position Based Dynamics)
Sheet 12 ( Outer Product, Kmer Counting)
Tutorial 0: C++ Examples
Tutorials_extra
All Exercises
testSheet
Sheet 2 Redoable
Sheet 3 Redoable
Sheet 4 Redoable
Sheet 5 Redoable
Sheet 6 Redoable
Sheet 7 Redoable
Sheet 8 Redoable
Sheet 9 Redoable
Sheet 10 Redoable
Sheet 11 Redoable
Sheet 12 Redoable
Task 1 (Atomics)
Task 1 (Atomics)
Task 2 (Compare and Swap)
Task 3 (Parallel Queue)
Task 1 (Atomics)
Assignment
A possible Solution can found at
https://sauce.zdv.uni-mainz.de/submissions/60298/show
Scaffold Head
#include <iostream> #include <string> #include <thread> #include <chrono> #include <atomic> #include <mutex> #define NUM_REPEATS (10000000L) #define NUM_PROCS (6) std::mutex mutex; template <class T> void false_inc(volatile T * sum_ptr) { for (size_t i = 0; i < NUM_REPEATS; i++) (*sum_ptr)++; }
Start time:
Do 05 Dez 2019 12:00:00
End time:
Mi 11 Dez 2019 12:00:00
General test timeout:
10.0 seconds
Tests
Comment prefix
#
Given input
Expected output
Parallel programming is fun!