Commit 83207cd1 authored by Repo Updater's avatar Repo Updater
Browse files

31d820d3 Fix typos

parent cc36f8bb
......@@ -158,7 +158,7 @@
"* source code\n",
"* installation routines (`setup.py`)\n",
"* user documentation - how to use the package\n",
"* develper documentation - how to develop code for the package\n",
"* developer documentation - how to develop code for the package\n",
"* software tests\n",
"* commonly expected text files to help people get information quickly (e.g. on public repositories)\n",
" * `README`\n",
......@@ -320,11 +320,11 @@
"source": [
"## Testing\n",
"* Tests are a central part of the software development life cycle\n",
" * Avoid regression\n",
" * Facilitate collaboration\n",
" * avoid regression\n",
" * facilitate collaboration\n",
"* **Continuous integration**:\n",
" * merge contributions often\n",
" * run tests automatically at each code commit, e.g. via GitLab-CI\n",
" * run tests automatically for each code commit, e.g. via GitLab-CI\n",
"* Unit tests\n",
" * test functions, classes, modules individually\n",
"* Integration tests\n",
......
......@@ -121,12 +121,13 @@
"\n",
"#### How does Python fit in here?\n",
"\n",
"* Level 1: distributed memory, communication via messages\n",
"* Level 1: distributed memory, communication via messages over a network\n",
" * `mpi4py`\n",
"* Levels 2 and 3: shared memory\n",
" * `mpi4py`\n",
" * `multiprocessing`\n",
" * threading, e.g. OpenMP, Cython, Numba, NumPy using an optimized math library like MKL\n",
"* Level 4: hope that the libraries (NumPy $\\to$ MKL) or compilers (C/F, Cython, Numba) do it right!"
"* Level 4: rely on libraries (NumPy $\\to$ MKL) or compilers (C/F, Cython, Numba) to do it right!"
]
},
{
......@@ -257,7 +258,8 @@
"source": [
"## Parallelism in Python\n",
"\n",
"* Threads (not useful for HPC)\n",
"* Python-internal threads (not useful for HPC!)\n",
"* multithreaded modules or libraries (e.g. Numba, NumPy with MKL, etc.)\n",
"* Processes (shared memory)\n",
" * `multiprocessing`, comparably easy to use\n",
" * restricted to one node\n",
......@@ -570,7 +572,7 @@
},
{
"cell_type": "code",
"execution_count": 4,
"execution_count": null,
"metadata": {},
"outputs": [
{
......@@ -595,7 +597,7 @@
"p.start()\n",
"print(q.get(), q.get(), q.get())\n",
"p.join()\n",
"#print(q.get(), q.get(), q.get())"
"print(q.get(), q.get(), q.get())"
]
},
{
......@@ -1883,8 +1885,8 @@
"#SBATCH -e ./job.err.%j\n",
"#SBATCH -D ./\n",
"#SBATCH -J MPI4PY\n",
"#SBATCH --nodes=2 # launch 192 MPI tasks\n",
"#SBATCH --ntasks-per-node=96 # on two full nodes (i.e. on 2 x 96 physical cores)\n",
"#SBATCH --nodes=2 # launch 144 MPI tasks\n",
"#SBATCH --ntasks-per-node=72 # on two full nodes (i.e. on 2 x 72 physical cores)\n",
"#SBATCH --cpus-per-task=1\n",
"#SBATCH --time=00:10:00\n",
"\n",
......@@ -2223,7 +2225,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.3"
"version": "3.8.8"
}
},
"nbformat": 4,
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment