What optimization level did you try this at? You are also including the print func in your performance test which is a non-trivial amount of code being executed. Also when in doubt profile the code to see the time spent to better nail down the hotspot locations.
If performance issues exist then leveraging things like a lookup table of pre-built structure can help, etc. -Shawn On Sat, Apr 8, 2017 at 9:19 AM Proyb P via swift-users < swift-users@swift.org> wrote: > I have found this took about 0.001s to print 256 characters > Compare to Python took 0.000016s to print 256 characters, see F8 code and > have modify to run only one call instead of 1000 iterations. > https://gist.github.com/anonymous/18e372e8d0173e77b5c405920d4d3080 > > As this is frequently use for server-side swift that will definitely > affected by expensive call, are there any alternative solution for > converting Int to character close to Python timing? > > import Foundation > var display: String = "" > > func printTimeElapsedWhenRunningCode(title: String, operation: ()->()) > { > let startTime = CFAbsoluteTimeGetCurrent() > operation() > let timeElapsed = CFAbsoluteTimeGetCurrent() - startTime > print("Time elapsed for \(title): \(timeElapsed) s") > } > > printTimeElapsedWhenRunningCode(title: "s1()") { > let startingValue = Int(("A" as UnicodeScalar).value) // 65 > for i in 0 ..< 256 { > print(Character(UnicodeScalar(i + startingValue)!)) > } > } > _______________________________________________ > swift-users mailing list > swift-users@swift.org > https://lists.swift.org/mailman/listinfo/swift-users >
_______________________________________________ swift-users mailing list swift-users@swift.org https://lists.swift.org/mailman/listinfo/swift-users