added performance comparison