3 ms·
Almost all UI programing is single threaded. If the main thread is blocked for more than 10-16ms, then frames start dropping and the UI is unresponsive for tha
by thoughtfunction 8y ago
Almost all UI programing is single threaded. If the main thread is blocked for more than 10-16ms, then frames start dropping and the UI is unresponsive for that time.
Add locks and you add many more causes for the main thread to be blocked beyond pure computation.
- speedplane 8y agoNot just UI programming, almost all programming is single threaded. What programmer wants to deal with threads, really? They only do because they need to get more performance out of a chip. And that leads us to the real problem. Chips are not advancing at the rate they should. Additional performance gains come from adding multiple chips to the same die, not making the chips faster. This forces programmers to think about parallelism, which makes everything harder. In the mid-90s, chips were improving so faster that you wouldn't need to consider special tricks, you could just wait 3 or 4 months and a chip would come out that handled your application. Now single processor performance is basically at a standstill and it's up to the software developer to spread work in parallel to make things faster.
- fipple 8y ago> Chips are not advancing at the rate they should. A weird interpretation of a singular event in the history of technology. No wheel maker complained because wood wasn’t getting twice as strong every 18 months.
- speedplane 8y agoMoore’s law and folks like Ray Kurzweil have for decades been driving the point that this isn’t a single event, but a trend that will continue indefinitely. I don’t buy it myself, but it’s now become conventional wisdom. We’ve been taught for decades that chips will double in performance every 18 months (I know Moore said transistor count, not performance). It’s now turning out to be untrue. We think about the singularity all the time, but haven’t properly considered what will happen if technology improvements stall.
- oblio 8y agoWe need multi-threading to be super simple but for that we need mass adoption of new programming tools and techniques (and the corresponding mass-abandoning of old ones). But good luck with that! You're fighting against the most powerful force in the universe: economics (more specifically sunk cost into existing investments). "Soft"ware is a lot "harder" once economics are taken into account.
- jjeaff 8y agoThat's why I opted for fewer cores but highest possible core speed. I can't stand any UI lag.