{ "cells": [ { "cell_type": "markdown", "id": "c38240c3-7646-497b-a3ac-d9cfa6c974f2", "metadata": {}, "source": [ "# Parallel processing of a stack of data stored in HDF5 with multi-threading\n", "\n", "This tutorial explains how it is possible to treat in parallel a large HDF5 dataset which does not fit into the computer memory.\n", "\n", "![Typical workflow](workflow.png)\n", "\n", "For this tutorial, a recent version of pyFAI is needed (>=0.22, summer 2022).\n", "\n", "This tutorial expains how to take benefit from multi-threading. This framework is not very popular in the Python world due to the [Global Interpreter Lock (GIL)](https://wiki.python.org/moin/GlobalInterpreterLock), but properly written C-code which does release the GIL can be very fast, sometimes as fast as GPU code (on large computers).\n", "\n", "**Credits:**\n", "\n", "* Thomas Vincent (ESRF) for the parallel decompression of HDF5 chunks and the Jupyter-slurm\n", "* Pierre Paleo (ESRF) for struggling with this kind of stuff with GPUs\n", "* Jon Wright (ESRF) for the CSC integrator, while implemented in serial is multithreading friendly + HDF5 investigation\n", "* The French-CRG for providing a manycore computer (2 x 32-core AMD EPYC 75F3)\n", "\n", "**Nota:** No GPU is needed for this tutorial!\n", "\n", "**Important:** the `bitshuffle` module needs to be compiled without OpenMP, since the tutorial aims at demonstrating that Python threads can be almost as efficient as OpenMP. If you have a doubt about OpenMP, please uncomment the environment variable OMP_NUM_THREADS reset in the second cell. This will unfortunately bias the performance measurement of pyFAI with the CSR sparse-matrix multiplication.\n", "\n", "## 1. Description of the computer.\n", "\n", "The results obtained vary a lot as function of the computer and its topology. This section details some internal details about the computer." ] }, { "cell_type": "code", "execution_count": 1, "id": "5eb5f112-bf32-4413-85ea-67eb88bf7ee9", "metadata": {}, "outputs": [], "source": [ "%matplotlib inline\n", "# use `widget` for better user experience; `inline` is for documentation generation" ] }, { "cell_type": "code", "execution_count": 2, "id": "638e4966-b05e-47e2-a4b0-5843b1b5ff93", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Working on computer lintaillefer.\n" ] } ], "source": [ "import sys, os, collections, struct, time, socket\n", "# Ensure OpenMP is disabled\n", "os.environ[\"OMP_NUM_THREADS\"] = \"1\"\n", "import numpy, pyFAI\n", "import h5py, hdf5plugin\n", "from queue import Queue\n", "import threading\n", "import bitshuffle\n", "from matplotlib.pyplot import subplots\n", "start_time = time.time()\n", "Item = collections.namedtuple(\"Item\", \"index data\")\n", "print(f\"Working on computer {socket.gethostname()}.\")" ] }, { "cell_type": "code", "execution_count": 3, "id": "210e4de4-184b-4c64-872e-5c1aaf080501", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Working with 64 threads. Mind OpenMP needs to be disabled in the bitshuffle code !\n" ] } ], "source": [ "nbthreads = len(os.sched_getaffinity(0))\n", "print(f\"Working with {nbthreads} threads. Mind OpenMP needs to be disabled in the bitshuffle code !\")" ] }, { "cell_type": "code", "execution_count": 4, "id": "8e649b79-f024-4635-ac8f-fc68827c60aa", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Architecture: x86_64\n", " CPU op-mode(s): 32-bit, 64-bit\n", " Address sizes: 43 bits physical, 48 bits virtual\n", " Byte Order: Little Endian\n", "CPU(s): 64\n", " On-line CPU(s) list: 0-63\n", "Vendor ID: AuthenticAMD\n", " Model name: AMD Ryzen Threadripper PRO 3975WX 32-Cores\n", " CPU family: 23\n", " Model: 49\n", " Thread(s) per core: 2\n", " Core(s) per socket: 32\n", " Socket(s): 1\n", " Stepping: 0\n", " Frequency boost: enabled\n", " CPU(s) scaling MHz: 54%\n", " CPU max MHz: 4368.1641\n", " CPU min MHz: 2200.0000\n", " BogoMIPS: 6987.30\n", " Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mc\n", " a cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall n\n", " x mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_go\n", " od nopl nonstop_tsc cpuid extd_apicid aperfmperf rapl p\n", " ni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe\n", " popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy sv\n", " m extapic cr8_legacy abm sse4a misalignsse 3dnowprefetc\n", " h osvw ibs skinit wdt tce topoext perfctr_core perfctr_\n", " nb bpext perfctr_llc mwaitx cpb cat_l3 cdp_l3 hw_pstate\n", " ssbd mba ibpb stibp vmmcall fsgsbase bmi1 avx2 smep bm\n", " i2 cqm rdt_a rdseed adx smap clflushopt clwb sha_ni xsa\n", " veopt xsavec xgetbv1 cqm_llc cqm_occup_llc cqm_mbm_tota\n", " l cqm_mbm_local clzero irperf xsaveerptr rdpru wbnoinvd\n", " arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean \n", " flushbyasid decodeassists pausefilter pfthreshold avic \n", " v_vmsave_vmload vgif v_spec_ctrl umip rdpid overflow_re\n", " cov succor smca sev sev_es\n", "Virtualization features: \n", " Virtualization: AMD-V\n", "Caches (sum of all): \n", " L1d: 1 MiB (32 instances)\n", " L1i: 1 MiB (32 instances)\n", " L2: 16 MiB (32 instances)\n", " L3: 128 MiB (8 instances)\n", "NUMA: \n", " NUMA node(s): 4\n", " NUMA node0 CPU(s): 0-7,32-39\n", " NUMA node1 CPU(s): 8-15,40-47\n", " NUMA node2 CPU(s): 16-23,48-55\n", " NUMA node3 CPU(s): 24-31,56-63\n", "Vulnerabilities: \n", " Gather data sampling: Not affected\n", " Itlb multihit: Not affected\n", " L1tf: Not affected\n", " Mds: Not affected\n", " Meltdown: Not affected\n", " Mmio stale data: Not affected\n", " Retbleed: Mitigation; untrained return thunk; SMT enabled with ST\n", " IBP protection\n", " Spec rstack overflow: Mitigation; safe RET\n", " Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl\n", " Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer\n", " sanitization\n", " Spectre v2: Mitigation; Retpolines, IBPB conditional, STIBP always-\n", " on, RSB filling, PBRSB-eIBRS Not affected\n", " Srbds: Not affected\n", " Tsx async abort: Not affected\n" ] } ], "source": [ "!lscpu" ] }, { "cell_type": "code", "execution_count": 5, "id": "97da69b1-f59d-4bf7-99ff-19b426cdccce", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "available: 4 nodes (0-3)\n", "node 0 cpus: 0 1 2 3 4 5 6 7 32 33 34 35 36 37 38 39\n", "node 0 size: 128811 MB\n", "node 0 free: 89301 MB\n", "node 1 cpus: 8 9 10 11 12 13 14 15 40 41 42 43 44 45 46 47\n", "node 1 size: 128971 MB\n", "node 1 free: 42401 MB\n", "node 2 cpus: 16 17 18 19 20 21 22 23 48 49 50 51 52 53 54 55\n", "node 2 size: 129015 MB\n", "node 2 free: 79357 MB\n", "node 3 cpus: 24 25 26 27 28 29 30 31 56 57 58 59 60 61 62 63\n", "node 3 size: 128998 MB\n", "node 3 free: 56567 MB\n", "node distances:\n", "node 0 1 2 3 \n", " 0: 10 12 12 12 \n", " 1: 12 10 12 12 \n", " 2: 12 12 10 12 \n", " 3: 12 12 12 10 \n" ] } ], "source": [ "!numactl --hardware" ] }, { "cell_type": "code", "execution_count": 6, "id": "345903ed-e336-4b37-b520-34790b95252d", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Invalid MIT-MAGIC-COOKIE-1 key\n", "Machine (504GB total)\n", " Package L#0\n", " Group0 L#0\n", " NUMANode L#0 (P#0 126GB)\n", " L3 L#0 (16MB)\n", " L2 L#0 (512KB) + L1d L#0 (32KB) + L1i L#0 (32KB) + Core L#0\n", " PU L#0 (P#0)\n", " PU L#1 (P#32)\n", " L2 L#1 (512KB) + L1d L#1 (32KB) + L1i L#1 (32KB) + Core L#1\n", " PU L#2 (P#1)\n", " PU L#3 (P#33)\n", " L2 L#2 (512KB) + L1d L#2 (32KB) + L1i L#2 (32KB) + Core L#2\n", " PU L#4 (P#2)\n", " PU L#5 (P#34)\n", " L2 L#3 (512KB) + L1d L#3 (32KB) + L1i L#3 (32KB) + Core L#3\n", " PU L#6 (P#3)\n", " PU L#7 (P#35)\n", " L3 L#1 (16MB)\n", " L2 L#4 (512KB) + L1d L#4 (32KB) + L1i L#4 (32KB) + Core L#4\n", " PU L#8 (P#4)\n", " PU L#9 (P#36)\n", " L2 L#5 (512KB) + L1d L#5 (32KB) + L1i L#5 (32KB) + Core L#5\n", " PU L#10 (P#5)\n", " PU L#11 (P#37)\n", " L2 L#6 (512KB) + L1d L#6 (32KB) + L1i L#6 (32KB) + Core L#6\n", " PU L#12 (P#6)\n", " PU L#13 (P#38)\n", " L2 L#7 (512KB) + L1d L#7 (32KB) + L1i L#7 (32KB) + Core L#7\n", " PU L#14 (P#7)\n", " PU L#15 (P#39)\n", " Group0 L#1\n", " NUMANode L#1 (P#1 126GB)\n", " L3 L#2 (16MB)\n", " L2 L#8 (512KB) + L1d L#8 (32KB) + L1i L#8 (32KB) + Core L#8\n", " PU L#16 (P#8)\n", " PU L#17 (P#40)\n", " L2 L#9 (512KB) + L1d L#9 (32KB) + L1i L#9 (32KB) + Core L#9\n", " PU L#18 (P#9)\n", " PU L#19 (P#41)\n", " L2 L#10 (512KB) + L1d L#10 (32KB) + L1i L#10 (32KB) + Core L#10\n", " PU L#20 (P#10)\n", " PU L#21 (P#42)\n", " L2 L#11 (512KB) + L1d L#11 (32KB) + L1i L#11 (32KB) + Core L#11\n", " PU L#22 (P#11)\n", " PU L#23 (P#43)\n", " L3 L#3 (16MB)\n", " L2 L#12 (512KB) + L1d L#12 (32KB) + L1i L#12 (32KB) + Core L#12\n", " PU L#24 (P#12)\n", " PU L#25 (P#44)\n", " L2 L#13 (512KB) + L1d L#13 (32KB) + L1i L#13 (32KB) + Core L#13\n", " PU L#26 (P#13)\n", " PU L#27 (P#45)\n", " L2 L#14 (512KB) + L1d L#14 (32KB) + L1i L#14 (32KB) + Core L#14\n", " PU L#28 (P#14)\n", " PU L#29 (P#46)\n", " L2 L#15 (512KB) + L1d L#15 (32KB) + L1i L#15 (32KB) + Core L#15\n", " PU L#30 (P#15)\n", " PU L#31 (P#47)\n", " Group0 L#2\n", " NUMANode L#2 (P#2 126GB)\n", " L3 L#4 (16MB)\n", " L2 L#16 (512KB) + L1d L#16 (32KB) + L1i L#16 (32KB) + Core L#16\n", " PU L#32 (P#16)\n", " PU L#33 (P#48)\n", " L2 L#17 (512KB) + L1d L#17 (32KB) + L1i L#17 (32KB) + Core L#17\n", " PU L#34 (P#17)\n", " PU L#35 (P#49)\n", " L2 L#18 (512KB) + L1d L#18 (32KB) + L1i L#18 (32KB) + Core L#18\n", " PU L#36 (P#18)\n", " PU L#37 (P#50)\n", " L2 L#19 (512KB) + L1d L#19 (32KB) + L1i L#19 (32KB) + Core L#19\n", " PU L#38 (P#19)\n", " PU L#39 (P#51)\n", " L3 L#5 (16MB)\n", " L2 L#20 (512KB) + L1d L#20 (32KB) + L1i L#20 (32KB) + Core L#20\n", " PU L#40 (P#20)\n", " PU L#41 (P#52)\n", " L2 L#21 (512KB) + L1d L#21 (32KB) + L1i L#21 (32KB) + Core L#21\n", " PU L#42 (P#21)\n", " PU L#43 (P#53)\n", " L2 L#22 (512KB) + L1d L#22 (32KB) + L1i L#22 (32KB) + Core L#22\n", " PU L#44 (P#22)\n", " PU L#45 (P#54)\n", " L2 L#23 (512KB) + L1d L#23 (32KB) + L1i L#23 (32KB) + Core L#23\n", " PU L#46 (P#23)\n", " PU L#47 (P#55)\n", " Group0 L#3\n", " NUMANode L#3 (P#3 126GB)\n", " L3 L#6 (16MB)\n", " L2 L#24 (512KB) + L1d L#24 (32KB) + L1i L#24 (32KB) + Core L#24\n", " PU L#48 (P#24)\n", " PU L#49 (P#56)\n", " L2 L#25 (512KB) + L1d L#25 (32KB) + L1i L#25 (32KB) + Core L#25\n", " PU L#50 (P#25)\n", " PU L#51 (P#57)\n", " L2 L#26 (512KB) + L1d L#26 (32KB) + L1i L#26 (32KB) + Core L#26\n", " PU L#52 (P#26)\n", " PU L#53 (P#58)\n", " L2 L#27 (512KB) + L1d L#27 (32KB) + L1i L#27 (32KB) + Core L#27\n", " PU L#54 (P#27)\n", " PU L#55 (P#59)\n", " L3 L#7 (16MB)\n", " L2 L#28 (512KB) + L1d L#28 (32KB) + L1i L#28 (32KB) + Core L#28\n", " PU L#56 (P#28)\n", " PU L#57 (P#60)\n", " L2 L#29 (512KB) + L1d L#29 (32KB) + L1i L#29 (32KB) + Core L#29\n", " PU L#58 (P#29)\n", " PU L#59 (P#61)\n", " L2 L#30 (512KB) + L1d L#30 (32KB) + L1i L#30 (32KB) + Core L#30\n", " PU L#60 (P#30)\n", " PU L#61 (P#62)\n", " L2 L#31 (512KB) + L1d L#31 (32KB) + L1i L#31 (32KB) + Core L#31\n", " PU L#62 (P#31)\n", " PU L#63 (P#63)\n", " HostBridge\n", " PCIBridge\n", " PCI 01:00.0 (Ethernet)\n", " Net \"enp1s0\"\n", " PCIBridge\n", " PCIBridge\n", " PCIBridge\n", " PCI 04:00.0 (Ethernet)\n", " Net \"enp4s0\"\n", " PCIBridge\n", " PCI 06:00.0 (SATA)\n", " Block(Disk) \"sda\"\n", " PCIBridge\n", " PCI 07:00.0 (SATA)\n", " Block(Disk) \"sdd\"\n", " Block(Disk) \"sdb\"\n", " Block(Disk) \"sdc\"\n", " HostBridge\n", " PCIBridge\n", " PCI 21:00.0 (NVMExp)\n", " Block(Disk) \"nvme1n1\"\n", " PCIBridge\n", " PCI 22:00.0 (NVMExp)\n", " Block(Disk) \"nvme2n1\"\n", " PCIBridge\n", " PCI 23:00.0 (Ethernet)\n", " Net \"eth4\"\n", " HostBridge\n", " PCIBridge\n", " PCI 41:00.0 (VGA)\n", " CoProc(OpenCL) \"opencl0d1\"\n", " GPU(Display) \":0.0\"\n", " PCIBridge\n", " PCI 42:00.0 (NVMExp)\n", " Block(Disk) \"nvme0n1\"\n", " HostBridge\n", " PCIBridge\n", " PCI 61:00.0 (VGA)\n", " CoProc(OpenCL) \"opencl0d0\"\n" ] } ], "source": [ "!lstopo --of console" ] }, { "cell_type": "markdown", "id": "d2c54705-4b6c-444b-b9f1-b763f6a8d915", "metadata": {}, "source": [ "## 2. Setup the enviroment:\n", "\n", "This is a purely virtual experiment, the tutorial tries to be representative of the processing for the beamline of Jon Wright: ESRF-ID11 this is why we will use an Eiger 4M detector with data integrated over 1000 bins. Those parameters can be tuned.\n", "\n", "Random data are generated to mimic the scattering of a liquid with Poisson noise. The input file is fairly small, since those data compress nicely. The speed of the drive used for temporary storage is likely to have a huge impact, especially if all data do not hold in memory !" ] }, { "cell_type": "code", "execution_count": 7, "id": "1cd22d82-d4fb-4d28-9960-0442989ca18c", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "HDF5PluginBuildConfig(openmp=False, native=False, bmi2=False, sse2=True, ssse3=False, avx2=False, avx512=False, cpp11=True, cpp14=True, cpp20=True, ipp=False, filter_file_extension='.so', embedded_filters=('blosc', 'blosc2', 'bshuf', 'bzip2', 'fcidecomp', 'lz4', 'sperr', 'sz', 'sz3', 'zfp', 'zstd'))" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "det = pyFAI.detector_factory(\"eiger_4M\")\n", "shape = det.shape\n", "dtype = numpy.dtype(\"uint32\")\n", "filename = \"/tmp/big.h5\"\n", "h5path = \"data\"\n", "nbins = 1000\n", "cmp = hdf5plugin.Bitshuffle()\n", "hdf5plugin.get_config().build_config" ] }, { "cell_type": "code", "execution_count": 8, "id": "daf4eec8-e364-43b6-b5af-8f279c6aed38", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Number of frames the computer can host in memory: 30143.226\n" ] } ], "source": [ "mem_bytes = os.sysconf('SC_PAGE_SIZE') * os.sysconf('SC_PHYS_PAGES')\n", "print(f\"Number of frames the computer can host in memory: {mem_bytes/(numpy.prod(shape)*dtype.itemsize):.3f}\")\n", "if os.environ.get('SLURM_MEM_PER_NODE'):\n", " print(f\"Number of frames the computer can host in memory with SLURM restrictions: {int(os.environ['SLURM_MEM_PER_NODE'])*(1<<20)/(numpy.prod(shape)*dtype.itemsize):.3f}\")" ] }, { "cell_type": "code", "execution_count": 9, "id": "bd038dc8-1e6d-4bd6-95b3-303f2d0f250b", "metadata": {}, "outputs": [], "source": [ "#The computer being limited to 64G of RAM, the number of frames actually possible is 3800.\n", "nbframes = 4096 # slightly larger than the maximum achievable ! Such a dataset should not host in memory." ] }, { "cell_type": "code", "execution_count": 10, "id": "a32bd8fb-9b64-4564-9a69-67a759bf3427", "metadata": {}, "outputs": [], "source": [ "#Prepare a frame with little count so that it compresses well\n", "geo = {\"detector\": det, \n", " \"wavelength\": 1e-10}\n", "ai = pyFAI.load(geo)\n", "q = numpy.arange(15)\n", "img = ai.calcfrom1d(q, 100/(1+q*q))\n", "frame = numpy.random.poisson(img).astype(dtype)" ] }, { "cell_type": "code", "execution_count": 11, "id": "53b49350-6b0c-4c3b-ba5b-ece50cd6fe98", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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1avwnd/5nfjmb/5mADhqY34uz4EDB/CFL3xhXfxt2ldmbKX1pYsuusi/P/3pT8fZZ5+NJz7xifit3/otnHDCCV9BzrbSVlqdXvSiF/n3pz3taXj605+Or//6r8dNN92E5zznOV9Bzv55pEsvvRQf/ehH8ad/+qdfaVbStKkip1NOOQXbtm0bVpbcc8892L1791eIq39e6aSTTsK/+Bf/Ap/85Cexe/duPPTQQ7jvvvtCHpbn7t27U3nbvWM9mQxW6eTu3bvx6U9/Otw/ePAg7r333i05byA96UlPwimnnIJPfvKTALbkuipddtlleM973oP3ve99+Nqv/Vq/frTG/FyenTt3rtvp3VTgtH37djzzmc/EDTfc4NeWyyVuuOEGnHPOOV9Bzv75pAceeAD/5//8Hzz+8Y/HM5/5TDzqUY8K8rzjjjtw1113uTzPOecc/NVf/VUwAtdffz127tyJpzzlKV92/h9p6YwzzsDu3buDDA8cOIBbbrklyPC+++7Drbfe6nluvPFGLJdLnH322Z7n5ptvxsMPP+x5rr/+epx55pl47GMf+2VqzSM7/f3f/z0+85nP4PGPfzyALblmqdaKyy67DO9+97tx44034owzzgj3j9aYP+eccwINy7MhO3y4qzweqemd73xn3bFjR7322mvrxz72sfryl7+8nnTSSWFlyVbq6TWveU296aab6p133ln/7M/+rJ533nn1lFNOqZ/+9KdrrdOy0ic84Qn1xhtvrB/60IfqOeecU8855xwvb8tKzz///Lpv37763ve+t371V3/1MbWU/HOf+1z9yEc+Uj/ykY9UAPWNb3xj/chHPlL/9m//ttY6LSU/6aST6u/+7u/W2267rX7v935vupT8W77lW+ott9xS//RP/7R+wzd8Q1jyfN9999XTTjut/uAP/mD96Ec/Wt/5znfWRz/60Zt2yXOtq+X6uc99rv7kT/5k3bt3b73zzjvrH//xH9dnPOMZ9Ru+4RvqF7/4RaexJdeYXvGKV9Rdu3bVm266KSzB/6d/+ifPczTGvC0lf+1rX1s//vGP1ze/+c1bS8lrrfWXfumX6hOe8IS6ffv2+u3f/u31Ax/4wFeapUdseuELX1gf//jH1+3bt9ev+ZqvqS984QvrJz/5Sb//hS98of74j/94fexjH1sf/ehH13/7b/9tvfvuuwONT33qU/Wiiy6qJ5xwQj3llFPqa17zmvrwww9/uZvyFUvve9/7KoDh76UvfWmtdVpO/jM/8zP1tNNOqzt27KjPec5z6h133BFofOYzn6kvfvGL62Me85i6c+fO+u///b+vn/vc50Kev/zLv6zf9V3fVXfs2FG/5mu+pr7+9a//cjXxK5JWyfWf/umf6vnnn1+/+qu/uj7qUY+qT3ziE+vLXvaywQndkmtMmTwB1F/7tV/zPEdrzL/vfe+r//Jf/su6ffv2+qQnPSnUsZ609T6nrbSVttJW2kqPuLSpnjltpa20lbbSVtocaQucttJW2kpbaSs94tIWOG2lrbSVttJWesSlLXDaSltpK22lrfSIS1vgtJW20lbaSlvpEZe2wGkrbaWttJW20iMubYHTVtpKW2krbaVHXNoCp620lbbSVtpKj7i0BU5baSttpa20lR5xaQucttJW2kpbaSs94tIWOG2lrbSVttJWesSl/z+Vuwft4t80lwAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# display the image\n", "fig,ax = subplots()\n", "ax.imshow(frame)" ] }, { "cell_type": "code", "execution_count": 12, "id": "17e3d7e2-de22-4d40-8230-39295f04e239", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Performances of the different algorithms for azimuthal integration of Eiger 4M image\n", "Using algorithm histogram : 589 ms ± 4.66 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)\n", "Using algorithm csc : 40.5 ms ± 433 μs per loop (mean ± std. dev. of 7 runs, 1 loop each)\n", "Using algorithm csr : 47.8 ms ± 579 μs per loop (mean ± std. dev. of 7 runs, 1 loop each)\n" ] } ], "source": [ "print(\"Performances of the different algorithms for azimuthal integration of Eiger 4M image\")\n", "for algo in (\"histogram\", \"csc\", \"csr\"):\n", " print(f\"Using algorithm {algo:10s}:\", end=\" \")\n", " %timeit ai.integrate1d(img, nbins, method=(\"full\", algo, \"cython\"))" ] }, { "cell_type": "markdown", "id": "22969c56-1d10-4950-aebe-699da628858e", "metadata": {}, "source": [ "**Note:** The full pixel splitting is time consuming and handicaps the histogram algorithm while both sparse-matrix methods are much faster since they cache this calculation in the sparse matrix.\n", "\n", "The compared performances of sparse-matrix methods is rather surprizing since the CSC algorithm, single threaded, is faster than the CSR which runs in parallel over 2x32 cores.\n", "This result is the combination of two facotors:\n", "\n", "1. The computer is built with two processors/sockets controling each its own memory. We call this a **Non Uniform Memory Access** computer and can be checked with `numactrl --hardware`. The CSR matrix multiplication will dispatch work on both processors and thus, needs to transfer part of the image from one NUMA subsystem (socket) to the other, which is slow (3.2x slower compared to a single-socket access, according to the output of numactl). \n", "\n", "2. The very large cache of this processor: 512MB are reported by `lscpu`, but a more precise tool, `lstopo` describes them as 32MB of L3 cache shared between 4 cores. This very large cache allows the complete frame and the sparse matrix to be pre-fetched which is a great advantage for the CSC algorithm.\n", "\n", "Running the very same benchmark on an Intel 2-socket server would remove the point 2, while running on a singe socket intel workstation would remove both points and the normal results would be that CSR should be faster than CSC. The best performances on can get with the CSR algorithm should be obtained when using 4 cores (sharing the same cache L3) out of 64 on this computer. This can be done by setting the environment variable **OMP_NUM_THREADS**. Unfortunately, it also requires to restart the process, thus cannot be demonstrated easily in the notebook (without restarting). \n", "\n", "**The first message to take home is that without the knownledge of the actual computer, no high-performace computing is possible**" ] }, { "cell_type": "code", "execution_count": 13, "id": "a98654ed-372a-4886-9292-32b31ae4ec2a", "metadata": {}, "outputs": [], "source": [ "#Does not work unless one restarts the process\n", "\n", "# print(\"Performances of the different algorithms for azimuthal integration of Eiger 4M image when using only 4 cores\")\n", "# mask = os.sched_getaffinity(0)\n", "# os.sched_setaffinity(0, [0,1,2,3])\n", "# for algo in (\"histogram\", \"csc\", \"csr\"):\n", "# print(f\"Using algorithm {algo}:\", end=\" \")\n", "# %timeit ai.integrate1d(img, nbins, method=(\"full\", algo, \"cython\"))\n", "# os.sched_setaffinity(0, mask)" ] }, { "cell_type": "markdown", "id": "63768a00-0b9e-4c55-a55e-efe6a8a17358", "metadata": {}, "source": [ "## 3. Writing the test dataset on disk." ] }, { "cell_type": "code", "execution_count": 14, "id": "32d5ebc6-3473-49a2-93e7-76e7bb8f17f1", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%%timeit -r1 -n1 -o -q\n", "#Saving of a HDF5 file with many frames ...\n", "if not os.path.exists(filename):\n", " with h5py.File(filename, \"w\") as h:\n", " ds = h.create_dataset(h5path, shape=(nbframes,)+shape, chunks=(1,)+shape, dtype=dtype, **cmp) \n", " for i in range(nbframes):\n", " ds[i] = frame + i%500 #Each frame has a different value to prevent caching effects" ] }, { "cell_type": "code", "execution_count": 15, "id": "f82b2daf-77c2-4720-9848-6ca9c273707f", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "File size 9.213 GB with a compression ratio of 7.429x\n", "Write speed: 2825691732.645 MB/s of uncompressed data, or 157483672.113 fps.\n" ] } ], "source": [ "timing_write = _\n", "size=os.stat(filename).st_size\n", "print(f\"File size {size/(1024**3):.3f} GB with a compression ratio of {nbframes*numpy.prod(shape)*dtype.itemsize/size:.3f}x\")\n", "print(f\"Write speed: {nbframes*numpy.prod(shape)*dtype.itemsize/(1e6*timing_write.best):.3f} MB/s of uncompressed data, or {nbframes/timing_write.best:.3f} fps.\")" ] }, { "cell_type": "markdown", "id": "dc086333-96da-47eb-8477-9a0a5f60bc20", "metadata": {}, "source": [ "No optimisation is done for writing: this tutorial is focused on reading & processing speed.\n", "We keep nevertheless those figures for reference.\n", "\n", "## 4. Reading the dataset using the h5py/HDF5 library:\n", "### 4.1 Using the `h5py` API in a natural way\n", "We start with the simplest way to read back all those data:" ] }, { "cell_type": "code", "execution_count": 16, "id": "889b740b-2ba4-4677-a8d6-346608d90158", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%%timeit -r1 -n1 -o -q\n", "#Reading all frames and decompressing them, the natural way way\n", "with h5py.File(filename, \"r\") as h:\n", " ds = h[h5path]\n", " for i in range(nbframes):\n", " frame = ds[i][...]" ] }, { "cell_type": "code", "execution_count": 17, "id": "c748fcbe-128d-46ab-9aa7-149c9a5b31fd", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Read speed: 1646.111 MB/s of uncompressed data, or 91.742 fps.\n" ] } ], "source": [ "timing_read0 = _\n", "print(f\"Read speed: {nbframes*numpy.prod(shape)*dtype.itemsize/(1e6*timing_read0.best):.3f} MB/s of uncompressed data,\\\n", " or {nbframes/timing_read0.best:.3f} fps.\")" ] }, { "cell_type": "markdown", "id": "4f95dca1-0301-4a04-b397-a9358816ee50", "metadata": {}, "source": [ "Reading all data from HDF5 file is as slow as (if not slower than) writing. \n", "This is mostly due to the decompression and to the many memory allocation performed.\n", "\n", "### 4.2 Pre-allocate the output buffer (for `h5py`)\n", "\n", "Now, we can try to pre-allocate the output buffer and check if it helps:" ] }, { "cell_type": "code", "execution_count": 18, "id": "a643e63d-1709-45b1-aaad-a542792b5a62", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%%timeit -r1 -n1 -o -q\n", "#Reading all frames and decompressing them\n", "buffer = numpy.zeros(shape, dtype=dtype)\n", "with h5py.File(filename, \"r\") as h:\n", " ds = h[h5path]\n", " for i in range(nbframes):\n", " ds.read_direct(buffer, numpy.s_[i,:,:], numpy.s_[:,:])" ] }, { "cell_type": "code", "execution_count": 19, "id": "847240c6-f9df-4626-b1a3-2197f535897c", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Read speed: 1726.719 MB/s of uncompressed data, or 96.235 fps.\n" ] } ], "source": [ "timing_read1 = _\n", "print(f\"Read speed: {nbframes*numpy.prod(shape)*dtype.itemsize/(1e6*timing_read1.best):.3f} MB/s of uncompressed data,\\\n", " or {nbframes/timing_read1.best:.3f} fps.\")" ] }, { "cell_type": "code", "execution_count": 20, "id": "8613536f-6bd7-42ff-b401-f8ed80cdd8da", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " Speed-up: 4.9 %\n" ] } ], "source": [ "print(f\" Speed-up: {(timing_read0.best/timing_read1.best-1)*100:.1f} %\")" ] }, { "cell_type": "markdown", "id": "4f9267a3-d056-4f91-a183-3dcfa0053885", "metadata": {}, "source": [ "The gain exists but it is not huge (10%).\n", "\n", "## 5. Decouple HDF5 chunk reading from decompression.\n", "\n", "We will benchmark separately the file reading (i.e. reading chunks one by one) and decompressing to check the maximum achievable read speed.\n", "\n", "### 5.1 Benchmarking of the chunk reading using the `read_direct_chunk` from `h5py`" ] }, { "cell_type": "code", "execution_count": 21, "id": "3492bfe6-c71e-40a2-98c4-7fd2cd7d7560", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%%timeit -r1 -n1 -o -q\n", "#Reading all frames without decompressing them\n", "with h5py.File(filename, \"r\") as h:\n", " ds = h[h5path]\n", " for i in range(ds.id.get_num_chunks()):\n", " filter_mask, chunk = ds.id.read_direct_chunk(ds.id.get_chunk_info(i).chunk_offset)" ] }, { "cell_type": "code", "execution_count": 22, "id": "95cccf4c-f63f-4ecb-9155-41e2a1821380", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Read speed: 8830.140 MB/s of compressed data.\n", "HDF5 direct chunk read speed: 3656.262 fps (without decompression).\n" ] } ], "source": [ "timing_read2 = _\n", "print(f\"Read speed: {size/(1e6*timing_read2.best):.3f} MB/s of compressed data.\")\n", "print(f\"HDF5 direct chunk read speed: {nbframes/timing_read2.best:.3f} fps (without decompression).\")" ] }, { "cell_type": "markdown", "id": "8e1a4654-45d3-4ade-bda5-1d33ebd125a0", "metadata": {}, "source": [ "The reading part data is really fast, it is apparently mostly by the disk speed or by the memory (if the compressed dataset stays in memory). " ] }, { "cell_type": "markdown", "id": "8969804e-77af-464e-8f9e-11e0e35541bd", "metadata": {}, "source": [ "### 5.2 Benchmarking of the decompression (single threaded)\n", "\n", "The function `decompress_bslz4_chunk` can be used to decompress one chunk.\n", "We benchmark it on one chunk" ] }, { "cell_type": "code", "execution_count": 23, "id": "341d4b27-bbc3-4010-a577-820d20f89d72", "metadata": {}, "outputs": [], "source": [ "def decompress_bslz4_chunk(payload, dtype, chunk_shape):\n", " \"\"\"This function decompresses ONE chunk with bitshuffle-LZ4. \n", " The library needs to be compiled without OpenMP when using threads !\n", " \n", " :param payload: string with the compressed data as read by h5py.\n", " :param dtype: data type of the stored content\n", " :param chunk_shape: shape of one chunk\n", " :return: decompressed chunk\"\"\"\n", " total_nbytes, block_nbytes = struct.unpack(\">QI\", payload[:12])\n", " block_size = block_nbytes // dtype.itemsize\n", "\n", " arr = numpy.frombuffer(payload, dtype=numpy.uint8, offset=12) # No copy here\n", " chunk_data = bitshuffle.decompress_lz4(arr, chunk_shape, dtype, block_size)\n", " return chunk_data" ] }, { "cell_type": "code", "execution_count": 24, "id": "e836bd52-7b5f-4535-81d4-2bfc1a5dfaf9", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Read chunk #123 which is 2602517 bytes long.\n", "The decompressed frame is 17942760 bytes long\n", "This frame is compressed with a ratio of 6.9 x.\n", "Benchmarking the decompression: 7.32 ms ± 6.91 μs per loop (mean ± std. dev. of 7 runs, 100 loops each)\n", "Decompression speed (single threaded): 136.751 fps\n", "Maximum read+decompression speed (single threaded): 131.820 fps\n", "Maximum read+decompression speed (64-threads): 2578.899 fps\n" ] } ], "source": [ "frame_id = 123\n", "with h5py.File(filename, \"r\") as h:\n", " ds = h[h5path]\n", " filter_mask, chunk = ds.id.read_direct_chunk(ds.id.get_chunk_info(frame_id).chunk_offset)\n", " \n", "print(f\"Read chunk #{frame_id} which is {len(chunk)} bytes long.\")\n", "frame = decompress_bslz4_chunk(chunk, dtype, shape)\n", "print(f\"The decompressed frame is {frame.nbytes} bytes long\")\n", "print(f\"This frame is compressed with a ratio of {frame.nbytes/len(chunk):.1f} x.\")\n", "print(\"Benchmarking the decompression: \", end=\"\")\n", "timing_decompression = %timeit -o decompress_bslz4_chunk(chunk, dtype, shape)\n", "print(f\"Decompression speed (single threaded): {1/timing_decompression.best:.3f} fps\")\n", "print(f\"Maximum read+decompression speed (single threaded): {1/(timing_decompression.best+timing_read2.best/nbframes):.3f} fps\")\n", "print(f\"Maximum read+decompression speed ({nbthreads}-threads): {1/(timing_decompression.best/nbthreads+timing_read2.best/nbframes):.3f} fps\")" ] }, { "cell_type": "markdown", "id": "ec96510d-1648-4e59-8d34-cdf37997e711", "metadata": {}, "source": [ "At this stage it is interesting to compare the maximum achievable speed in parallel and the raw read speed.\n", "\n", "This difference is known as [Amdahl's law](https://en.wikipedia.org/wiki/Amdahl%27s_law) which states that performances of a parallel program become limited limited by the serial part of it when the number of threads increases. In other words, find all the serial sections and squeeze them to get performances.\n", "\n", "Some part of the code are made serial to prevent data corruption. One typical example are the commands seek+read in file. If several threads are doing this at the same time, the file-pointer is likely to be changed and the read will return the wrong data. Serializing this section, for example by using locks, mutex, semaphores, ... is a simple way to prevent such issues. Let's list some of the lock we have in this example:\n", "\n", "- `h5py` has a lock called `phil` which serializes the access to the HDF5 library\n", "- `HDF5` has a global lock preventing files from being modified from different processes\n", "- `Python` has a global interpreter lock `GIL` which ensures only one python object is manipulated at a time.\n", "\n", "The later is widely commented and an urban legend says it prevents multithreading in Python. \n", "You will at the end of the tutorial how much this is True (or not). \n" ] }, { "cell_type": "markdown", "id": "bc5939d1-5c25-4f35-9b46-e9684110dfc9", "metadata": {}, "source": [ "### 5.3 Benchmark the analysis of the HDF5 file\n", "\n", "To come back on the parallel reading, the different locks from `h5py` and `HDF5` are preventing us from a parallel access to the data.\n", "Can we dive deeper into the `HDF5` file and retrieve the position of the different chunks and their size ? \n", "If so, it would be possible read chunks without the `h5py`/`HDF5` library, working around their different locks.\n", "\n", "Let's check the parsing of the HDF5 structure of the dataset" ] }, { "cell_type": "code", "execution_count": 25, "id": "b301837a-9f6c-43d7-b1cc-f3dc64998bad", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Each chunk descriptor is an object like: \n", "StoreInfo(chunk_offset=(0, 0, 0), filter_mask=0, byte_offset=4536, size=1972923)\n", "It represents a very small amount of data: 72 bytes.\n", "All 4096 frames, weighting 9892.139 MB, can be represented by 327.960 kB\n" ] } ], "source": [ "with h5py.File(filename, \"r\") as h:\n", " ds = h[h5path]\n", " res = [ds.id.get_chunk_info(i) for i in range(ds.id.get_num_chunks())]\n", "print(f\"Each chunk descriptor is an object like: \\n{res[0]}\")\n", "print(f\"It represents a very small amount of data: {sys.getsizeof(res[0])} bytes.\")\n", "print(f\"All {nbframes} frames, weighting {size/1e6:.3f} MB, can be represented by {(sys.getsizeof(res)+sys.getsizeof(res[0])*nbframes)/1000:.3f} kB\")" ] }, { "cell_type": "code", "execution_count": 26, "id": "5201a9dd-fd9e-4e87-a2bf-f045b8029c08", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%%timeit -r1 -n1 -o -q\n", "#Parsing speed\n", "with h5py.File(filename, \"r\") as h:\n", " ds = h[h5path]\n", " res = [ds.id.get_chunk_info(i) for i in range(ds.id.get_num_chunks())]" ] }, { "cell_type": "code", "execution_count": 27, "id": "27a4d511-7aa0-491a-8f01-37125c9e2fe5", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Parse speed: 21384.383 MB/s of compressed data.\n", "HDF5 parse speed (without reading): 8854.549 fps.\n" ] } ], "source": [ "timing_parse = _\n", "print(f\"Parse speed: {size/(1e6*timing_parse.best):.3f} MB/s of compressed data.\")\n", "print(f\"HDF5 parse speed (without reading): {nbframes/timing_parse.best:.3f} fps.\")" ] }, { "cell_type": "code", "execution_count": 28, "id": "e112c3a7-060b-4cce-a6e1-6bb060bb21b8", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "72eb34d534e58134bff6d4cd52f034b584f3a092 using HDF5\n", "72eb34d534e58134bff6d4cd52f034b584f3a092 using direct file access\n" ] } ], "source": [ "# Validation that the data read by HDF5 and via the file interface matches\n", "import hashlib\n", "idx = 10\n", "with h5py.File(filename, \"r\") as h:\n", " ds = h[h5path]\n", " indexes = [ds.id.get_chunk_info(i) for i in range(ds.id.get_num_chunks())]\n", " filter_mask, ref = ds.id.read_direct_chunk(indexes[idx].chunk_offset)\n", "# and validate the indexes\n", "with open(filename, \"rb\") as f:\n", " item = indexes[idx]\n", " f.seek(item.byte_offset)\n", " res = f.read(item.size)\n", "print(f\"{hashlib.sha1(ref).hexdigest()} using HDF5\\n{hashlib.sha1(res).hexdigest()} using direct file access\")" ] }, { "cell_type": "markdown", "id": "cebd4b8d-f11c-4f65-9a8e-6f270ce0a9f4", "metadata": {}, "source": [ "So the HDF5 chunk parsing is the only part of the code needing to be serial, so the maximum achievable speed is very high: 9 kfps.\n", "\n", "If Amdahl's law is providing us with the upper performance limit, one should take care to optimize all the code to be run in parallel. \n", "\n", "Here are two ways to read the different chunks, either using the `Python file` interface or `numpy.memmap`. \n", "Their performances are expected to be similar to what `HDF5 direct chunk read` provides, the idea is to use them to bypass the locks in `HDF5`.\n", "\n", "### 5.4 Benchmark the chunk reading using the `h5py` direct chunk read" ] }, { "cell_type": "code", "execution_count": 29, "id": "4f5a31a7-b5ab-4d68-b55f-76f3159f3cb7", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%%timeit -r1 -n1 -o -q\n", "#Reading all frames without decompressing them\n", "with h5py.File(filename, \"r\") as h:\n", " ds = h[h5path]\n", " for chunk_descr in indexes:\n", " filter_mask, chunk = ds.id.read_direct_chunk(chunk_descr.chunk_offset)" ] }, { "cell_type": "code", "execution_count": 30, "id": "64a1861b-e09b-4753-afe0-16db72131408", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Read speed (h5py direct chunk read): 14895.510 MB/s of compressed data.\n", "Chunk read (from h5py) speed (without decompression): 6167.727 fps.\n" ] } ], "source": [ "timing_read2a = _\n", "print(f\"Read speed (h5py direct chunk read): {size/(1e6*timing_read2a.best):.3f} MB/s of compressed data.\")\n", "print(f\"Chunk read (from h5py) speed (without decompression): {nbframes/timing_read2a.best:.3f} fps.\")" ] }, { "cell_type": "markdown", "id": "177bd11f-1a31-4965-9ae1-23985a2ed084", "metadata": {}, "source": [ "### 5.5 Benchmark the chunk reading using the Python file interface" ] }, { "cell_type": "code", "execution_count": 31, "id": "e06a3939-fe2a-485f-b774-229c75565334", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%%timeit -r1 -n1 -o -q\n", "#Reading all frames without using the HDF5 library (neither decompressing them)\n", "with open(filename, \"rb\") as f:\n", " for chunk_descr in indexes:\n", " f.seek(chunk_descr.byte_offset)\n", " chunk = f.read(chunk_descr.size)" ] }, { "cell_type": "code", "execution_count": 32, "id": "ae59eaeb-0b0b-4f36-a4f7-990b7c61100f", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Read speed (Python file): 15076.128 MB/s of compressed data.\n", "File read (from Python) speed (without decompression): 6242.514 fps.\n", "Pure reading using the Python (file interface) is 1.2 % faster than HDF5 direct chunk read.\n", "But it removes the file-locking issue from HDF5 !\n" ] } ], "source": [ "timing_read3 = _\n", "print(f\"Read speed (Python file): {size/(1e6*timing_read3.best):.3f} MB/s of compressed data.\")\n", "print(f\"File read (from Python) speed (without decompression): {nbframes/timing_read3.best:.3f} fps.\")\n", "print(f\"Pure reading using the Python (file interface) is {100*timing_read2a.best/(timing_read3.best)-100:.1f} % faster than HDF5 direct chunk read.\")\n", "print(\"But it removes the file-locking issue from HDF5 !\")" ] }, { "cell_type": "markdown", "id": "47590db3-de63-4179-9921-1d88d6a0a64b", "metadata": {}, "source": [ "### 5.5 Benchmark the chunk reading using `numpy.memmap`" ] }, { "cell_type": "code", "execution_count": 33, "id": "59e6da20-bc46-42dd-830c-6f9b46c6e367", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%%timeit -r1 -n1 -o -q\n", "#Reading positions via HDF5 but chunks are read via numpy.memmap\n", "f = numpy.memmap(filename, mode=\"r\")\n", "for chunk_descr in indexes:\n", " chunk = numpy.array(f[chunk_descr.byte_offset:chunk_descr.byte_offset+chunk_descr.size])\n", "del f" ] }, { "cell_type": "code", "execution_count": 34, "id": "06209e35-1813-44f4-b340-b3e60b359a8d", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Read speed (numpy.memmap): 12113.854 MB/s of compressed data.\n", "File read (numpy.memmap) speed (without decompression): 5015.937 fps.\n", "Pure reading using the numpy.memmap is -18.7 % faster than using the h5py/HDF5 interface\n", "This removes the file-locking issue from HDF5 !\n" ] } ], "source": [ "timing_read4 = _\n", "print(f\"Read speed (numpy.memmap): {size/(1e6*timing_read4.best):.3f} MB/s of compressed data.\")\n", "print(f\"File read (numpy.memmap) speed (without decompression): {nbframes/timing_read4.best:.3f} fps.\")\n", "print(f\"Pure reading using the numpy.memmap is {100*timing_read2a.best/(timing_read4.best)-100:.1f} % faster than using the h5py/HDF5 interface\")\n", "print(\"This removes the file-locking issue from HDF5 !\")" ] }, { "cell_type": "markdown", "id": "3cdcc158-260c-445c-acbb-8da51e3be6ca", "metadata": {}, "source": [ "Numpy's memmap apprears to be much slow than the equivalent python file read.\n", "\n", "We found out that the reading of data, initially in the order of 1 minute can be decomposed into:\n", "\n", " * 0.3s for the reading of the chunk description\n", " * 1s for the reading of the chunks themselves\n", " * 1 minute for the decompression of the data.\n", "\n", "Two parallelization schemes appear clearly:\n", "1. read chunks in serial mode with h5py and decompress+integrate in parallel.\n", "2. read chunk descriptors in serial mode with h5py and parallelize the reading, decompression and integration.\n", "\n", "But befor we can investigate those two routes, we first need to establish some baseline for the complete serial processing: read, decompress, integrate.\n", "\n", "## 6. Azimuthal integration\n", "\n", "### 6.1 Serial workflow\n" ] }, { "cell_type": "markdown", "id": "9fccb178-94db-4bb4-a5e1-9cab60af0aeb", "metadata": {}, "source": [ "#### 6.1.1 Prepare the azimuthal integrator\n", "To allow the full parallelization of different integrators working in parallel, one must limit the number of Python call performed, this is why we need to extract the Cython integrator from AzimuthalIntegator. The integrator used here is a sparse matrix multiplication one with a CSC representation which is single-threaded. This engine is usually not the fastest but it is multitheading friendly.\n", "\n", "The figures obtained should be similar to the one obtaind in chapter 2, the overhead from the azimuthal integrator being tuned to be minimal." ] }, { "cell_type": "code", "execution_count": 35, "id": "0814ccb4-2906-44e6-9061-bb36c5139b3e", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Timing for the direct azimuthal integration: 41.1 ms ± 394 μs per loop (mean ± std. dev. of 7 runs, 10 loops each)\n", "The maximum achievable integration speed on a single core is 24.454 fps which does not look fancy.\n", "But parallelized over 64 threads, it could reach: 1565.053 fps!\n" ] } ], "source": [ "geo = {\"detector\": det, \n", " \"wavelength\": 1e-10}\n", "ai = pyFAI.load(geo)\n", "omega = ai.solidAngleArray()\n", "res0 = ai.integrate1d(frame, nbins, method=(\"full\", \"csc\", \"cython\"))\n", "engine = ai.engines[res0.method].engine\n", "#This is how the engine works:\n", "res1 = engine.integrate_ng(frame, solidangle=omega)\n", "assert numpy.allclose(res0.intensity, res1.intensity) # validates the equivalence of both approaches:\n", "print(\"Timing for the direct azimuthal integration: \", end=\"\")\n", "timing_integration = %timeit -o engine.integrate_ng(frame, solidangle=omega)\n", "print(f\"The maximum achievable integration speed on a single core is {1/timing_integration.best:.3f} fps which does not look fancy.\")\n", "print(f\"But parallelized over {nbthreads} threads, it could reach: {nbthreads/timing_integration.best:.3f} fps!\")" ] }, { "cell_type": "markdown", "id": "6178d4b3-86f0-4428-a147-90cff651ebd3", "metadata": {}, "source": [ "### 6.1.2 Benchmarking of the serial workflow\n", "\n", "This code tries to be simple and elegant. \n", "It provides the reference values on the one hand and the baseline performances on the other." ] }, { "cell_type": "code", "execution_count": 36, "id": "59e5bc41-f960-47a3-a9d2-133c2131e60d", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%%timeit -o -r1 -n1 -q\n", "#Naive implementation ... read+integrate\n", "result0 = numpy.empty((nbframes, nbins), dtype=numpy.float32)\n", "method = (\"full\", \"csc\", \"cython\")\n", "\n", "with h5py.File(filename, \"r\") as h:\n", " ds = h[h5path]\n", " for i, frame in enumerate(ds):\n", " result0[i] = ai.integrate1d(frame, nbins, method=method).intensity" ] }, { "cell_type": "code", "execution_count": 37, "id": "ce61a7ec-577e-4e6a-bf59-e0cc8f60478d", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "A naive implementation provides only 19.479 fps.\n" ] } ], "source": [ "timing_naive = _\n", "# print(f\"The maximum achievable decompression+integration speed is {1/(timing_decompress.best+timing_integration.best):.3f} fps in serial \\n\\\n", "# and {nbthreads*1/(timing_decompress.best+timing_integration.best):.3f} fps in parallel on {nbthreads} threads\\n\\\n", "print(f\"A naive implementation provides only {nbframes/(timing_naive.best):.3f} fps.\")" ] }, { "cell_type": "markdown", "id": "0131a856-0a8b-4845-91a8-287abc0edf01", "metadata": {}, "source": [ "## 6.2 Pool of threads, queues, \n", "\n", "Unlike processes, threads share the same memory space (with the GIL preventing read/write collision).\n", "Threads are a great idea which allow multiple flow of execution to occure in parallel but threads come with a cost.\n", "Thus it is stupid to have as many threads as tasks to perform. \n", "It is better to have a limited number of threads, on the order of the number of cores, and have them processing several frames.\n", "\n", "We will define a pool of threads, a list of threads, started and ready to crunch some data.\n", "Communication between threads can be made via `Queues`.\n", "Each worker waits on the input-queue (`qin`) for something to process and puts the result into the output queue (`qout`).\n", "Since we want the processing to tidy up at the end, if a worker gets a `None` this means it is time to end the thread. \n", "This is sometimes called a \"kill-pill\". \n", "The `end_pool` function distributes as many \"kill-pills\" as needed to end all threads in the pool. \n", "\n", "In this section we define some tools to create and stop a pool of worker and also a dummy_worker which does nothing:" ] }, { "cell_type": "code", "execution_count": 38, "id": "def90b10-3d93-4051-98c4-6de6e7db3e37", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "None\n", "None\n", "None\n", "None\n" ] } ], "source": [ "# a few of utility functions\n", "def dummy_worker(qin, qout, funct=lambda item: item):\n", " \"\"\"Dummy worker which takes something in qin, applies funct on it and puts the result in qout\"\"\"\n", " while True:\n", " item = qin.get()\n", " if item is None:\n", " qout.put(None)\n", " qin.task_done()\n", " return\n", " qout.put(funct(item))\n", " qin.task_done()\n", "\n", "def build_pool(nbthreads, qin, qout, worker=None, funct=None):\n", " \"\"\"Build a pool of threads with workers, and starts them\"\"\"\n", " pool = []\n", " for i in range(nbthreads):\n", " if funct is not None:\n", " worker = dummy_worker\n", " thread = threading.Thread(target=worker, name=f\"{worker.__name__}_{i:02d}\", args=(qin, qout, funct))\n", " elif worker is None:\n", " worker = dummy_worker\n", " thread = threading.Thread(target=worker, name=f\"{worker.__name__}_{i:02d}\", args=(qin, qout))\n", " else:\n", " thread = threading.Thread(target=worker, name=f\"{worker.__name__}_{i:02d}\", args=(qin, qout, filename))\n", " thread.start()\n", " pool.append(thread)\n", " return pool\n", "\n", "def end_pool(pool):\n", " \"\"\"Ends all threads from a pool by sending them a \"kill-pill\"\"\"\n", " for thread in pool:\n", " qin.put(None)\n", "\n", "\n", "#Small validation to check it works: \n", "qin = Queue()\n", "qout = Queue()\n", "pool=build_pool(4, qin, qout, dummy_worker)\n", "end_pool(pool)\n", "qin.join()\n", "while not qout.empty():\n", " print(qout.get())\n", " qout.task_done()\n", "qout.join()" ] }, { "cell_type": "markdown", "id": "dc93cd8b-3f93-4f21-b8a9-97e4bd08ca93", "metadata": {}, "source": [ "### 6.3 Parallelize decompression + processing\n", "\n", "In this example, all chunks are read by the HDF5 library and put in a queue for the processing.\n", "As a consequence, all chunks are likely to be held in memory at the same time, which is equivalent of the size of the compressed HDF5 file, 10GB. \n", "This could be a problem on many computer and we choose to limit the number of chunks in memory to ~10x more than the number of threads.\n", "The implementation of the the slow-down mechanism is done via the size of the input queue (into which the reader puts chunks).\n" ] }, { "cell_type": "code", "execution_count": 39, "id": "b0cffcf6-ede0-4cf0-8e38-f247e8c15352", "metadata": {}, "outputs": [], "source": [ "def reader_chunks(filename, h5path, queue):\n", " \"\"\"Function reading the HDF5 file and enqueuing raw-chunks into the queue.\n", " \n", " :param filename: name of the HDF5 file\n", " :param h5path: path to the dataset within the HDF5 file\n", " :param queue: queue where to put read chunks\n", " :return: number of chunks\"\"\"\n", " with h5py.File(filename, \"r\") as h:\n", " ds = h[h5path]\n", " for i in range(ds.id.get_num_chunks()):\n", " filter_mask, chunk = ds.id.read_direct_chunk(ds.id.get_chunk_info(i).chunk_offset)\n", " if filter_mask==0:\n", " while queue.full():\n", " # slow down to prevent filling up memory\n", " os.sched_yield()\n", " queue.put(Item(i, chunk))\n", " return i+1" ] }, { "cell_type": "code", "execution_count": 40, "id": "098b0fc0-4c60-4e73-80a6-3a1e3f5ed867", "metadata": {}, "outputs": [], "source": [ "def decompress_integrate_funct(item):\n", " \"function to be used within a dummy_worker: takes an item and returns an item\"\n", " frame = decompress_bslz4_chunk(item.data, dtype, shape)\n", " return Item(item.index, engine.integrate_ng(frame, solidangle=omega).intensity)\n" ] }, { "cell_type": "code", "execution_count": 41, "id": "bf81e2e9-a2d0-45fb-8108-446549a27ba0", "metadata": {}, "outputs": [], "source": [ "def parallel_decompress_integrate(filename, h5path, nbthreads):\n", " qin = Queue(nbthreads*10)\n", " qout = Queue()\n", " pool = build_pool(nbthreads, qin, qout, funct=decompress_integrate_funct)\n", " nchunks = reader_chunks(filename, h5path, qin)\n", " output = numpy.empty((nchunks, nbins), numpy.float32)\n", " end_pool(pool)\n", " qin.join()\n", " while not qout.empty():\n", " item = qout.get()\n", " if item is not None:\n", " output[item.index] = item.data\n", " qout.task_done()\n", " qout.join()\n", " return output\n", " \n", "# parallel_decompress_integrate(filename, h5path, nbthreads)" ] }, { "cell_type": "code", "execution_count": 42, "id": "3b510f2f-49b3-41a2-8b71-81a41f725ec0", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Timimg of serial read (h5py direct) and 64x(decompression+integration): \n", "13.5 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "Direct read + // integration reaches 302.980 fps.\n", "The speed-up is 15.554x for a computer with 64 threads.\n" ] } ], "source": [ "print(f\"Timimg of serial read (h5py direct) and {nbthreads}x(decompression+integration): \")\n", "timing_dcr = %timeit -o -r1 -n1 parallel_decompress_integrate(filename, h5path, nbthreads)\n", "print(f\"Direct read + // integration reaches {nbframes/(timing_dcr.best):.3f} fps.\")\n", "print(f\"The speed-up is {timing_naive.best/timing_dcr.best:.3f}x for a computer with {nbthreads} threads.\")" ] }, { "cell_type": "markdown", "id": "8cdf7557-f6fe-46d7-bdca-770e2e62c194", "metadata": {}, "source": [ "### 6.3 Parallelize read + decompression + processing\n", "We will now investigate the case where even the reading is made in the worker thread.\n", "One advantage is that all chunk-descriptions can be hosted in memory (hundreeds of kilobytes) and one does not need to take care of memory filling up with raw data.\n", "\n", "Here is the reader for such type of processing:" ] }, { "cell_type": "code", "execution_count": 43, "id": "82e58870-ebb0-45ff-aec2-f203f25a9f44", "metadata": {}, "outputs": [], "source": [ "def reader_descr(filename, h5path, queue):\n", " \"\"\"Function reading the HDF5 file and enqueuing chunk-descriptor into the queue.\n", " \n", " :param filename: name of the HDF5 file\n", " :param h5path: path to the dataset within the HDF5 file\n", " :param queue: queue where to put read chunks\n", " :return: number of chunks\"\"\"\n", " with h5py.File(filename, \"r\") as h:\n", " ds = h[h5path]\n", " for i in range(ds.id.get_num_chunks()):\n", " queue.put(Item(i, ds.id.get_chunk_info(i)))\n", " return i+1" ] }, { "cell_type": "code", "execution_count": 44, "id": "24158f69-2577-42c6-9cc1-8e9a1ad74581", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The reader is providing performances close to those benchmarked at section #5.3:\n", "469 ms ± 7.32 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)\n", "It is measured 0.293 % slower.\n", "The reader is able to reach 8828.638 fps\n" ] } ], "source": [ "print(\"The reader is providing performances close to those benchmarked at section #5.3:\")\n", "timing_reader_descr = %timeit -o reader_descr(filename, h5path, Queue())\n", "print(f\"It is measured {100*(timing_reader_descr.best/timing_parse.best-1):.3f} % slower.\")\n", "print(f\"The reader is able to reach {nbframes/timing_reader_descr.best:.3f} fps\")" ] }, { "cell_type": "markdown", "id": "4fee001e-da99-4e3d-b266-0dd8fd18e08f", "metadata": {}, "source": [ "#### 6.3.1 Parallelize read + decompression + processing using the Python file interface" ] }, { "cell_type": "code", "execution_count": 45, "id": "13b0dd04-9f28-412f-98d6-1511eb163698", "metadata": {}, "outputs": [], "source": [ "def worker_python(qin, qout, filename):\n", " with open(filename, \"rb\") as f:\n", " while True:\n", " item = qin.get() \n", " qin.task_done()\n", " if item is None:\n", " return\n", " idx, chunk_descr = item\n", " f.seek(chunk_descr.byte_offset)\n", " chunk = f.read(chunk_descr.size)\n", " frame = decompress_bslz4_chunk(chunk, dtype, shape)\n", " qout.put(Item(idx, engine.integrate_ng(frame, solidangle=omega).intensity))\n", " del chunk, frame" ] }, { "cell_type": "code", "execution_count": 46, "id": "1147ec52-99be-474e-b7c8-1c456c05e091", "metadata": {}, "outputs": [], "source": [ "def parallel_read_decompress_integrate(filename, h5path, nbthreads, worker):\n", " qin = Queue()\n", " qout = Queue()\n", " pool = build_pool(nbthreads, qin, qout, worker=worker)\n", " nchunks = reader_descr(filename, h5path, qin)\n", " output = numpy.empty((nchunks, nbins), numpy.float32)\n", " end_pool(pool)\n", " qin.join()\n", " while not qout.empty():\n", " item = qout.get()\n", " if item is not None:\n", " output[item.index] = item.data\n", " qout.task_done()\n", " qout.join()\n", " return output" ] }, { "cell_type": "code", "execution_count": 47, "id": "72ee1bc4-5d8a-4eaf-99e8-a9323b0d1c93", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Timimg of serial descriptor read and 64x(read+decompression+integration): \n", "11 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "Parallel read+integration reaches 373.770 fps.\n", "The speed-up is 19.189x for a computer with 64 threads.\n" ] } ], "source": [ "print(f\"Timimg of serial descriptor read and {nbthreads}x(read+decompression+integration): \")\n", "timing_python_file = %timeit -o -r1 -n1 parallel_read_decompress_integrate(filename, h5path, nbthreads, worker_python)\n", "print(f\"Parallel read+integration reaches {nbframes/(timing_python_file.best):.3f} fps.\")\n", "print(f\"The speed-up is {timing_naive.best/timing_python_file.best:.3f}x for a computer with {nbthreads} threads.\")" ] }, { "cell_type": "markdown", "id": "aa63fdcd-1d58-4ca1-b51f-6d0ab3bbaf0a", "metadata": {}, "source": [ "#### 6.3.1 Parallelize read + decompression + processing using the `numpy.memmap` interface" ] }, { "cell_type": "code", "execution_count": 48, "id": "8001b38d-1837-45a5-838c-15e12abd0995", "metadata": {}, "outputs": [], "source": [ "def worker_numpy(qin, qout, filename):\n", " f = numpy.memmap(filename, mode=\"r\")\n", " while True:\n", " item = qin.get() \n", " qin.task_done()\n", " if item is None:\n", " del f\n", " return\n", " idx, chunk_descr = item\n", " chunk = f[chunk_descr.byte_offset:chunk_descr.byte_offset+chunk_descr.size]\n", " frame = decompress_bslz4_chunk(chunk, dtype, shape)\n", " qout.put(Item(idx, engine.integrate_ng(frame, solidangle=omega).intensity))\n", " del chunk, frame" ] }, { "cell_type": "code", "execution_count": 49, "id": "a0906da8-4b10-452b-b4a5-9fa0f49159a9", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Timimg of serial descriptor read and 64x(read+decompression+integration): \n", "10.8 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "Parallel read+integration reaches 380.617 fps.\n", "The speed-up is 19.540x for a computer with 64 threads.\n" ] } ], "source": [ "print(f\"Timimg of serial descriptor read and {nbthreads}x(read+decompression+integration): \")\n", "timing_numpy_file = %timeit -o -r1 -n1 parallel_read_decompress_integrate(filename, h5path, nbthreads, worker_numpy)\n", "print(f\"Parallel read+integration reaches {nbframes/(timing_numpy_file.best):.3f} fps.\")\n", "print(f\"The speed-up is {timing_naive.best/timing_numpy_file.best:.3f}x for a computer with {nbthreads} threads.\")" ] }, { "cell_type": "markdown", "id": "c314a9d6-4878-480a-8625-ba6b295bf96f", "metadata": {}, "source": [ "Effective implementation using multithreading:\n", "* One reader which reads the dataset chunk-by-chunk or descriptor by descriptor and makes them available via an input-queue, called `qin`.\n", "* A pool of workers: pool of the size of the number of cores. Each worker is doing the (reading of one chunk if needed), decompression of one chunk into one frame and the azimuthal integration of that frame. The integrated result is put into an output-queue, called `qout`.\n", "* 2 queues: `qin` and `qout`, the former could need to be limited in size to prevent the filling-up of the memory when complete chunks are put into it.\n", "* The gathering of the data is performed in the main thread (as does the reader). Each piece of data is associated with its index in the dataset using the Item named-tuple.\n", "\n", "Nota: I had a hard time to perform both reading and writing with HDF5 (even in different files). This is why the result is reconstructed in memory and the saving performed at the very end. Could be a bug in h5py." ] }, { "cell_type": "markdown", "id": "769fd274-e668-4065-ba8f-681a56906838", "metadata": {}, "source": [ "## 7. Display some results\n", "Since the input data were all synthetic and similar, no great science is expected from this... but one can ensure each frame differs slightly from the neighbors with a pattern of 500 frames. " ] }, { "cell_type": "code", "execution_count": 50, "id": "478cf30b-a1ca-4c62-8031-c364c2543816", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "CPU times: user 6min 16s, sys: 10.9 s, total: 6min 27s\n", "Wall time: 9.63 s\n" ] }, { "data": { "text/plain": [ "" ] }, "execution_count": 50, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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UkvzrtWNpQVNlUn3rsED3DtH68l7vAwkoLnq7pO3o2BQ9YBGi9kW7GLVNuMdNM918skn49/8m3+Dr33ta3je856Hhx9+GA888ECgXkePHrUx2oEDB/DZz3426OPo0aO2rmTXX389rr32Wrt+7NgxnHHGGeA1ARYCaLX/R9pt0c9GplYCRPo5XQwS6h1CwyUFIBgkpS4TYCkBFnDXO7l362V1wJU8Ygh+H9E3ac2Vu10qOMSKXewCKpZkxBK1YdfK4frud7+Lr3/963jFK16B8847D+vr67jzzjtx8cUXAwC++tWv4t5778XBgwcBAAcPHsTb3vY23H///di3bx8A4I477sCePXtw9tlnF/czmUwwmUySctmQgou08khWT5NsGaQf30rqeULadSQLFsWQadUiYcDirPtXflfLUbItXCm5e73nd04N57PyppWdnugsEtRnyPmLLIHv1XWzdLh++Zd/GS9+8YvxxCc+Ed/85jfx67/+62iaBr/wC7+AvXv34vLLL8e1116LU045BXv27MHrXvc6HDx4EM9+9rMBABdeeCHOPvtsvOIVr8BNN92EI0eO4E1vehOuuuqqLDx9xo0ACzKpIf3yYGudkhGRBxODY8ikAITnNmpoKIq94vcAvmBwpbKu8t7C6uqS5VL0oykjuY03qPmnf/on/MIv/AL++Z//GU94whPw4z/+4/irv/orPOEJTwAAvPOd74QQAhdffHEwiWysaRp85CMfwZVXXomDBw/i0Y9+NC699FK89a1vnWs8vEYKLvXcVs81ZA2USk6QTm6YWIsE68e4asi0W0gcuY1Aqk7WlcvAF9THg+2LsThfXPzwvQWjDbUBcBFXPaz3xLNjx45h7969+HfPuwFrjUpokIaItGLZZf/dxFEGsiC5ES7btkA+YRHD570FKyUIqo7MENdxtEVtJh/GJ+77fTz44IPYs2dPZ9tdf22hbAjchG4hk3oQg4nBbLJDGHigkxg6S6hVjMyycRuL8LCeOyvAZyznFnaVZ9tVFQ6znQ7p4tOA8+9YjhfuWuMGFi4m7RkGoEHFWgY0C5gffwEk/HS8dhuTOEv/MVWl9HtHXFW8smLuE74mdtulVoRwATplU91018MlG4JsKIEqAMum52GhIoadWCbhL2t4jHtojL00fCnGqkhWsPk7FIJS36Np6wGqkjduR7isKeWCl8wg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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "%time result = parallel_read_decompress_integrate(filename, h5path, nbthreads, worker_numpy)\n", "fig,ax = subplots(figsize=(8,8))\n", "ax.imshow(result)" ] }, { "cell_type": "markdown", "id": "d52a13fe-3265-4e74-866e-8056e105dce5", "metadata": {}, "source": [ "## 7. Evolution of the performances with the number of threads" ] }, { "cell_type": "code", "execution_count": 51, "id": "a89e908a-d950-48d6-8ff2-2b39cdda629e", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Using 64 threads\n", "12.2 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "10.9 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "11.4 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "Using 56 threads\n", "11 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "10.5 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "10.6 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "Using 48 threads\n", "10.4 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "10.8 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "9.85 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "Using 40 threads\n", "9.62 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "10.7 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "9.94 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "Using 36 threads\n", "10.7 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "11.3 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "10.3 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "Using 32 threads\n", "10.5 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "10.7 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "10.2 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "Using 28 threads\n", "10.6 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "10.6 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "10.6 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "Using 24 threads\n", "11.2 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "11.3 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "11 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "Using 20 threads\n", "12.2 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "12.7 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "11.8 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "Using 16 threads\n", "14.1 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "14.9 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "14.7 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "Using 12 threads\n", "18.6 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "18.9 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "18.9 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "Using 8 threads\n", "27.3 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "28.2 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "27.4 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "Using 4 threads\n", "52.8 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "54.3 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "51.7 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "Using 2 threads\n", "1min 43s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "1min 48s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "1min 44s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "Using 1 threads\n", "3min 31s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "3min 34s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", "3min 22s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n" ] } ], "source": [ "performances_h5py = {}\n", "performances_file = {}\n", "performances_memmap = {}\n", "for i in (64, 56, 48, 40, 36, 32, 28, 24, 20,16, 12, 8, 4, 2, 1):\n", " print(f\"Using {i} threads\")\n", " \n", " t = %timeit -r1 -n1 -o parallel_decompress_integrate(filename, h5path, i)\n", " performances_h5py[i] = nbframes/t.best\n", "\n", " t = %timeit -r1 -n1 -o parallel_read_decompress_integrate(filename, h5path, i, worker_python)\n", " performances_file[i] = nbframes/t.best\n", "\n", " t = %timeit -r1 -n1 -o parallel_read_decompress_integrate(filename, h5path, i, worker_numpy)\n", " performances_memmap[i] = nbframes/t.best\n" ] }, { "cell_type": "code", "execution_count": 52, "id": "1d6c9040-6de2-47b4-b598-528b96833de3", "metadata": {}, "outputs": [ { "data": { "image/png": "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W6tWrahVqxbPPPMMN910U6G/+bJlywq8nzdvHiEhIWzbto2ePXs62319fQkLC7vkNX766Sf279/PypUrCQ0NpU2bNvzzn//kySef5LnnnsPT07PQeUTKqg/XxWCzG3SpH0yrmkHk2nJ5e9fbAIz0a4Rf8rcQUAO6PmZyUhEREZHyweXFJvbs2UO9evUuaq9Xrx779++/qjApKSkABAcHF2j/7LPPqFq1Ki1atGDq1KlkZmY6j23cuJGWLVsSGhrqbOvXrx+pqans27fvkt8nJyeH1NTUAi+RsiolK48vtpwE4KGeDQBYcGgBsRmxhHhXYdienxwde08DT9/LXUZEREREXOByIdWsWTNmzJhBbm6usy03N5cZM2bQrFmzKw5it9uZMGEC3bp1o0WLFs72u+66i08//ZTVq1czdepUPvnkE+6++27n8bi4uAJFFOB8HxcXd8nvNWPGDAIDA52vWrVqXXFuEbN9vvkkGbk2Gof606tJNTLzMnlv93sAPGStgnduGoS3g5a3mZxUREREpPwo1NS+P3v77bcZPHgwNWvWdK7Qt3v3biwWC4sXL77iIGPGjGHv3r2sW7euQPvo0aOdX7ds2ZLq1avTu3dvjh49SoMGDa7oe02dOpVJkyY536empqqYkjIpJ9/GR+sdzzCO6lEfi8XC5wc+50L2BWr6hHDz/t+ejeo/A6za7UBERESkqLhcSHXq1Iljx47x2WefceDAAQCGDRvGXXfdVWCBCFeMHTuWJUuWsHbtWmrWrPmXfTt37gzAkSNHaNCgAWFhYWzZsqVAn/j4eIDLPlfl5eWFl5fXFWUVKU2+33mWhLQcQgO8GNKmBqm5qXy09yMAHs2y42HYofnNULuLyUlFREREyheXCykAPz+/AiNFV8owDB577DEWLlzImjVrLvns1f/auXMnANWrO1Yei4yM5MUXXyQhIYGQkBAAVqxYQUBAABEREVedUaS0MgzDueT5fV3r4elu5d0dH5Oam0oDn1AG7v8V3Dyhz3PmBhUREREph65ors8nn3xC9+7dCQ8P58SJEwC89tprfP/99y5dZ8yYMXz66ad8/vnnVKpUibi4OOLi4sjKygLg6NGj/POf/2Tbtm0cP36c//73v9x777307NnTOa2wb9++REREcM8997Br1y6WL1/O008/zZgxYzTqJOXamoPnOJyQjp+nG3d1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n8+UKVMIDg6mZs2afPTRRxdd/8CBA3Tt2hVvb29atGhBVFRUgeN79+5lwIAB+Pv7Exoayj333MP58+edx3v16sXYsWOZMGECVatWpV+/fpf8HHa7nRdeeIGaNWvi5eVFmzZtWLZsmfO4xWJh27ZtvPDCC1gsFp577rmLrnHfffcRFRXFG2+8gcViwWKxcPz4cefxbdu20aFDB3x9fenatSsHDx686M/x/fffp169enh7ewOQnJzMgw8+SLVq1QgICOC6665j165dzvOOHj3KkCFDCA0Nxd/fn44dO7Jy5coCuRISEhg8eDA+Pj7Uq1ePzz77rMBxwzB47rnnqF27Nl5eXoSHhzNu3LhL/jmJiMjFVEiJiEgBbm5uTJ8+nTfffJPTp09f1bV+/vlnzp49y9q1a3n11VeZNm0agwYNonLlymzevJmHH36Yhx566KLvM2XKFCZPnsyOHTuIjIxk8ODBXLhwAXAUGddddx1t27Zl69atLFu2jPj4eG6//fYC15g/fz6enp6sX7+et99++5L53njjDV555RVefvlldu/eTb9+/bjxxhs5fPgwALGxsTRv3pzJkycTGxvL448/fslrREZGMmrUKGJjY4mNjaVWrVrO4//4xz945ZVX2Lp1K+7u7jzwwAMFzj9y5Ajffvst3333nfPZsNtuu42EhASWLl3Ktm3baNeuHb179yYxMRGA9PR0Bg4cyKpVq9ixYwf9+/dn8ODBnDx50nnd++67j1OnTrF69Wq++eYb3nrrLRISEpzHv/32W1577TXeeecdDh8+zKJFi2jZsuVf3k8REfkTQ0RE5DcjRowwhgwZYhiGYXTp0sV44IEHDMMwjIULFxp//r+MadOmGa1bty5w7muvvWbUqVOnwLXq1Klj2Gw2Z1uTJk2MHj16ON/n5+cbfn5+xhdffGEYhmHExMQYgDFz5kxnn7y8PKNmzZrGSy+9ZBiGYfzzn/80+vbtW+B7nzp1ygCMgwcPGoZhGNdcc43Rtm3bv/284eHhxosvvligrWPHjsajjz7qfN+6dWtj2rRpf3mda665xhg/fnyBttWrVxuAsXLlSmfbDz/8YABGVlaWYRiOP0cPDw8jISHB2eeXX34xAgICjOzs7ALXa9CggfHOO+9cNkPz5s2NN99804/caPEAAATSSURBVDAMwzh48KABGFu2bHEej46ONgDjtddeMwzDMF555RWjcePGRm5u7l9+NhERuTSNSImIyCW99NJLzJ8/n+jo6Cu+RvPmzbFa//i/mtDQ0AKjHm5ublSpUqXASAlAZGSk82t3d3c6dOjgzLFr1y5Wr16Nv7+/89W0aVPAMeXtd+3bt//LbKmpqZw9e5Zu3boVaO/WrdtVfeb/1apVK+fX1atXByjweevUqUO1atWc73ft2kV6ejpVqlQp8BljYmKcny89PZ3HH3+cZs2aERQUhL+/P9HR0c4RqejoaNzd3Qv8GTRt2pSgoCDn+9tuu42srCzq/397dxDS9BvHcfyzmsEQwsAVDaIRzWmwFoOCFLYOkl1+UOHB8rKBGrio0AWGN09biodgXiTs0KVDDBZk5Q4FLjIdKHpwh8W8DZK67NbWOvxxuFbhT4z/H//v123PM76/59kO48Pz2/d36pT6+/uVSCRUKpX2bN8AsN9Z/+0FAAD+m/x+v7q6uvTgwQMFg8GauQMHDqhSqdSMffv2ra5GQ0NDzWuLxfLLse/fv+94XcViUYZhKBaL1c1tBRVJamxs3HHNv2n7frc6H27f78/rLBaLOn78uN6+fVtXaysIRSIRzc3NaWJiQqdPn5bNZlN3d7epZhUnTpxQNptVKpXS3NycBgcHNT4+rnfv3tV9RwCAegQpAMBvRaNRnTt3Tm63u2bcbrerUCioUqlUw8FePvvpw4cP8vv9kqRSqaRMJqPbt29Lknw+n54/fy6n0ymrdfc/Y4cPH5bD4VA6nVYgEKiOp9NpXbhwwVStQ4cOqVwu73ot2/l8PhUKBVmt1prmHdul02kFg0Fdu3ZN0j/ha3uDi9bW1urndv78eUlSNpute6aVzWaTYRgyDEPhcFitra1aXV2Vz+fbk70AwH7GrX0AgN/yeDzq7e3Vo0ePasYvXbqkz58/6+HDh8rlcorH45qdnd2z68bjcSUSCa2vryscDuvr16/VJg3hcFhfvnzRjRs3tLi4qFwup9evXysUCpkOM/fv31csFtOzZ8+UzWY1MjKi5eVl3b1711Qdp9OphYUF5fN5bW5umjph+1lnZ6cuXryoq1ev6s2bN8rn83r//r1GR0e1tLQkSXK5XNXmFCsrK7p582bNNd1ut65cuaJbt25pYWFBmUxGfX19stls1fc8efJEjx8/1tramj59+qSnT5/KZrPp5MmTu147APyfEKQAAH80NjZWFwza2to0NTWleDwur9erjx8//rKj3W5Fo1FFo1F5vV7Nz88rmUyqublZkqqnSOVyWZcvX5bH49G9e/fU1NRU83+snbhz546GhoY0PDwsj8ejV69eKZlMyuVymaoTiUR08OBBnTlzRna7vaZ7nlkWi0UvX76U3+9XKBRSS0uLenp6tLGxoWPHjkmSJicndeTIEbW3t8swDHV1ddWdIs3MzMjhcCgQCOj69esaGBjQ0aNHq/NNTU2anp5WR0eHzp49q1QqpRcvXvz1Z2UBwH5hqfx8kzsAAAAA4I84kQIAAAAAkwhSAAAAAGASQQoAAAAATCJIAQAAAIBJBCkAAAAAMIkgBQAAAAAmEaQAAAAAwCSCFAAAAACYRJACAAAAAJMIUgAAAABgEkEKAAAAAEz6AbWbLZrnlI0XAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = subplots(figsize=(10,8))\n", "ax.plot(list(performances_h5py.keys()),list(performances_h5py.values()), \"o-\", label=\"h5py direct chunk\")\n", "ax.plot(list(performances_file.keys()),list(performances_file.values()), \"o-\", label=\"python file\")\n", "ax.plot(list(performances_memmap.keys()),list(performances_memmap.values()), \"o-\", label=\"numpy memmap\")\n", "ax.legend()\n", "ax.set_xlabel(\"Number of threads\")\n", "ax.set_ylabel(\"Number of frames processed by second (fps)\")\n", "ax.set_title(\"Performances to read HDF5 + azimuthal integration of 4Mpix images\");" ] }, { "cell_type": "markdown", "id": "094b673d-f373-431b-92ed-4c9ef9ff3c79", "metadata": {}, "source": [ "## 8. Conclusion\n", "\n", "Reading Bitshuffle-LZ4 data can be parallelized using multi-threading in Python. \n", "\n", "The procedure is a bit tedious but not out of reach for a Python programmer: few threads and a couple of queues. \n", "This burden is worth when coupling decompression with azimuthal integration to reduce the amount of data stored in memory.\n", "\n", "The performances obtained on a 64-core computer are close to what can be obtained from a GPU: ~500 fps\n", "The speed-up obtained with the procedure is 30x on a 64-core computer versus single threaded implementation, which demonstrates multithreading is worth the burden.\n", "\n", "One notices the effort for going arount the different locks from `HDF5` and `h5py` did not bring much more performances. This could be linked to a common limiting factor: the `GIL`. \n", "This demonstration shows multithreaded python is possible but the number of effectively parallel threads is \n", "limited around 40-48 threds on the 2x32 core computer. \n", "Other methods exists to have more simulaneous core: multiprocessing, but also GPU processing which exposed in other notebooks." ] }, { "cell_type": "markdown", "id": "0d2b8105-71d9-4440-93f9-0a30f8f507cc", "metadata": {}, "source": [ "Thanks again to the French-CRG for the computer." ] }, { "cell_type": "code", "execution_count": 53, "id": "b90f5458-9fd4-4d83-bfbd-017e3a9365dd", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Total processing time: 1950.952 s\n" ] } ], "source": [ "print(f\"Total processing time: {time.time()-start_time:.3f} s\")" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.13.1" } }, "nbformat": 4, "nbformat_minor": 5 }