+
+ {row.outcome}
+
+ {(row.detail || row.reason) && (
+
{row.detail ?? row.reason}
+ )}
+
+ ),
+ sortValue: (row) => `${row.outcome} ${row.reason ?? ''}`,
+ },
+ {
+ header: 'Bulk GB/s',
+ cell: (row) => formatGbps(cellsOf(row).bulk?.gbps_p50),
+ sortValue: (row) => cellsOf(row).bulk?.gbps_p50 ?? -1,
+ className: 'text-right tabular-nums',
+ },
+ {
+ header: 'p64 GB/s b1',
+ cell: (row) => formatGbps(cellsOf(row).p64b1?.gbps_p50),
+ sortValue: (row) => cellsOf(row).p64b1?.gbps_p50 ?? -1,
+ className: 'text-right tabular-nums',
+ },
+ {
+ header: 'p64 GB/s bmax',
+ cell: (row) => {
+ const cell = cellsOf(row).p64bmax;
+ if (!cell) return '-';
+ return `${formatGbps(cell.gbps_p50)} (b${cell.batch})`;
+ },
+ sortValue: (row) => cellsOf(row).p64bmax?.gbps_p50 ?? -1,
+ className: 'text-right tabular-nums whitespace-nowrap',
+ },
+ {
+ header: 'p16 GB/s b1',
+ cell: (row) => formatGbps(cellsOf(row).p16b1?.gbps_p50),
+ sortValue: (row) => cellsOf(row).p16b1?.gbps_p50 ?? -1,
+ className: 'text-right tabular-nums',
+ },
+ {
+ header: 'Handoff ms',
+ cell: (row) => {
+ const cell = cellsOf(row).p64b1;
+ return cell ? cell.latency_ms.p50.toFixed(1) : '-';
+ },
+ sortValue: (row) => cellsOf(row).p64b1?.latency_ms.p50 ?? -1,
+ className: 'text-right tabular-nums',
+ },
+ ],
+ [],
+ );
+ if (rows.length === 0) return null;
+ const measured = rows.filter((row) => row.outcome === 'success').length;
+ return (
+