Go to Top

Metal

Continuous Integration for testing Metal GPGPU shaders for iOS with Swig, Numpy and Python

Apple Inc’s Metal is an alternative to OpenGL for graphics processing on iPhone and iPad, but it also supports general purpose data-parallel programming for GPUs (i.e. GPGPU programming) it is an alternative to OpenCL and Nvidia’s Cuda. The Metal shading language is based on the C++11 Specification [PDF] with specific extensions and restrictions, but one challenge with Metal is …Read More

Example of Sharing Memory between GPU and CPU with Swift and Metal for iOS8

1. Background In two prior postings I presented i) data-parallel Swift/Metal example and ii) benchmark (compared to Accelerate) of how to use Swift combined with Metal for General Purpose GPU based processing on iOS8 devices (e.g. iPhone and iPad), this posting extends those by showing how use shared memory between GPU and CPU with Swift …Read More

GPGPU Performance of Swift/Metal vs Accelerate on iPhone 6 & 5S, iPad Air and iPad Mini

1. Background In a prior posting I presented how to use Swift combined with Metal for General Purpose GPU based processing, this posting presents related benchmarks – compared to using the Accelerate Framework – on iPhone 5S, iPhone 6, iPad Air and iPad Mini. All Swift/Metal and Accelerate code and benchmarks can be found at …Read More

Data-Parallel Programming with Metal and Swift for iPhone/iPad GPU

Apple describes Metal as: “Metal provides the lowest-overhead access to the GPU, enabling you to maximize the graphics and compute potential of your iOS 8 app. With a streamlined API, precompiled shaders, and support for efficient multi-threading, Metal can take your game or graphics app to the next level of performance and capability.” – source: …Read More