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):
Image → Request → Handler → Results
[sinkron atau async, sekali proses]
Streaming (video/live audio):
Buffer → Request → Handler → Results → Buffer → ...
[perlu sequence handler yang reuse state antar frame]