TimezoneFinder Initialization 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 Runs Per Configuration: 100
Algorithm Type: Class Initialization
Test Configurations: TimezoneFinder and TimezoneFinderL with file-based and in-memory modes
Initialization Performance Results
Configuration |
Average Time (ms) |
Average Time (s) |
|---|---|---|
TimezoneFinder (File-Based) |
212.2 |
0.212 |
TimezoneFinder (In-Memory) |
218.9 |
0.219 |
TimezoneFinderL (File-Based) |
206.6 |
0.207 |
TimezoneFinderL (In-Memory) |
209.5 |
0.209 |
Performance Analysis
Fastest configuration: TimezoneFinderL (File-Based) (206.6 ms)
Slowest configuration: TimezoneFinder (In-Memory) (218.9 ms)
Performance difference: 6% faster
File-based mode is 2% faster (209.4 ms vs 214.2 ms)
Note
Initialization times may vary based on system I/O performance, available memory, and background system activity. In-memory mode loads all data into RAM during initialization, while file-based mode opens files but defers data loading.