shared pool execution is now working

two shared implementations
benchmark