Skip to content

Conversation

theroggy
Copy link
Member

@theroggy theroggy commented Sep 4, 2025

Some GDAL functions (e.g. executing SQL statements,...) can take a while, so nogil-ling those can already give significant performance improvements when using multithreading.

Remark: determining exactly which GDAL functions take time is not trivial as this can depend on the file format,... For files types with a stricter data schema (e.g. shapefile,...) determining column types is fast, for some other file types (e.g. geojson) the file needs to be read entirely first to determine all data types,.... Hence, a relatively large subset of GDAL calls have been no-gilled to avoid missing significant situations.

theroggy added 30 commits April 3, 2022 01:59
@theroggy theroggy changed the title ENH: unlock the gil during execute of sql ENH: unlock the gil during GDALDatasetExecuteSQL Sep 5, 2025
@theroggy theroggy modified the milestone: 0.11.0 Sep 5, 2025
@jorisvandenbossche
Copy link
Member

Looks good to me!

@theroggy theroggy marked this pull request as ready for review September 5, 2025 19:45
@theroggy theroggy added this to the 0.11.0 milestone Sep 5, 2025
@theroggy theroggy changed the title ENH: unlock the gil during GDALDatasetExecuteSQL ENH: unlock the gil during GDAL functions that can take significant time Sep 8, 2025
@theroggy theroggy modified the milestones: 0.11.0, 0.12.0 Sep 14, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants