several optimizations + new benchmarks