Pythonバインディングとは? (主に)C/C++で書かれたコードをpythonで使えるようにすることを言います。 このようなことを行う理由としては、Pythonはもともと計算のパフォーマンスがあまり良くなく、ボトルネックとなるような処理をC/C++のような処理の速いコンパイル言語で記述し、それをPythonから呼び出せるようにするためで、これによって計算のボトルネックを解消することがしばしば行われます。 C/C++以外でもバインディングすることもあるかと思いますが、C/C++だとSIMDやOpenMP、CUDAといったハードウェアアクセラレーションとの親和性も高く、特に科学技術系ではこのような高速化が行われることが多いです。 Pythonバインディングを行うためのライブラリ 本記事で取り上げるnanobindを紹介する前に、現在よく使用されている他のPythonバインディングライブラリ