Shows FPS, CPU usage, app and iOS versions above the status bar and report FPS and CPU usage via delegate.
Swift Ruby Objective-C
Latest commit 805eb8e Jan 20, 2017 @dani-gavrilov Change readme


Shows FPS, CPU usage, app and iOS versions above the status bar and report FPS and CPU usage via delegate.

Carthage compatible Pod Version Swift Version Swift Version Swift Version Plaform License MIT

Alt text Alt text Alt text Alt text


Simply add GDPerformanceMonitoring folder with files to your project, or use CocoaPods.


Create a Cartfile that lists the framework and run carthage update. Follow the instructions to add $(SRCROOT)/Carthage/Build/iOS/GDPerformanceView.framework to an iOS project.

github "dani-gavrilov/GDPerformanceView-Swift" ~> 1.1.2

Don't forget to import GDPerformanceView by adding:

import GDPerformanceView


You can use CocoaPods to install GDPerformanceView by adding it to your Podfile:

platform :ios, '8.0'

target 'project_name' do
    pod 'GDPerformanceView-Swift', '~> 1.1.2'

Don't forget to import GDPerformanceView by adding:

import GDPerformanceView_Swift

Usage example

Simply start monitoring. Performance view will be added above the status bar automatically. Also, you can configure appearance as you like or just hide the monitoring view and use its delegate.

You can find example projects here

Start monitoring

Call to start or resume monitoring and show monitoring view.

self.performanceView = GDPerformanceMonitor.init()

Stop monitoring

Call when you're done with performance monitoring.


Call to hide and pause monitoring.



Call to change appearance.

self.performanceView?.configure(configuration: { (textLabel) in
    textLabel?.backgroundColor = .black
    textLabel?.textColor = .white
    textLabel?.layer.borderColor =

Call to change output information.

self.performanceView?.appVersionHidden = true

self.performanceView?.deviceVersionHidden = true

Call to hide monitoring view.


Call to change status bar appearance.

self.performanceView?.configureStatusBarAppearance(prefersStatusBarHidden: false, preferredStatusBarStyle: .lightContent)

Start monitoring and configure

self.performanceView?.startMonitoring(configuration: { (textLabel) in
    textLabel?.backgroundColor = .black
    textLabel?.textColor = .white
    textLabel?.layer.borderColor =


Set the delegate and implement its method.

self.performanceView?.delegate = self
func performanceMonitorDidReport(fpsValue: Int, cpuValue: Float) {
    print(fpsValue, cpuValue)


  • iOS 8.0+
  • xCode 8.2+


Daniil Gavrilov - VK - FB

GDPerformanceView is available under the MIT license. See the LICENSE file for more info.