概要 大量データに関するワークロードを、モノリシックに解決する場合、並行・並列処理の知識は活用できます 但し、一般にPythonにはGILが存在するため、正しい挙動を抑えておきたい所です 内容 Pythonにおける並行処理・並列処理 プロセス = OSが管理する実行単位 (CPUコア毎) スレッド = プロセス内の軽量な実行単位 (1CPUコア内) 上記前提を踏まえると、以下となります 並行処理 = 1つのプロセスに複数のスレッドが存在します (PythonはGILにより基本1プロセス制約です) 並列処理 = 複数のプロセスを並行して進めます (複数プロセス活用できます) MMU (Memory Management Unit)に関して プロセスから参照するメモリはMMUにより制御された仮想メモリを参照します。MMUによりプロセス間ではメモリ競合は起きません (1プロセス ≒ 1CPUコア