fetch_ml/internal/scheduler
Jeremie Fraeys 43e6446587
feat(scheduler): implement multi-tenant job scheduler with gang scheduling
Add new scheduler component for distributed ML workload orchestration:
- Hub-based coordination for multi-worker clusters
- Pacing controller for rate limiting job submissions
- Priority queue with preemption support
- Port allocator for dynamic service discovery
- Protocol handlers for worker-scheduler communication
- Service manager with OS-specific implementations
- Connection management and state persistence
- Template system for service deployment

Includes comprehensive test suite:
- Unit tests for all core components
- Integration tests for distributed scenarios
- Benchmark tests for performance validation
- Mock fixtures for isolated testing

Refs: scheduler-architecture.md
2026-02-26 12:03:23 -05:00
..
auth.go feat(scheduler): implement multi-tenant job scheduler with gang scheduling 2026-02-26 12:03:23 -05:00
hub.go feat(scheduler): implement multi-tenant job scheduler with gang scheduling 2026-02-26 12:03:23 -05:00
pacing.go feat(scheduler): implement multi-tenant job scheduler with gang scheduling 2026-02-26 12:03:23 -05:00
port_allocator.go feat(scheduler): implement multi-tenant job scheduler with gang scheduling 2026-02-26 12:03:23 -05:00
priority_queue.go feat(scheduler): implement multi-tenant job scheduler with gang scheduling 2026-02-26 12:03:23 -05:00
protocol.go feat(scheduler): implement multi-tenant job scheduler with gang scheduling 2026-02-26 12:03:23 -05:00
scheduler_conn.go feat(scheduler): implement multi-tenant job scheduler with gang scheduling 2026-02-26 12:03:23 -05:00
service_manager.go feat(scheduler): implement multi-tenant job scheduler with gang scheduling 2026-02-26 12:03:23 -05:00
service_manager_unix.go feat(scheduler): implement multi-tenant job scheduler with gang scheduling 2026-02-26 12:03:23 -05:00
service_manager_windows.go feat(scheduler): implement multi-tenant job scheduler with gang scheduling 2026-02-26 12:03:23 -05:00
service_templates.go feat(scheduler): implement multi-tenant job scheduler with gang scheduling 2026-02-26 12:03:23 -05:00
state.go feat(scheduler): implement multi-tenant job scheduler with gang scheduling 2026-02-26 12:03:23 -05:00
template.go feat(scheduler): implement multi-tenant job scheduler with gang scheduling 2026-02-26 12:03:23 -05:00