average-vr-56795
03/23/2020, 2:00 PMpex.third_party
- does this sound about right, and do people have thoughts on how to improve that?enough-analyst-54434
03/23/2020, 2:28 PMpkg_resources
use hurting us. Its widely observed that pkg_resources
via its global working_set
variable, scans the full classpath and does alot of often un-needed work that can be slow.average-vr-56795
03/23/2020, 2:29 PMpkg_resources
?enough-analyst-54434
03/23/2020, 2:29 PMenough-analyst-54434
03/23/2020, 2:29 PMenough-analyst-54434
03/23/2020, 2:30 PMenough-analyst-54434
03/23/2020, 2:31 PMworking_set
variable. Pex does not use it.average-vr-56795
03/23/2020, 5:07 PMimport pkg_resources
and exiting: 214ms
import pex.third_party.pkg_resources
and exiting: 303msaverage-vr-56795
03/23/2020, 5:07 PMpkg_resources
appears to a bunch of expensive initialisation, e.g. compiling a bunch of large-ish regexes, on import, which we then don’t actually use when running a pex.average-vr-56795
03/23/2020, 5:08 PMenough-analyst-54434
03/23/2020, 5:09 PMenough-analyst-54434
03/23/2020, 5:13 PMaverage-vr-56795
03/23/2020, 5:15 PMenough-analyst-54434
03/23/2020, 5:15 PMaverage-vr-56795
03/23/2020, 5:15 PMenough-analyst-54434
03/23/2020, 5:15 PMaverage-vr-56795
03/23/2020, 5:16 PMpkg_resources/__init__.py
to verify the right thing was being imported, and when I run a pex file I get that line printed twiceaverage-vr-56795
03/23/2020, 5:17 PMaverage-vr-56795
03/23/2020, 5:19 PMenough-analyst-54434
03/23/2020, 5:20 PMaverage-vr-56795
03/23/2020, 5:21 PMpex
is of the order of 150ms, that feels like pretty expensive reuse…enough-analyst-54434
03/23/2020, 5:21 PMenough-analyst-54434
03/23/2020, 5:21 PMenough-analyst-54434
03/23/2020, 5:22 PMaverage-vr-56795
03/23/2020, 5:23 PMenough-analyst-54434
03/23/2020, 5:23 PMaverage-vr-56795
03/23/2020, 5:28 PMenough-analyst-54434
03/23/2020, 5:31 PMenough-analyst-54434
03/23/2020, 5:32 PMenough-analyst-54434
03/23/2020, 5:32 PMaverage-vr-56795
03/23/2020, 5:32 PM