maj
This commit is contained in:
@@ -9,41 +9,41 @@ from app.schemas.hardware import HardwareData
|
||||
|
||||
class CPUResults(BaseModel):
|
||||
"""CPU benchmark results"""
|
||||
events_per_sec: Optional[float] = None
|
||||
duration_s: Optional[float] = None
|
||||
score: Optional[float] = None
|
||||
events_per_sec: Optional[float] = Field(None, ge=0)
|
||||
duration_s: Optional[float] = Field(None, ge=0)
|
||||
score: Optional[float] = Field(None, ge=0, le=10000)
|
||||
|
||||
|
||||
class MemoryResults(BaseModel):
|
||||
"""Memory benchmark results"""
|
||||
throughput_mib_s: Optional[float] = None
|
||||
score: Optional[float] = None
|
||||
throughput_mib_s: Optional[float] = Field(None, ge=0)
|
||||
score: Optional[float] = Field(None, ge=0, le=10000)
|
||||
|
||||
|
||||
class DiskResults(BaseModel):
|
||||
"""Disk benchmark results"""
|
||||
read_mb_s: Optional[float] = None
|
||||
write_mb_s: Optional[float] = None
|
||||
iops_read: Optional[int] = None
|
||||
iops_write: Optional[int] = None
|
||||
latency_ms: Optional[float] = None
|
||||
score: Optional[float] = None
|
||||
read_mb_s: Optional[float] = Field(None, ge=0)
|
||||
write_mb_s: Optional[float] = Field(None, ge=0)
|
||||
iops_read: Optional[int] = Field(None, ge=0)
|
||||
iops_write: Optional[int] = Field(None, ge=0)
|
||||
latency_ms: Optional[float] = Field(None, ge=0)
|
||||
score: Optional[float] = Field(None, ge=0, le=10000)
|
||||
|
||||
|
||||
class NetworkResults(BaseModel):
|
||||
"""Network benchmark results"""
|
||||
upload_mbps: Optional[float] = None
|
||||
download_mbps: Optional[float] = None
|
||||
ping_ms: Optional[float] = None
|
||||
jitter_ms: Optional[float] = None
|
||||
packet_loss_percent: Optional[float] = None
|
||||
score: Optional[float] = None
|
||||
upload_mbps: Optional[float] = Field(None, ge=0)
|
||||
download_mbps: Optional[float] = Field(None, ge=0)
|
||||
ping_ms: Optional[float] = Field(None, ge=0)
|
||||
jitter_ms: Optional[float] = Field(None, ge=0)
|
||||
packet_loss_percent: Optional[float] = Field(None, ge=0, le=100)
|
||||
score: Optional[float] = Field(None, ge=0, le=10000)
|
||||
|
||||
|
||||
class GPUResults(BaseModel):
|
||||
"""GPU benchmark results"""
|
||||
glmark2_score: Optional[int] = None
|
||||
score: Optional[float] = None
|
||||
glmark2_score: Optional[int] = Field(None, ge=0)
|
||||
score: Optional[float] = Field(None, ge=0, le=10000)
|
||||
|
||||
|
||||
class BenchmarkResults(BaseModel):
|
||||
@@ -53,7 +53,7 @@ class BenchmarkResults(BaseModel):
|
||||
disk: Optional[DiskResults] = None
|
||||
network: Optional[NetworkResults] = None
|
||||
gpu: Optional[GPUResults] = None
|
||||
global_score: float = Field(..., ge=0, le=100, description="Global score (0-100)")
|
||||
global_score: float = Field(..., ge=0, le=10000, description="Global score (0-10000)")
|
||||
|
||||
|
||||
class BenchmarkPayload(BaseModel):
|
||||
|
||||
@@ -6,6 +6,7 @@ from pydantic import BaseModel
|
||||
from typing import Optional, List
|
||||
from app.schemas.benchmark import BenchmarkSummary
|
||||
from app.schemas.hardware import HardwareSnapshotResponse
|
||||
from app.schemas.document import DocumentResponse
|
||||
|
||||
|
||||
class DeviceBase(BaseModel):
|
||||
@@ -53,6 +54,7 @@ class DeviceDetail(DeviceBase):
|
||||
updated_at: str
|
||||
last_benchmark: Optional[BenchmarkSummary] = None
|
||||
last_hardware_snapshot: Optional[HardwareSnapshotResponse] = None
|
||||
documents: List[DocumentResponse] = []
|
||||
|
||||
class Config:
|
||||
from_attributes = True
|
||||
|
||||
@@ -89,6 +89,7 @@ class NetworkInterface(BaseModel):
|
||||
ip: Optional[str] = None
|
||||
speed_mbps: Optional[int] = None
|
||||
driver: Optional[str] = None
|
||||
wake_on_lan: Optional[bool] = None
|
||||
|
||||
|
||||
class NetworkInfo(BaseModel):
|
||||
@@ -100,6 +101,7 @@ class MotherboardInfo(BaseModel):
|
||||
"""Motherboard information schema"""
|
||||
vendor: Optional[str] = None
|
||||
model: Optional[str] = None
|
||||
bios_vendor: Optional[str] = None
|
||||
bios_version: Optional[str] = None
|
||||
bios_date: Optional[str] = None
|
||||
|
||||
|
||||
Reference in New Issue
Block a user