test

(−1)符号部 × 2指数部 × 仮数部

$${(-1)^{\text{符号部}} \times 2^{\text{指数部}} \times \text{仮数部}}$$

符号 指数部 仮数部 有効桁数
FP32 1bit 8bit 23bit 6~7桁
FP16 1bit 5bit 10bit 3~4桁
BF16 1bit 8bit 7bit 3桁
FP8 1bit 4bit 3bit 1~2桁
FP4 1bit 2bit 1bit 1桁未満
gantt
    title Quantization Timeline
    dateFormat YYYY-MM-DD
    axisFormat %Y
    section IEEE 754
        FP16        : 2008-08-01, 2026-06-08

    section Google
        BF16        : 2018-05-01, 2026-06-08

    section OCP / NVIDIA
        FP8         : 2022-09-01, 2026-06-08
        FP8_scaled  : 2022-09-01, 2026-06-08
        MXFP8       : 2023-10-17, 2026-06-08
        NVFP4       : 2024-03-18, 2026-06-08

FP32 FP16 BF16 FP8 FP8_scaled MXFP8 FP4
NVIDIA
RTX 5000(Blackwell)
RTX 4000(Ada Lovelace) × ×
RTX 3000(Ampere) × × × ×
RTX 2000(Turing) × × × × ×
GTX 1000(Pascal) × × × × ×
AMD
RX 9000 (RDNA4) × ×
RX 7000 (RDNA3) × × × ×
RX 6000 (RDNA2) × × × × ×
RX 5000 (RDNA1) × × × × ×
Intel
Arc B (Battlemage) × × × ×
Arc A (Alchemist) × × × ×

// プラグインをグローバルに登録(必須) Chart.register(ChartDataLabels);

const rawData = [ { name: 'FP32', size: 35.2, mae: 100.0, ssim: 100.0 }, { name: 'FP16', size: 17.6, mae: 96.2, ssim: 96.6 }, { name: 'BF16', size: 17.6, mae: 95.6, ssim: 95.2 }, { name: 'MXFP8', size: 10.3, mae: 94.2, ssim: 93.3 }, { name: 'FP8_scaled', size: 10.1, mae: 93.5, ssim: 93.2 }, { name: 'FP8', size: 8.8, mae: 87.5, ssim: 73.3 }, { name: 'NVFP4', size: 6.8, mae: 88.4, ssim: 78.9 } ];

const maeData = rawData.map(d => ({ x: d.size, y: d.mae, name: d.name })); const ssimData = rawData.map(d => ({ x: d.size, y: d.ssim, name: d.name }));

const ctx2 = document.getElementById('chartjs1').getContext('2d');

new Chart(ctx2, { type: 'scatter', data: { datasets: [ { label: 'MAE Similarity', data: maeData, backgroundColor: 'rgb(255, 99, 132)', borderColor: 'rgb(255, 99, 132)', pointRadius: 4, datalabels: { color: 'rgb(255, 99, 132)', align: 'top', anchor: 'end', formatter: value => value.name } }, { label: 'SSIM Similarity', data: ssimData, backgroundColor: 'rgb(54, 162, 235)', borderColor: 'rgb(54, 162, 235)', pointRadius: 4, datalabels: { color:'rgb(54, 162, 235)', align: 'bottom', anchor: 'start',

                formatter: value => value.name
            }
        }
    ]
},
options: {
    aspectRatio: 0.71,
    plugins: {
        title: {
            display: true,
            text: 'Model Quantization: MAE and SSIM Similarity',
        },
        tooltip: {
            callbacks: {
                label: context => {
                    const pt = context.raw;
                    return `${pt.name} — Size: ${pt.x} GB, Similarity: ${pt.y}%`;
                }
            }
        }
    },
    scales: {
        x: {
            min: 0,
            max: 20,
            reverse: true,
            title: {
                display: true,
                text: 'Size (GB)',
            },
        },
        y: {
            min: 70,
            max: 100,
            title: {
                display: true,
                text: 'Similarity (%)',
            }, 
        }
    }
}

});

vs_FP32 MAE_Similarity SSIM_Similarity Size
FP32 100% 100% 35.2 GB
FP16 96.2 % 96.6 % 17.6 GB
BF16 95.6 % 95.2 % 17.6 GB
MXFP8 94.2 % 93.3 % 10.3 GB
FP8_scaled 93.5 % 93.2 % 10.1 GB
FP8 87.5 % 73.3 % 8.8 GB
NVFP4 88.4 % 78.9 % 6.8 GB
gantt
    title GPU Series Roadmap
    dateFormat YYYY-MM-DD
    tickInterval 12month
    axisFormat %Y
    section NVIDIA
        GTX 1000  : 2016-05-27, 2026-06-08
        RTX 2000  : 2018-09-20, 2026-06-08
        RTX 3000  : 2020-09-17, 2026-06-08
        RTX 4000  : 2022-10-12, 2026-06-08
        RTX 5000  : 2025-01-30, 2026-06-08
    section AMD
        RX 5000   : 2019-07-07, 2026-06-08
        RX 6000   : 2020-11-18, 2026-06-08
        RX 7000   : 2022-12-13, 2026-06-08
        RX 9000   : 2025-03-06, 2026-06-08
    section Intel
        Arc A     : 2022-03-30, 2026-06-08
        Arc B     : 2024-12-13, 2026-06-08

function createChart1() { const ctx = document.getElementById('chartjs1').getContext('2d');

const labels = ['FP32', 'FP16', 'BF16', 'MXFP8', 'FP8_scaled', 'FP8', 'NVFP4'];

const colors = [ 'rgb(201, 203, 207)', // Gray 'rgb(54, 162, 235)', // Blue 'rgb(75, 192, 192)', // Cyan 'rgb(153, 102, 255)', // Purple 'rgb(255, 99, 132)', // Red 'rgb(255, 159, 64)', // Orange 'rgb(255, 205, 86)', // Yellow ];

const datasets = [ { label: 'Generation Time', data: [361.4, 98.3, 96.9, 112.8, 73.4, 92.1, 90.4], colors: colors // 各データに対応する色の配列 } ];

chartInstance = new Chart(ctx, { type: 'bar', data: { labels: labels, datasets: datasets.map(ds => ({ label: ds.label, data: ds.data, backgroundColor: ds.colors.map(c => c.replace('rgb', 'rgba').replace(')', ', 0.2)')), borderColor: ds.colors, borderWidth: 1 })) }, options: { indexAxis: 'y', aspectRatio: 0.71, scales: { x: { title: { display: true, text: 'Time (sec)' }, grid: { display: false }
}, y: { stacked: false, grid: { display: false } } }, plugins: { title: { display: true, text: 'Model Quantization: Generation Time' }, legend: { display: false }, datalabels: { display: true, anchor: 'end', align: 'right', formatter: (value) => { return value.toFixed(1); } } } } }); }

Generation_Time Time (sec) Size
FP32 361.4 35.2 GB
FP16 98.3 17.6 GB
BF16 96.9 17.6 GB
MXFP8 112.8 10.3 GB
FP8_scaled 73.4 10.1 GB
FP8 92.1 8.8 GB
NVFP4 90.4 6.8 GB