Cargando…

Multiplatform Programming with Python

<!--HTML-->In this course the students can learn how to write platform agnostic code using Python (and some C). Some knowledge (~1 year experience) of these two languages is recommended. The lecture will focus on how Python can easily be combined with C for CPU and GPU programming, by exploit...

Descripción completa

Detalles Bibliográficos
Autor principal: Kicsiny, Peter
Lenguaje:eng
Publicado: 2023
Materias:
Acceso en línea:http://cds.cern.ch/record/2852039
Descripción
Sumario:<!--HTML-->In this course the students can learn how to write platform agnostic code using Python (and some C). Some knowledge (~1 year experience) of these two languages is recommended. The lecture will focus on how Python can easily be combined with C for CPU and GPU programming, by exploiting the advantages of both languages. The goal is to introduce 3 Python libraries that are used at CERN (e.g. in modern multiparticle simulation frameworks): CFFI, CuPy and PyOpenCL. CFFI is a library for Python-C interfacing and CPU kernel execution. CuPy and PyOpenCL are libraries for kernel execution compatible with GPUs. Additionally, there will be a short review of heterogeneous programming and a comparison of the CUDA and OpenCL programming models. In a subsequent tutorial session the students will be able to play around with these Python libraries.