I'm unsatisified with how long it takes the looper CLI to run. I guess it's because looper imports a bunch of heavy stuff, like pandas, peppy, sqlalchemy (via pephubclient), etc.
A lot of these aren't necessary.
I suggest we see if it's possible to import some of the heaviest things only as needed, instead of at the top of the file as is typically done.
You can profile import time like this:
python -X importtime -c 'import looper'
I'm unsatisified with how long it takes the
looperCLI to run. I guess it's because looper imports a bunch of heavy stuff, likepandas,peppy,sqlalchemy(via pephubclient), etc.A lot of these aren't necessary.
I suggest we see if it's possible to import some of the heaviest things only as needed, instead of at the top of the file as is typically done.
You can profile import time like this:
python -X importtime -c 'import looper'