{"action":"opened","issue":{"url":"https://api.github.com/repos/stevengj/PyCall.jl/issues/113","labels_url":"https://api.github.com/repos/stevengj/PyCall.jl/issues/113/labels{/name}","comments_url":"https://api.github.com/repos/stevengj/PyCall.jl/issues/113/comments","events_url":"https://api.github.com/repos/stevengj/PyCall.jl/issues/113/events","html_url":"https://github.com/stevengj/PyCall.jl/issues/113","id":54958153,"number":113,"title":"Precompilation significantly slows Julia startup","user":{"login":"binarybana","id":392846,"avatar_url":"https://avatars.githubusercontent.com/u/392846?v=3","gravatar_id":"","url":"https://api.github.com/users/binarybana","html_url":"https://github.com/binarybana","followers_url":"https://api.github.com/users/binarybana/followers","following_url":"https://api.github.com/users/binarybana/following{/other_user}","gists_url":"https://api.github.com/users/binarybana/gists{/gist_id}","starred_url":"https://api.github.com/users/binarybana/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/binarybana/subscriptions","organizations_url":"https://api.github.com/users/binarybana/orgs","repos_url":"https://api.github.com/users/binarybana/repos","events_url":"https://api.github.com/users/binarybana/events{/privacy}","received_events_url":"https://api.github.com/users/binarybana/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-01-20T23:53:46Z","updated_at":"2015-01-20T23:53:46Z","closed_at":null,"body":"Julia startup time with PyCall precompiled into base/userimg.jl jumps in commit d19995c5fd895aa6a249cb6b6d1164dc2826e8f2 from <1 second to ~10 seconds on several of my machines (with both Julia 0.3.6 and some 0.4 masters).\r\n\r\nI found this with a git bisect using a quick and dirty script:\r\n```bash\r\n#!/bin/bash\r\n# GOOD PyCall: 896f82a\r\n# BAD PyCall: ebe352f\r\n\r\nJIFILE=/tmp/test_bisect\r\njulia /home/jason/src/julia/contrib/build_sysimg.jl $JIFILE native /tmp/userimg.jl --force > /dev/null\r\n\r\nT1=`date +%s`\r\n/bin/time -f %U julia -J ${JIFILE}.ji -E \"0\"\r\nTIME=$(echo `date +%s`-$T1 | bc -l)\r\necho $TIME\r\n\r\nif [[ `echo \"$TIME>2\" | bc -l` -eq 1 ]]; then\r\n        echo \"Long\"\r\n        exit 1\r\nelse\r\n        echo \"Short\"\r\n        exit 0\r\nfi\r\n```\r\nI'm not actually sure if this is a problem with PyCall or Julia, so if the latter, then let me know and I'll move the bug up the stack.\r\n\r\nI don't know enough about PyCall to debug this further, but I did do some macro level debugging in [this mailing list thread](https://groups.google.com/forum/#!topic/julia-dev/uvEgky_QKmY). At the time I did not know that it was from PyCall specifically."}}