Pre-exported OpenVINO IR variants of SAM3.1 for efficient CPU and GPU inference.
Origin & License
These models are derived from Meta's SAM 3.1 (facebook/sam3), and therefore follow the same license under the SAM License
The OpenVINO IR exports and quantized variants in this repository are derivative works of the original SAM 3.1 model weights and are subject to the same SAM License terms. No model architecture was modified β only the format (PyTorch β ONNX β OpenVINO IR) and optional weight compression were applied.
Available Variants
Variant
Description
Size
openvino-fp16
FP16 β recommended for GPU
1.63 GB
openvino-fp32
FP32 β reference precision for CPU
3.25 GB
openvino-int8_sym
INT8 symmetric β CPU-optimized
~0.83 GB
openvino-int8_asym
INT8 asymmetric β CPU-optimized
~0.83 GB
openvino-int4_sym
INT4 symmetric β ultra-low memory CPU
~0.45 GB
openvino-int4_asym
INT4 asymmetric β ultra-low memory CPU
~0.45 GB
openvino-int8_w8a16
W8A16 weight-only β recommended for both CPU and GPU
0.84 GB
openvino-int8_ptq_gpu
W8A8 post-training quantization β best CPU throughput
* LED dataset uses visual-only prompts; F1=0.000 in text mode is expected (no text labels provided).
Quantization Summary β GPU
Approach
Avg text (ms)
Avg canvas (ms)
vs FP16
Notes
FP16 (baseline)
452
593
1.00Γ
Native GPU precision
PTQ W8A8 (all layers)
~640
~780
0.73Γ
Q/DQ overhead on FP16-optimized GPU
PTQ W8A8 (VE only)
~650
~760
0.72Γ
Mixed-precision boundary overhead
W8A16 (weight-only)
475
614
0.96Γ
No activation Q/DQ; near-lossless
Why PTQ is slower on GPU: Modern GPU compute units (e.g., FP16 DPAS) are highly optimized for FP16 math. NNCF PTQ inserts explicit Q/DQ activation nodes at every layer boundary; those extra kernel launches exceed the memory savings from 2Γ smaller weights. W8A16 (weight-only) has no such nodes β weights are dequantized on-the-fly in a fused kernel β giving only ~4% overhead.
Why INT8 is faster on CPU: VNNI instructions natively accelerate INT8 dot products with no separate Q/DQ overhead. The OV CPU plugin fuses dequantize into the matmul kernel, giving 1.67Γ speedup with zero accuracy loss.
from instantlearn.models.sam3 import SAM3OpenVINO
from instantlearn.models.sam3.sam3_openvino import SAM3OVVariant
# FP16 β fastest on GPU
model = SAM3OpenVINO(variant=SAM3OVVariant.FP16, device="GPU")
# W8A16 β recommended for CPU or memory-constrained GPU
model = SAM3OpenVINO(variant=SAM3OVVariant.INT8_W8A16, device="CPU")
model = SAM3OpenVINO(variant=SAM3OVVariant.INT8_W8A16, device="GPU")