There are a few design decisions that mean pygad runs quite slowly, which can be problematic if you're using it to evaluate relatively cheap functions.
Do you accept PRs? There are a few things I could change quite easily to improve the runtime and reduce the overhead from pygad.
Thanks!