Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/WorldDownTown/Benchmark
The Benchmark⏲ module provides methods to measure and report the time used to execute Swift code.
https://github.com/WorldDownTown/Benchmark
benchmark carthage cocoapods swift
Last synced: 3 months ago
JSON representation
The Benchmark⏲ module provides methods to measure and report the time used to execute Swift code.
- Host: GitHub
- URL: https://github.com/WorldDownTown/Benchmark
- Owner: WorldDownTown
- License: mit
- Created: 2016-05-24T14:43:37.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2017-05-05T01:41:04.000Z (over 7 years ago)
- Last Synced: 2024-08-03T16:08:40.772Z (3 months ago)
- Topics: benchmark, carthage, cocoapods, swift
- Language: Swift
- Homepage:
- Size: 12.7 KB
- Stars: 85
- Watchers: 5
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
- awesome-ios - Benchmark - The Benchmark module provides methods to measure and report the time used to execute Swift code. (Tools / Web View)
- awesome-ios-star - Benchmark - The Benchmark module provides methods to measure and report the time used to execute Swift code. (Tools / Web View)
README
# Benchmark
The Benchmark⏲ module provides methods to measure and report the time used to execute Swift code.[![License](https://img.shields.io/:license-mit-blue.svg)](https://doge.mit-license.org)
[![Language](https://img.shields.io/badge/language-swift-orange.svg?style=flat)](https://developer.apple.com/swift)
[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)
[![CocoaPods compatible](https://img.shields.io/cocoapods/v/Benchmark.svg?style=flat)](http://cocoadocs.org/docsets/Benchmark/)
[![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/matteocrippa/awesome-swift#utility)## Installation
### Carthage```
// Cartfile
github "WorldDownTown/Benchmark"
```### CocoaPods
```
// Podfile
pod 'Benchmark'
```## Usage
### Simple measure```swift
import BenchmarkBenchmark.measure() {
print(self) // don't have to set weak.
for _ in 0...10000000 { }
}
// Benchmark: 0.1690970063 sec.// Benchamrk can be set name.
Benchmark.measure("Measure1") {
for _ in 0...10000000 { }
}
// Measure1: 0.1690970063 sec.
```### Multiple measure
```swift
import Benchmarkfunc heavyMethod() {
let outer = Benchmark(key: "outer")let inner = Benchmark(key: "inner")
// some light processes
for _ in 0...10 { }inner.finish() // inner: 0.0002210140 sec.
// some heavy processes
for _ in 0...10000000 { }outer.finish() // outer: 0.1663100123 sec.
}
```### Through another Class (or Struct or file ...)
```swift
import Benchmarkclass Foo {
func execute() {
Benchmark.start()
}
}class Bar {
func execute() {
Benchmark.finish()
}
}Foo().execute()
Bar().execute() // Benchmark: 0.0001509786 sec.
```### Using operator
```swift
import Benchmark// same as Benchmark.measure {}
⏲{
for _ in 0...10000000 { }
}
// Benchmark: 0.1653281017 sec.
```## Contributing
Contributions are more than welcome! If you have an improvement or a feature you wish to have added to `Benchmark`, then please don't hesitate to send a pull request!## Author
WorldDownTown @ gmail.com## License
`Benchmark` is available under the MIT license. See the LICENSE file for more info.