Spaces:
Sleeping
Sleeping
Mark Kittisopikul
commited on
Commit
•
1ec1c46
1
Parent(s):
7e5102a
Set JULIA_PROJECT before loading pyjulia
Browse filesPyCall.jl only needs to be installed in the pysr environment.
- pysr/julia_helpers.py +10 -3
- pysr/sr.py +1 -1
pysr/julia_helpers.py
CHANGED
@@ -12,13 +12,17 @@ def install(julia_project=None, quiet=False): # pragma: no cover
|
|
12 |
|
13 |
Also updates the local Julia registry.
|
14 |
"""
|
|
|
|
|
|
|
|
|
|
|
15 |
import julia
|
16 |
|
17 |
julia.install(quiet=quiet)
|
18 |
|
19 |
-
julia_project, is_shared = _get_julia_project(julia_project)
|
20 |
|
21 |
-
Main = init_julia()
|
22 |
Main.eval("using Pkg")
|
23 |
|
24 |
io = "devnull" if quiet else "stderr"
|
@@ -72,10 +76,13 @@ def is_julia_version_greater_eq(Main, version="1.6"):
|
|
72 |
return Main.eval(f'VERSION >= v"{version}"')
|
73 |
|
74 |
|
75 |
-
def init_julia():
|
76 |
"""Initialize julia binary, turning off compiled modules if needed."""
|
77 |
from julia.core import JuliaInfo, UnsupportedPythonError
|
78 |
|
|
|
|
|
|
|
79 |
try:
|
80 |
info = JuliaInfo.load(julia="julia")
|
81 |
except FileNotFoundError:
|
|
|
12 |
|
13 |
Also updates the local Julia registry.
|
14 |
"""
|
15 |
+
|
16 |
+
# Set JULIA_PROJECT so that we install in the pysr environment
|
17 |
+
julia_project, is_shared = _get_julia_project(julia_project)
|
18 |
+
os.environ["JULIA_PROJECT"] = "@" + julia_project if is_shared else julia_project
|
19 |
+
|
20 |
import julia
|
21 |
|
22 |
julia.install(quiet=quiet)
|
23 |
|
|
|
24 |
|
25 |
+
Main = init_julia(julia_project)
|
26 |
Main.eval("using Pkg")
|
27 |
|
28 |
io = "devnull" if quiet else "stderr"
|
|
|
76 |
return Main.eval(f'VERSION >= v"{version}"')
|
77 |
|
78 |
|
79 |
+
def init_julia(julia_project=None):
|
80 |
"""Initialize julia binary, turning off compiled modules if needed."""
|
81 |
from julia.core import JuliaInfo, UnsupportedPythonError
|
82 |
|
83 |
+
julia_project, is_shared = _get_julia_project(julia_project)
|
84 |
+
os.environ["JULIA_PROJECT"] = "@" + julia_project if is_shared else julia_project
|
85 |
+
|
86 |
try:
|
87 |
info = JuliaInfo.load(julia="julia")
|
88 |
except FileNotFoundError:
|
pysr/sr.py
CHANGED
@@ -1430,7 +1430,7 @@ class PySRRegressor(MultiOutputMixin, RegressorMixin, BaseEstimator):
|
|
1430 |
if multithreading:
|
1431 |
os.environ["JULIA_NUM_THREADS"] = str(self.procs)
|
1432 |
|
1433 |
-
Main = init_julia()
|
1434 |
|
1435 |
if cluster_manager is not None:
|
1436 |
Main.eval(f"import ClusterManagers: addprocs_{cluster_manager}")
|
|
|
1430 |
if multithreading:
|
1431 |
os.environ["JULIA_NUM_THREADS"] = str(self.procs)
|
1432 |
|
1433 |
+
Main = init_julia(self.julia_project)
|
1434 |
|
1435 |
if cluster_manager is not None:
|
1436 |
Main.eval(f"import ClusterManagers: addprocs_{cluster_manager}")
|