| The good thing about any narrative, it resonates with different people on different levels. The blog post is in deed titled "10,000 times faster Swift".
I though it will be a catchy title even though 6 seconds to 0.35 ms is not factor of 10,000. I thought about renaming the title to 500 times faster Swift, which would be rathe more accurate insight of current findings, but than what the hack. It's a blog post. I didn't published a scientific paper. I just reflected on my resent work. The main points of the Blog posts wehere anyways about how it is possible to make low level optimisations to make Swift programs faster. And as a matter of fact the Loop-invariant code motion was a valid technique to get the same result. Result being sum of payload content. The compiler was smarter than me. It gave me the same result doing 250times less work. I find it impressive. I must be honest I am not fluent in assembly this is why I could not figure it out by myself. Was I suspicious? Absolutely!!!
But the facts were in my face. Shouldn't I publish an article, where I am not sure why I got what I got?
If I wouldn't publish the article, I would not figured out the truth and wouldn't learned form this experience. And after all, this post is about performance pitfalls in Swift language. The comparison with C was almost accidental. I would compare it with C++ if I would have a Windows machine, as the benchmark for C++ project has Windows specific code. I also consulted with the author of flatcc, who is much more relaxed about my blog post than you are :) This blog post is about learning something. I learned something before I wrote this post I shared it and now I learned even more. You should try it yourself. Maybe not as satisfying as criticising, but it also has it's moments. |