Performance Benchmarks
Detailed performance benchmarks for Data Helpers.
Introduction
Section titled “Introduction”Data Helpers is optimized for high performance:
- 914,285 instances/sec - DTO creation rate
- 198x faster validation - With caching enabled
- Low memory footprint - ~1.2 KB per instance
- Microsecond operations - Most operations under 1μs
DTO Creation
Section titled “DTO Creation”SimpleDTO: 914,285 instances/secPlain Array: 1,200,000 instances/sec
SimpleDTO adds type safety with minimal overheadValidation
Section titled “Validation”Without Cache
Section titled “Without Cache”5,000 validations/sec0.2ms per validationWith Cache
Section titled “With Cache”990,000 validations/sec0.001ms per validation
Improvement: 198x fasterType Casting
Section titled “Type Casting”String Cast: 1,200,000 casts/secInteger Cast: 1,150,000 casts/secDateTime Cast: 450,000 casts/secEnum Cast: 800,000 casts/secSerialization
Section titled “Serialization”toArray(): 850,000 operations/sectoJson(): 720,000 operations/sectoXml(): 180,000 operations/secDataAccessor
Section titled “DataAccessor”Simple Get: ~0.3μsNested Get: ~0.4μsWildcard Get: ~5.0μsDataMutator
Section titled “DataMutator”Simple Set: ~0.6μsNested Set: ~0.9μsDeep Set: ~1.1μsDataMapper
Section titled “DataMapper”Simple Map: ~5.0μsNested Map: ~6.5μsTemplate Map: ~5.5μsMemory Usage
Section titled “Memory Usage”DTO Instance: ~1.2 KBWith Validation: ~1.5 KBWith Caching: ~0.8 KBComparison with Similar Packages
Section titled “Comparison with Similar Packages”Data Helpers performs well compared to similar DTO and serialization packages:
Instance Creation
Section titled “Instance Creation”SimpleDTO: 914,285 instances/secTypical DTO packages: 200,000-400,000 instances/sec
Result: 2-4x faster than typical alternativesValidation Performance
Section titled “Validation Performance”With Caching: 990,000 validations/secWithout Cache: 5,000 validations/secTypical packages: 30,000-80,000 validations/sec
Result: Caching provides 198x improvementMemory Efficiency
Section titled “Memory Efficiency”SimpleDTO: ~1.2 KB per instanceTypical packages: 2-4 KB per instance
Result: 40-70% less memory usageFramework Support
Section titled “Framework Support”SimpleDTO: Laravel, Symfony, Doctrine, Plain PHPTypical packages: Often framework-specific
Result: True framework-agnostic designSee Also
Section titled “See Also”- Running Benchmarks - How to run
- Optimization - Optimization guide