|
|
|
|
@ -1,4 +1,5 @@
|
|
|
|
|
import { convertFileSize } from '@/utils';
|
|
|
|
|
import { useIntl } from '@umijs/max';
|
|
|
|
|
import _ from 'lodash';
|
|
|
|
|
import React from 'react';
|
|
|
|
|
import '../style/gpu-card.less';
|
|
|
|
|
@ -6,17 +7,26 @@ import '../style/gpu-card.less';
|
|
|
|
|
const GPUCard: React.FC<{
|
|
|
|
|
data: any;
|
|
|
|
|
}> = ({ data }) => {
|
|
|
|
|
const intl = useIntl();
|
|
|
|
|
return (
|
|
|
|
|
<div className="gpu-card">
|
|
|
|
|
<div className="header">
|
|
|
|
|
{data.label}({data.worker_name})[Index:{data.index}]
|
|
|
|
|
{data.label}({data.worker_name})[
|
|
|
|
|
{intl.formatMessage({ id: 'resources.table.index' })}:{data.index}]
|
|
|
|
|
</div>
|
|
|
|
|
<div className="info">
|
|
|
|
|
<span>VRAM:</span>
|
|
|
|
|
<span>Total {convertFileSize(data?.memory?.total || 0)}</span>
|
|
|
|
|
<span>Used {convertFileSize(data?.memory?.used || 0)}</span>
|
|
|
|
|
<span>{intl.formatMessage({ id: 'resources.table.vram' })}:</span>
|
|
|
|
|
<span>
|
|
|
|
|
Utilization {_.round(data?.memory?.utilization_rate || 0, 2)}%
|
|
|
|
|
{intl.formatMessage({ id: 'resources.table.total' })}{' '}
|
|
|
|
|
{convertFileSize(data?.memory?.total || 0)}
|
|
|
|
|
</span>
|
|
|
|
|
<span>
|
|
|
|
|
{intl.formatMessage({ id: 'resources.table.used' })}{' '}
|
|
|
|
|
{convertFileSize(data?.memory?.used || 0)}
|
|
|
|
|
</span>
|
|
|
|
|
<span>
|
|
|
|
|
{intl.formatMessage({ id: 'resources.table.utilization' })}{' '}
|
|
|
|
|
{_.round(data?.memory?.utilization_rate || 0, 2)}%
|
|
|
|
|
</span>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|