Timezone Finding Performance Benchmark
System Status
Python Environment
Python Version: 3.14.2 (CPython)
NumPy Version: 2.4.4
Platform: Darwin arm64
Processor: arm
TimezoneFinder Configuration
C Implementation Available: False
Numba JIT Available: True
Performance Optimizations
✗ Using pure Python point-in-polygon implementation
✓ Numba JIT compilation enabled
Benchmark Configuration
Test Queries: 10,000
Algorithm Type: Timezone Finding
Test Modes: File-based and In-memory
Query Types: On-land points and Random points
File-Based Mode
Results for ‘on land points’ (points included in a land timezone)
Function Name |
Seconds/Query |
Points/Second |
|---|---|---|
certain_timezone_at() |
1.3e-04 |
8k |
TimezoneFinder.certain_timezone_at() |
9.6e-05 |
10k |
timezone_at_land() |
4.5e-06 |
221k |
TimezoneFinder.timezone_at_land() |
4.7e-06 |
213k |
timezone_at() |
4.3e-06 |
235k |
TimezoneFinder.timezone_at() |
4.7e-06 |
211k |
unique_timezone_at() |
7.3e-07 |
1369k |
TimezoneFinder.unique_timezone_at() |
6.6e-07 |
1519k |
TimezoneFinderL.unique_timezone_at() |
6.6e-07 |
1521k |
TimezoneFinderL.timezone_at_land() |
9.8e-07 |
1021k |
TimezoneFinderL.timezone_at() |
6.8e-07 |
1470k |
Results for random points (anywhere on earth)
Function Name |
Seconds/Query |
Points/Second |
|---|---|---|
certain_timezone_at() |
1.3e-04 |
8k |
TimezoneFinder.certain_timezone_at() |
6.7e-05 |
15k |
timezone_at_land() |
3.1e-06 |
320k |
TimezoneFinder.timezone_at_land() |
3.1e-06 |
327k |
timezone_at() |
2.8e-06 |
360k |
TimezoneFinder.timezone_at() |
2.7e-06 |
370k |
unique_timezone_at() |
6.8e-07 |
1463k |
TimezoneFinder.unique_timezone_at() |
6.6e-07 |
1520k |
TimezoneFinderL.unique_timezone_at() |
6.6e-07 |
1509k |
TimezoneFinderL.timezone_at_land() |
9.6e-07 |
1046k |
TimezoneFinderL.timezone_at() |
6.8e-07 |
1460k |
In-Memory Mode
Note
Global functions and TimezoneFinderL do not support in-memory mode.
Results for ‘on land points’ (points included in a land timezone)
Function Name |
Seconds/Query |
Points/Second |
|---|---|---|
TimezoneFinder.certain_timezone_at() |
9.2e-05 |
11k |
TimezoneFinder.timezone_at_land() |
3.3e-06 |
299k |
TimezoneFinder.timezone_at() |
3.0e-06 |
335k |
TimezoneFinder.unique_timezone_at() |
6.4e-07 |
1569k |
Results for random points (anywhere on earth)
Function Name |
Seconds/Query |
Points/Second |
|---|---|---|
TimezoneFinder.certain_timezone_at() |
1.3e-04 |
8k |
TimezoneFinder.timezone_at_land() |
2.5e-06 |
405k |
TimezoneFinder.timezone_at() |
2.0e-06 |
497k |
TimezoneFinder.unique_timezone_at() |
6.7e-07 |
1484k |