Computer performance: Difference between revisions

Content deleted Content added
No edit summary
Information about Processor
 
(2 intermediate revisions by 2 users not shown)
Line 4:
 
* Short [[Response time (technology)|response time]] for a given piece of work.
* High [[throughput]]: (rate of processing work tasks).
* Low utilization of [[computing resource]]s.
** Fast (or highly compact) [[data compression]] and decompression.
Line 82:
{{Main|Bandwidth (computing)}}
 
In computer networking, bandwidth is a measurement of bit-rate of available or consumed [[data communication]] resources, expressed in bits per second or multiples of it (bit/s, kbit/s, Mbit/s, Gbit/s, etc.).
 
Bandwidth sometimes defines the net bit rate (aka. peak bit rate, information rate, or physical layer useful bit rate), channel capacity, or the maximum throughput of a logical or physical communication path in a digital communication system. For example, bandwidth tests measure the maximum throughput of a computer network. The reason for this usage is that according to Hartley's law, the maximum data rate of a physical communication link is proportional to its bandwidth in hertz, which is sometimes called frequency bandwidth, spectral bandwidth, RF bandwidth, signal bandwidth or analog bandwidth.
Line 150:
 
Profiling is achieved by instrumenting either the program [[source code]] or its binary executable form using a tool called a ''profiler'' (or ''code profiler''). A number of different techniques may be used by profilers, such as event-based, statistical, instrumented, and simulation methods.
 
== Processor ==
The central processing unit (CPU), also called the central processor, main processor, or simply the processor, is the primary processor in a given computer. Its electronic circuits execute instructions of a computer program, such as arithmetic, logical, control, and input-output (I/O) operations.<ref>{{Cite web|title=What is processor (CPU)?|url=https://www.techtarget.com/whatis/definition/processor|access-date=2025-08-15|work=www.techtarget.com}}</ref>
 
The performance or speed of a processor depends, among other things, on the clock frequency (usually measured in hertz) and the number of instructions per cycle (IPC), which together determine the number of instructions per second (IPS) the CPU can execute.<ref>{{Cite web|title=How is Processor Speed Measured: Understanding CPU Performance Metrics|url=https://bytebitebit.com/cpu/how-is-processor-speed-measured/|access-date=2025-08-15|work=bytebitebit.com}}</ref> Many reported IPS values represent "peak" execution speeds for artificial instruction sequences with few branches, whereas real workloads consist of a mix of instructions and applications, some of which run longer than others. The performance of the memory hierarchy also greatly affects processor performance, a factor that is rarely considered when calculating IPS. Due to these issues, various standardized tests, often called "benchmarks," such as SPECint, have been developed to attempt to measure real effective performance in commonly used applications.
 
When choosing a computer or mobile device, processor performance plays a major role and is selected according to the tasks to be solved. For example, the Intel Core i7 processor has been a reliable "workhorse" of computing technology for many years, providing overall performance for both mobile users and professionals. The Core i7 serves as a main high-performance processor offering balanced performance for general computing tasks.<ref>{{Cite web|title=Intel Core Ultra 7 vs i7|url=https://www.geekom.co.uk/intel-core-ultra-7-vs-i7|access-date=2025-08-15|work=www.geekom.co.uk}}</ref>
 
Computer performance increases through the use of multicore processors, which essentially connect two or more separate processors (in this sense called cores) on a single integrated circuit. Ideally, a dual-core processor should be almost twice as powerful as a single-core one. In practice, performance gains are much smaller, about 50%, due to imperfect software algorithms and implementation.<ref>{{Cite web|title=Quad Core Vs. Dual Core|url=https://techspirited.com/quad-core-vs-dual-core|access-date=2025-08-15|work=techspirited.com}}</ref> Increasing the number of cores in a processor (e.g., dual-core, quad-core, etc.) increases the workload it can handle. This means the processor can now process numerous asynchronous events, interrupts, and so forth, which might negatively impact the CPU under overload. These cores can be viewed as different floors in a processing plant, where each floor handles its own task. Sometimes these cores will process the same tasks as neighboring cores if one core is insufficient for handling the information. Multicore CPUs enhance a computer's ability to perform multiple tasks simultaneously by providing additional computational power. However, the speed increase is not directly proportional to the number of cores added. This is because cores need to interact via specific channels, and this inter-core communication consumes part of the available computing power.<ref>{{Cite web|title=Factors Affecting Multi-Core Processors Performance|url=https://pcsite.co.uk/factors-affecting-multi-core-processors-performance/|access-date=2025-08-15|work=pcsite.co.uk}}</ref>
 
Due to the specific capabilities of modern CPUs, such as simultaneous multithreading and uncore— which imply shared use of actual CPU resources to improve utilization—monitoring performance levels and hardware usage has gradually become a more complex task.<ref>{{Cite web|title=CPU utilization of multi-threaded architectures explained|url=https://blogs.oracle.com/solaris/post/cpu-utilization-of-multi-threaded-architectures-explained|access-date=2025-08-15|work=blogs.oracle.com}}</ref> In response, some CPUs implement additional hardware logic that tracks the actual utilization of various parts of the CPU and provides various counters accessible to software; an example is Intel's Performance Counter Monitor technology.<ref>{{Cite web|title=Intel Performance Counter Monitor - A Better Way to Measure CPU Utilization|url=https://www.intel.com/content/www/us/en/developer/articles/tool/performance-counter-monitor.html|access-date=2025-08-15|work=www.intel.com}}</ref>
 
== Performance tuning ==