Section 3/151 menit

3. Teori: Arsitektur AI Pipeline di iOS

3. Teori: Arsitektur AI Pipeline di iOS

Neural Engine (ANE) dan Hardware Acceleration

Apple Silicon (A-series, M-series) memiliki Neural Engine yang dioptimalkan untuk operasi matrix multiplication — inti dari semua ML inference:

swift
Request → Framework → Core ML → Hardware Dispatch
                                ├── Neural Engine (low power, matrix ops)
                                ├── GPU (parallelism, graphics workloads)
                                └── CPU (general, fallback)

MLComputeUnits.cpuAndNeuralEngine  → ANE + CPU (direkomendasikan)
MLComputeUnits.cpuAndGPU           → GPU + CPU (untuk custom layers)
MLComputeUnits.all                 → hardware otomatis memilih (default)

Request-Handler Pattern (Vision)

Vision menggunakan Request-Handler pattern yang memisahkan apa yang ingin dianalisis dari cara input diberikan:

swift
VNRequest (apa)               VNImageRequestHandler (dari mana)
├── VNRecognizeTextRequest    ├── VNImageRequestHandler(cgImage:)
├── VNDetectFaceRectanglesRequest ├── VNImageRequestHandler(url:)
├── VNClassifyImageRequest    └── VNSequenceRequestHandler (video/stream)
└── VNDetectObjectsRequest

handler.perform([request1, request2])
→ Batch processing: satu pass image untuk multiple requests (efisien)

Streaming vs Batch Processing

swift
Batch (foto):
ImageRequestHandlerResults
[sinkron atau async, sekali proses]

Streaming (video/live audio):
BufferRequestHandlerResultsBuffer → ...
[perlu sequence handler yang reuse state antar frame]