Yolo Vision Shenzhen
Shenzhen
Iscriviti ora
Glossario

CPU

Esplorate il ruolo vitale della CPU nell'AI e nel Machine Learning. Scoprite il suo utilizzo nella preparazione dei dati, nell'inferenza e come si confronta con le GPU/TPU.

A Central Processing Unit (CPU) is the primary component of a computer that acts as its "brain," responsible for interpreting and executing instructions from hardware and software. In the context of artificial intelligence (AI), the CPU plays a fundamental role in data handling, system orchestration, and executing inference, particularly on edge devices where power efficiency is critical. While specialized hardware like GPUs are often associated with the heavy lifting of training deep learning models, the CPU remains indispensable for the overall machine learning (ML) pipeline.

Il ruolo delle CPU nei flussi di lavoro dell'IA

Although GPUs are celebrated for their massive parallelism during training, the CPU is the workhorse for many essential stages of the computer vision (CV) lifecycle. Its architecture, typically based on x86 (Intel, AMD) or ARM designs, is optimized for sequential processing and complex logic control.

  • Data Preprocessing: Before a neural network can learn, data must be prepared. CPUs excel at tasks such as file loading, data cleaning, and complex transformations using libraries like NumPy and OpenCV.
  • Inferenza edge: per l'implementazione nel mondo reale, l'esecuzione di modelli su server di grandi dimensioni non è sempre fattibile. Le CPU consentono un'efficiente implementazione dei modelli su hardware consumer, come l'esecuzione Ultralytics su un laptop o un Raspberry Pi.
  • Post-Processing: After a model outputs raw probabilities, the CPU often handles the final logic, such as Non-Maximum Suppression (NMS) in object detection, to filter out duplicate predictions and refine results.

CPU vs. GPU vs. TPU

Comprendere il panorama hardware è fondamentale per ottimizzare le operazioni di machine learning (MLOps). Questi processori differiscono in modo significativo nella loro architettura e nei casi d'uso ideali.

  • CPU: Designed for versatility and complex logic. It features a few powerful cores that process tasks sequentially. It is best for data augmentation, pipeline management, and low-latency inference on small batches.
  • GPU Graphics Processing Unit): Originariamente destinate alla grafica, le GPU dispongono di migliaia di core più piccoli progettati per l' elaborazione parallela. Sono lo standard per l' addestramento dei modelli perché possono eseguire moltiplicazioni matriciali molto più velocemente di una CPU.
  • TPU (Tensor Processing Unit): A specialized circuit (ASIC) developed by Google Cloud specifically for tensor math. While highly efficient for specific workloads, it lacks the general-purpose flexibility of a CPU.

Applicazioni nel mondo reale

CPUs are frequently the hardware of choice for applications where cost, availability, and energy consumption outweigh the need for massive raw throughput.

  1. Smart Security Cameras: In security alarm systems, cameras often process video feeds locally. A CPU-based object detection model can identify a person or vehicle and trigger an alert without sending video to the cloud, preserving bandwidth and user privacy.
  2. Automazione industriale: nelle fabbriche, i sistemi di manutenzione predittiva utilizzano CPU per monitorare i dati dei sensori provenienti dai macchinari. Questi sistemi analizzano le vibrazioni o i picchi di temperatura in tempo reale per prevedere i guasti, garantendo un'automazione della produzione senza intoppi e senza la necessità di costosi GPU . .

Esecuzione dell'inferenza sulla CPU Ultralytics

Gli sviluppatori spesso testano i modelli sulle CPU per verificare la compatibilità con ambienti di elaborazione serverless o dispositivi a basso consumo energetico . Ultralytics consente di indirizzare facilmente la CPU, garantendo che l'applicazione funzioni ovunque.

L'esempio seguente mostra come caricare un modello leggero ed eseguire l'inferenza specificatamente sulla CPU:

from ultralytics import YOLO

# Load the lightweight YOLO26 nano model
# Smaller models are optimized for faster CPU execution
model = YOLO("yolo26n.pt")

# Run inference on an image, explicitly setting the device to 'cpu'
results = model.predict("https://ultralytics.com/images/bus.jpg", device="cpu")

# Print the detection results (bounding boxes)
print(results[0].boxes.xywh)

To further improve performance on Intel CPUs, developers can export their models to the OpenVINO format, which optimizes the neural network structure specifically for x86 architecture. For managing datasets and orchestrating these deployments, tools like the Ultralytics Platform simplify the workflow from annotation to edge execution.

Unitevi alla comunità di Ultralytics

Entra nel futuro dell'AI. Connettiti, collabora e cresci con innovatori globali

Iscriviti ora