chore: show used vram for a second

This commit is contained in:
jialin
2025-07-17 12:01:49 +08:00
parent 32ba5e1802
commit ddbbe92a85
4 changed files with 27 additions and 5 deletions
+11
View File
@@ -40,6 +40,9 @@ export default function useTableFetch<ListItem>(
const { sortOrder, setSortOrder } = useTableSort({ const { sortOrder, setSortOrder } = useTableSort({
defaultSortOrder: 'descend' defaultSortOrder: 'descend'
}); });
const [extraStatus, setExtraStatus] = useState<Record<string, any>>({
firstLoad: true
});
const [dataSource, setDataSource] = useState<{ const [dataSource, setDataSource] = useState<{
dataList: ListItem[]; dataList: ListItem[];
@@ -59,6 +62,7 @@ export default function useTableFetch<ListItem>(
perPage: 10, perPage: 10,
search: '' search: ''
}); });
const { setChunkRequest } = useSetChunkRequest(); const { setChunkRequest } = useSetChunkRequest();
const { updateChunkedList, cacheDataListRef } = useUpdateChunkedList({ const { updateChunkedList, cacheDataListRef } = useUpdateChunkedList({
events: events, events: events,
@@ -77,6 +81,8 @@ export default function useTableFetch<ListItem>(
} }
}); });
const debounceSetExtraStatus = _.debounce(setExtraStatus, 3000);
const updateHandler = (list: any) => { const updateHandler = (list: any) => {
_.each(list, (data: any) => { _.each(list, (data: any) => {
updateChunkedList(data); updateChunkedList(data);
@@ -148,6 +154,10 @@ export default function useTableFetch<ListItem>(
total: dataSource.total, total: dataSource.total,
totalPage: dataSource.totalPage totalPage: dataSource.totalPage
}); });
} finally {
debounceSetExtraStatus({
firstLoad: false
});
} }
}; };
@@ -277,6 +287,7 @@ export default function useTableFetch<ListItem>(
sortOrder, sortOrder,
queryParams, queryParams,
modalRef, modalRef,
extraStatus,
setQueryParams, setQueryParams,
handleDelete, handleDelete,
handleDeleteBatch, handleDeleteBatch,
+1 -1
View File
@@ -517,7 +517,7 @@ export const getBackendParamsTips = (backend: string) => {
return { return {
backend: 'vLLM', backend: 'vLLM',
releases: 'https://github.com/vllm-project/vllm/releases', releases: 'https://github.com/vllm-project/vllm/releases',
link: 'https://docs.vllm.ai/en/stable/serving/openai_compatible_server.html#cli-reference', link: 'https://docs.vllm.ai/en/latest/configuration/engine_args.html',
version: 'v0.8.5' version: 'v0.8.5'
}; };
} }
+5 -1
View File
@@ -44,6 +44,7 @@ const GPUList: React.FC = () => {
const { const {
dataSource, dataSource,
queryParams, queryParams,
extraStatus,
handlePageChange, handlePageChange,
handleTableChange, handleTableChange,
handleSearch, handleSearch,
@@ -184,9 +185,12 @@ const GPUList: React.FC = () => {
})} })}
dataIndex="VRAM" dataIndex="VRAM"
key="VRAM" key="VRAM"
render={(text, record: GPUDeviceItem) => { render={(text, record: GPUDeviceItem, index: number) => {
return ( return (
<ProgressBar <ProgressBar
open={
index === 0 && dataSource.loadend && extraStatus.firstLoad
}
percent={ percent={
record.memory?.used record.memory?.used
? _.round(record.memory?.utilization_rate, 0) ? _.round(record.memory?.utilization_rate, 0)
+10 -3
View File
@@ -96,6 +96,7 @@ const Workers: React.FC = () => {
rowSelection, rowSelection,
queryParams, queryParams,
modalRef, modalRef,
extraStatus,
handleDelete, handleDelete,
handleDeleteBatch, handleDeleteBatch,
fetchData, fetchData,
@@ -383,12 +384,12 @@ const Workers: React.FC = () => {
title={intl.formatMessage({ id: 'resources.table.vram' })} title={intl.formatMessage({ id: 'resources.table.vram' })}
dataIndex="VRAM" dataIndex="VRAM"
key="VRAM" key="VRAM"
render={(text, record: ListItem) => { render={(text, record: ListItem, rIndex) => {
return ( return (
<span className="flex-column flex-gap-2"> <span className="flex-column flex-gap-2">
{_.map( {_.map(
_.sortBy(record?.status?.gpu_devices || [], ['index']), _.sortBy(record?.status?.gpu_devices || [], ['index']),
(item: GPUDeviceItem, index: string) => { (item: GPUDeviceItem, index: number) => {
return ( return (
<span key={index}> <span key={index}>
<span className="flex-center"> <span className="flex-center">
@@ -399,6 +400,12 @@ const Workers: React.FC = () => {
[{item.index}] [{item.index}]
</span> </span>
<ProgressBar <ProgressBar
open={
rIndex === 0 &&
index === 0 &&
dataSource.loadend &&
extraStatus.firstLoad
}
key={index} key={index}
percent={ percent={
item.memory?.used item.memory?.used
@@ -442,7 +449,7 @@ const Workers: React.FC = () => {
title={intl.formatMessage({ id: 'resources.table.disk' })} title={intl.formatMessage({ id: 'resources.table.disk' })}
dataIndex="storage" dataIndex="storage"
key="storage" key="storage"
render={(text, record: ListItem) => { render={(text, record: ListItem, index) => {
return ( return (
<ProgressBar <ProgressBar
percent={calcStorage(record.status?.filesystem)} percent={calcStorage(record.status?.filesystem)}