wisent-compute 0.4.332__tar.gz → 0.4.333__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {wisent_compute-0.4.332/wisent_compute.egg-info → wisent_compute-0.4.333}/PKG-INFO +1 -1
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/pyproject.toml +1 -1
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/local/disk/staging.py +30 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/local/version_check.py +14 -8
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/local_agent.py +2 -7
- {wisent_compute-0.4.332 → wisent_compute-0.4.333/wisent_compute.egg-info}/PKG-INFO +1 -1
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/LICENSE +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/README.md +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/setup.cfg +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/_catalog/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/_catalog/gpu_sku.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/cli.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/cloud_function/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/cloud_function/main.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/config.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/coordinator.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/coverage/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/coverage/cli.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/coverage/failures.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/dashboard.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/dashboard_summary/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/dashboard_summary/status_view.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/deploy/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/deploy/bootstrap.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/deploy/host_health_beacon.sh +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/deploy/local_install.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/deploy/pre_start_cleanup.sh +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/deploy/templates/wisent-agent.service.tmpl +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/deploy/templates/wisent-host-health.service.tmpl +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/deploy/templates/wisent-host-health.timer.tmpl +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/deploy/templates/wisent-upgrade.service.tmpl +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/deploy/templates/wisent-upgrade.timer.tmpl +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/failure_fixer/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/failure_fixer/cli.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/models.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/monitor/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/monitor/alerts.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/monitor/billing.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/monitor/heartbeat_guard.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/monitor/monitor.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/monitor/reap/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/monitor/reap/helpers.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/monitor/reap/run_reaper.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/profiles/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/profiles/ai_toolkit_zimage.json +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/aws.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/azure.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/azure_helpers/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/azure_helpers/network.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/base.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/gcp/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/gcp/stockout.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/local/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/local/disk/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/local/disk/gate.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/local/gcp_self.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/local/helpers/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/local/helpers/gpu_probe.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/local/hf_rate.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/local/slots.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/vast/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/vast/_auth.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/queue/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/queue/azure_blob.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/queue/capacity.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/queue/listing/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/queue/migrations.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/queue/runs/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/queue/storage.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/queue/submit.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/queue/tracking/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/queue/tracking/tombstone.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/scheduler/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/scheduler/cost.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/scheduler/dispatch/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/scheduler/dispatch/agent.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/scheduler/dispatch/quota_replies.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/scheduler/dispatch/quota_request.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/scheduler/dispatch/quota_skus.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/scheduler/makespan/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/scheduler/makespan/_history.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/scheduler/quota.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/scheduler/scheduler.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/scheduler/skip_done.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/sizing/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/targets/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/targets/registry.example.json +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/templates/__init__.py +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/templates/startup_cpu.sh +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/templates/startup_gpu.sh +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/templates/startup_gpu_agent.sh +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/templates/startup_gpu_agent_azure.sh +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute.egg-info/SOURCES.txt +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute.egg-info/dependency_links.txt +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute.egg-info/entry_points.txt +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute.egg-info/requires.txt +0 -0
- {wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute.egg-info/top_level.txt +0 -0
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/local/disk/staging.py
RENAMED
|
@@ -179,3 +179,33 @@ def setup_agent_staging(log_fn) -> str | None:
|
|
|
179
179
|
f"{target} (disk-backed, {free_gb:.0f}G free)"
|
|
180
180
|
)
|
|
181
181
|
return target
|
|
182
|
+
|
|
183
|
+
|
|
184
|
+
def _flush_staging_child(path: str) -> None:
|
|
185
|
+
from wisent.core.reading.modules.utilities.data.sources.hf.hf_writers import (
|
|
186
|
+
flush_staging_dir,
|
|
187
|
+
)
|
|
188
|
+
flush_staging_dir(path)
|
|
189
|
+
|
|
190
|
+
|
|
191
|
+
def flush_fleet_staging(path: str, log_fn, timeout_s: int = 300) -> bool:
|
|
192
|
+
"""Flush agent-wide HF staging without wedging the agent loop forever."""
|
|
193
|
+
if not os.path.isdir(path) or not any(os.scandir(path)):
|
|
194
|
+
return False
|
|
195
|
+
import multiprocessing as mp
|
|
196
|
+
|
|
197
|
+
proc = mp.Process(target=_flush_staging_child, args=(path,))
|
|
198
|
+
proc.start()
|
|
199
|
+
proc.join(timeout_s)
|
|
200
|
+
if proc.is_alive():
|
|
201
|
+
proc.terminate()
|
|
202
|
+
proc.join(10)
|
|
203
|
+
log_fn(f"fleet staging flush timed out after {timeout_s}s; keeping staging dir")
|
|
204
|
+
return False
|
|
205
|
+
if proc.exitcode != 0:
|
|
206
|
+
log_fn(f"fleet staging flush failed rc={proc.exitcode}; keeping staging dir")
|
|
207
|
+
return False
|
|
208
|
+
shutil.rmtree(path)
|
|
209
|
+
os.makedirs(path, exist_ok=True)
|
|
210
|
+
log_fn("flushed fleet staging dir to HF (1 commit)")
|
|
211
|
+
return True
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/local/version_check.py
RENAMED
|
@@ -44,10 +44,13 @@ def _pypi_latest(pkg: str) -> str | None:
|
|
|
44
44
|
cached = _CACHE.get(pkg)
|
|
45
45
|
if cached and (time.time() - cached[0]) < _CACHE_TTL_SECONDS:
|
|
46
46
|
return cached[1]
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
47
|
+
try:
|
|
48
|
+
with urllib.request.urlopen(
|
|
49
|
+
f"https://pypi.org/pypi/{pkg}/json", timeout=20,
|
|
50
|
+
) as resp:
|
|
51
|
+
data = json.loads(resp.read())
|
|
52
|
+
except Exception:
|
|
53
|
+
return None
|
|
51
54
|
releases = data.get("releases") or {}
|
|
52
55
|
if not releases:
|
|
53
56
|
return None
|
|
@@ -82,10 +85,13 @@ def wisent_import_ok() -> tuple[bool, str]:
|
|
|
82
85
|
claiming jobs that will fail their first `python -m wisent...` line.
|
|
83
86
|
"""
|
|
84
87
|
import subprocess, sys
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
88
|
+
try:
|
|
89
|
+
res = subprocess.run(
|
|
90
|
+
[sys.executable, "-c", "import wisent; import wisent_compute"],
|
|
91
|
+
capture_output=True, text=True, timeout=60,
|
|
92
|
+
)
|
|
93
|
+
except subprocess.TimeoutExpired:
|
|
94
|
+
return False, "import wisent/wisent_compute timed out after 60s"
|
|
89
95
|
if res.returncode == 0:
|
|
90
96
|
return True, ""
|
|
91
97
|
return False, (res.stderr or res.stdout or "(no output)").strip()[:400]
|
|
@@ -30,7 +30,7 @@ from .local.helpers import (
|
|
|
30
30
|
_staging_size_gb,
|
|
31
31
|
_vast_has_renter,
|
|
32
32
|
)
|
|
33
|
-
from .local.disk.staging import setup_agent_staging
|
|
33
|
+
from .local.disk.staging import flush_fleet_staging, setup_agent_staging
|
|
34
34
|
|
|
35
35
|
|
|
36
36
|
POLL_INTERVAL = 10
|
|
@@ -153,12 +153,7 @@ def run_agent(gpu_type: str = "", idle_shutdown: bool = False, kind: str = "loca
|
|
|
153
153
|
except Exception:
|
|
154
154
|
pass
|
|
155
155
|
if time.time() - last_fleet_flush > FLEET_FLUSH_INTERVAL or _staging_size_gb(fleet_staging) > 5:
|
|
156
|
-
|
|
157
|
-
if os.path.isdir(fleet_staging) and any(os.scandir(fleet_staging)):
|
|
158
|
-
flush_staging_dir(fleet_staging)
|
|
159
|
-
shutil.rmtree(fleet_staging)
|
|
160
|
-
os.makedirs(fleet_staging, exist_ok=True)
|
|
161
|
-
_log("flushed fleet staging dir to HF (1 commit)")
|
|
156
|
+
flush_fleet_staging(fleet_staging, _log)
|
|
162
157
|
last_fleet_flush = time.time()
|
|
163
158
|
t = lookup_self(hostname, source="auto")
|
|
164
159
|
if t and t.kind == "local":
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/dashboard_summary/__init__.py
RENAMED
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/dashboard_summary/status_view.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/deploy/host_health_beacon.sh
RENAMED
|
File without changes
|
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/deploy/pre_start_cleanup.sh
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/profiles/ai_toolkit_zimage.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/azure_helpers/__init__.py
RENAMED
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/azure_helpers/network.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/local/__init__.py
RENAMED
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/local/disk/__init__.py
RENAMED
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/local/disk/gate.py
RENAMED
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/local/gcp_self.py
RENAMED
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/providers/local/helpers/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/queue/tracking/tombstone.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/scheduler/dispatch/__init__.py
RENAMED
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/scheduler/dispatch/agent.py
RENAMED
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/scheduler/dispatch/quota_replies.py
RENAMED
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/scheduler/dispatch/quota_request.py
RENAMED
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/scheduler/dispatch/quota_skus.py
RENAMED
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/scheduler/makespan/__init__.py
RENAMED
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/scheduler/makespan/_history.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/targets/registry.example.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute/templates/startup_gpu_agent.sh
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{wisent_compute-0.4.332 → wisent_compute-0.4.333}/wisent_compute.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|