parallel execution with futures from default python3 lib
parallel execution using joblib
converted all to python3, included profiling log