This virtual workshop will introduce participants to compiled code bindings in Python. Unlike “High-Performance Python: CPUs”, this workshop will explore using an existing or multipurpose compiled library from Python code for either performance or to reuse legacy calculations.
Learning objectives: Attendees will learn how to call C from Python, and how to create Python bindings for a C++ library using PyBind11, and have some idea of other existing methods.
Knowledge prerequisites: Basic Python knowledge, basic to intermediate knowledge of a compiled language, preferably C++.
Hardware/software prerequisites: (1) Bring a laptop which can connect to the eduroam wireless network. You will also need to be able to Duo authenticate to use campus resources. (2) Have an SSH client installed on your laptop. (3) Register for an account on Adroit. This is the cluster we will use for demonstration purposes. Make sure you can SSH to Adroit before the workshop by following this guide. (4) Optional: Have the Anaconda Distribution installed on your laptop to run and build things locally.
Virtual Workshop format: Lecture and hands-on
There is limited enrollment for this workshop. Please register online at princeton.edu/training