Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion 08IO/index.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
title: MPI File I/O
title: Not covered (MPI File I/O)
---

## Parallel Input and Output
Expand Down
21 changes: 14 additions & 7 deletions 11Performance/02valgrind.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,26 +51,33 @@ git clone https://github.com/UCL-RITS/research-computing-with-cpp
Creating a virtual machine is optional on Linux, and necessary on Windows and Mac OS/X

```
> docker-machine create cpp_course \
> docker-machine create cppcourse \
--driver virtualbox \
--virtualbox-memory 4000 \
--virtualbox-cpu-count 2
> eval $(docker-machine env cpp_course)
```

The last lines lets docker know on which VM it should create containers.
The output from the last command will tell you what expression to run to tell
docker what virtual machine to use.

On Linux and Mac, it will be:

```
> eval $(docker-machine env cppcourse)
```


Then ssh into the machine and look for your home directory:

```
> docker-machine ssh cpp_course
> docker-machine ssh cppcourse
> pwd
# Mac users
> ls /Users/
# Linux users
> ls /home
> ls /hosthome
# Windows users
# uhm, no idea :(, look around and let me know!
> ls /c/Users/
```

Then, create a Dockerfile specifying the container we want:
Expand Down Expand Up @@ -127,7 +134,7 @@ It has memory leaks and bugs. Investigate and correct using valgrind:
-w /path/to/source/on/container \
course_container \
valgrind -v --leak-check=full --show-leak-kinds=all \
--track-origin=yes ./awful
--track-origins=yes ./awful
```

## Running valgrind on program called `less_bad`
Expand Down
6 changes: 6 additions & 0 deletions 11Performance/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,17 +10,23 @@ Mac OS/X:
> brew install Caskroom/cask/virtualbox
> brew install docker-machine
> brew install docker
> brew install qcachegrind
```

or

```
> brew install Caskroom/cask/docker-toolbox
```

Linux:

- docker https://www.docker.com/community-edition
- docker machine (optional): https://docs.docker.com/machine/install-machine/
- qcachegrind or kcachegrind

Windows or Mac OS/X:

- https://www.docker.com/products/docker-toolbox

## Side-note: Flynn's Taxonomy of Parallelization
Expand Down