What time-sharing is The first Intel multicore CPU Pentium D was released in 2005, however operating systems have become multitasking way earlier. Already in 1960-x, multiple users were able to interact at the same time with the IBM 709 mainframe using separate terminals, despite it having only a single CPU core. The trick was in allocating short time slices of the CPU time to each running process…
Grace Murray Hopper said that one accurate measurement is worth a thousand expert opinions. However, it’s hard to measure phenomenons, without strictly defining them. This article is a gentle introduction to web application performance measurements. Difference between latency and response time Response time and latency are distinct concepts that play crucial roles in describing performance of the…
Usually when we talk about software performance we face two kinds of problems. First, the system is given while the load is going to increase. In this case we want to know how the response time could change, how many servers we need to add to handle load. The second is when we’re trying to improve system performance. Considering the load as constant, we want to know how to reduce the response…
Response time is a metric that shows how fast software responds. This is the time between request was sent and the time response was received. The questions arise right from the start: a sorting of 100 000 elements naturally requires more time than of 100. How to measure a system response time in this case? It’s natural to agree on some standard fixed request and perform a load test: send a lot of…
Hi! I’m Andrey Pakhomov, currently a solution architect at Epam Systems. Thank you for reading my personal blog. Here you may found notes on stuff I found interesting or useful. Usually, it’s something about how to craft software or how to understand and negotiate what software to craft. I strongly believe that software development is a team play, where the only way to win in is to be…
You may often hear about “high throughput” or “scalability” in context of the requirements for a software. Usually, it’s intuitively understood like a software that should process a “lot of data”. In this article we uncover fundamental restrictions that limit system’s throughput and scalability. The hidden bottleneck Throughput of a system refers to a number of…