BIN520 HIGH PERFORMANCE PYTHON
| Course Code: |
9080520 |
| METU Credit (Theoretical-Laboratory hours/week): |
3(3-0) |
| ECTS Credit: |
8.0 |
| Department: |
Bioinformatics |
| Language of Instruction: |
English |
| Level of Study: |
Graduate |
| Course Coordinator: |
|
| Offered Semester: |
Fall and Spring Semesters. |
Course Content
The course is an advanced exploration of software performance optimization for students with prior
Python experience. Students will learn about fundamental computer system architecture. memory
hierarchies. and communication layers. Students will learn how to identify execution bottlenecks using
profiling tools such as cProfile. Scalene. and VizTracer. and how to resolve them using compilation
strategies including Cython. Numba. Rust. and PyPy. The curriculum covers efficient data processing
using NumPy. PyTorch (GPU). Pandas. and Polars. memory optimization techniques including
probabilistic data structures. and strategies for maximizing hardware utilization through asynchronous I/
O with asyncio and uvloop. multiprocessing with Joblib and shared memory. and distributed clustering
with Docker and message brokers. The course also addresses the future of Python developments like JIT
compilation and No-GIL. The course prepares students to build scalable. robust solutions for dataintensive
scientific and industrial problems)