do multicore implementation