How do you write efficient Python code for high-throughput data pipelines, and what are the implications of the GIL?