Я профилировал свой код и обнаружил, что> 50% времени работы тратится на строку, присваивающую значение в словаре Swift.Оптимизация скорости выполнения Swift Dictionary
Running Time Self (ms) Symbol Name
10675.0ms 51.0% 9.0 Swift.Dictionary.subscript.setter (A) -> B?
Это вторая строка этого Fuction
func isConsistent<V, D>(variable: V, value: D, assignment: Dictionary<V, D>, csp: CSP<V,D>) -> Bool {
var tempAssignment = assignment
tempAssignment[variable] = value
Это одна строка в программе среднего размера (который принимает нетривиальное времени (~ 80 секунд на моем 1,7 Ггц i7) для выполнения) и эта конкретная линия не называется чаще, чем большинство других. Как я могу ускорить его?
см http://stackoverflow.com/questions/31353299/swift-dictionary -slow-even-with-optimizes-doing-uncessary-keep-release – matt
Это год и не относится к назначению как к проблеме. – davecom
Почему downvote? – davecom