@@ -17,6 +17,8 @@ on intervals.
17171 . ` array_intersection_tree.py ` : alternative array-based implementation of an intersection tree.
18181 . ` test_comparison.py ` : comprehensive test suite comparing both implementations.
19191 . ` performance_analysis.py ` : detailed performance analysis and benchmarking tools.
20+ 1 . ` build_time_analysis.py ` : comprehensive build time performance analysis.
21+ 1 . ` build_time_focused_analysis.py ` : focused analysis answering build vs query performance questions.
2022
2123## Implementation Comparison
2224
@@ -33,7 +35,23 @@ on intervals.
3335- Slightly slower execution (~ 20% overhead) due to array indexing
3436
3537### Performance Characteristics
36- - ** Memory Usage** : Array-based implementation uses ~ 70% less memory
37- - ** Execution Speed** : Traditional implementation is ~ 20% faster
38- - ** Cache Locality** : Array-based shows potential for better cache performance with sequential access patterns
39- - ** Scalability** : Both implementations scale similarly with increasing dataset size
38+
39+ #### Query Performance
40+ - ** Traditional (Node-based)** : ~ 20% faster query execution
41+ - ** Array-based** : ~ 20% slower query execution
42+ - Both scale similarly with increasing dataset size
43+
44+ #### Build/Insertion Performance
45+ - ** Traditional (Node-based)** : ~ 12% faster build time
46+ - ** Array-based** : ~ 12% slower build time
47+ - Node-based achieves ~ 310k insertions/sec vs ~ 250k insertions/sec for array-based
48+
49+ #### Memory Usage
50+ - ** Traditional (Node-based)** : Higher memory usage (~ 3x more)
51+ - ** Array-based** : ~ 70% less memory usage
52+ - Better cache locality potential for sequential access patterns
53+
54+ #### Trade-off Summary
55+ - ** Array-based** : Slower build (~ 12%) and query (~ 20%) but major memory savings (~ 70%)
56+ - ** Node-based** : Faster in all operations but uses significantly more memory
57+ - ** Recommendation** : Use node-based for performance-critical, use array-based for memory-constrained environments
0 commit comments