{"id":22221,"date":"2026-11-13T15:00:00","date_gmt":"2026-11-13T14:00:00","guid":{"rendered":"https:\/\/webhosting.de\/?p=22221"},"modified":"2026-11-05T08:25:52","modified_gmt":"2026-11-05T07:25:52","slug":"shared-hosting-fast-cpu-low-number-of-cores","status":"publish","type":"post","link":"https:\/\/webhosting.de\/en\/shared-hosting-schnelle-cpu-geringe-kernzahl\/","title":{"rendered":"Shared Hosting: When Fast CPUs Can Help, Even With Few Cores"},"content":{"rendered":"<div class=\"wh-article\" data-wh-layout=\"2.1.2\" style=\"width:100%;max-width:820px;margin:0 auto;color:#263b4b;font-family:inherit;font-size:18px;line-height:1.8;text-align:start;overflow-wrap:break-word;box-sizing:border-box\"><p class=\"wh-lead\" style=\"font-size:20px;line-height:1.7;color:#233746;margin:0 0 1.1em\">A fast CPU can be helpful in shared hosting even with a low CPU budget: It may speed up the computationally intensive part of a single dynamic PHP request. However, when there are many concurrent requests, it also matters how much <strong style=\"font-weight:700;color:inherit\">CPU time<\/strong> the total capacity provided by the plan and how many workers are available. A high GHz value alone does not guarantee short load times or higher throughput. Cache hits and wait times for databases or external services also influence the result.  <\/p>\n<nav class=\"wh-toc\" aria-label=\"Contents of this article\" style=\"display:block;margin:28px 0 38px;padding:22px;border:1px solid #d9e4e8;border-radius:14px;background:#f4f8f8\"><p class=\"wh-toc-title\" style=\"font-size:13px;font-weight:700;letter-spacing:.08em;color:#49656b;margin:0 0 14px\">Go directly to the section<\/p><div class=\"wh-toc-grid\" style=\"display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:10px\"><div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#cpu-begriffe\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Distinguishing Between Cores, Threads, and CPU Time<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#takt-und-leistung\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Why GHz Alone Isn't the Deciding Factor<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#php-und-parallelitaet\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">PHP Requests and Parallel Processing<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#quota-rechenbeispiel\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">CPU Quota Under Parallel Load<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#praxis-workloads\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">CMS, Online Store, and Background Jobs<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#engpaesse-vergleichen\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Compare Observations and Bottlenecks<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#diagnose-im-betrieb\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Identifying Throttling and Wait Times<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#optimierung-und-vergleich\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Check the cache and compare rates<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#tarifentscheidung\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">A faster CPU or a bigger budget?<\/a><\/div>\n<\/div><\/nav><section class=\"wh-section\" aria-labelledby=\"cpu-begriffe\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"cpu-begriffe\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Distinguishing Between Cores, Threads, and CPU Time<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">A physical core is a processing unit of the processor. The operating system, on the other hand, sees <strong style=\"font-weight:700;color:inherit\">logic processors<\/strong> as executable units: When multithreading is enabled, multiple units can share the resources of a single physical core. Therefore, their number does not directly indicate how many independent cores are available for a hosting account.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">In shared hosting, multiple accounts share a server's hardware. A plan may limit how much CPU time an account's processes are allowed to use within a given period. This <strong style=\"font-weight:700;color:inherit\">CPU Time Budget<\/strong> is different from a commitment to use a physical kernel exclusively. Linux cgroups are one possible technical foundation for such limits, but they are not the only possible implementation. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">If the plan specifies, for example, \u201eone vCore\u201c or \u201e100 percent CPU,\u201c you should check the provider\u2019s definition. This specification may describe a computing time budget without permanently reserving a specific core. Furthermore, the total number of cores on the host server does not indicate how much processing power a single account is actually allowed to use at any given time.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">In this context, concurrency refers to the number of requests or processes that can be processed simultaneously. It depends, among other things, on process limits, memory, and available CPU resources. CloudLinux can use its own resource limits for this purpose; you\u2019ll need to check with your provider to find out whether a plan uses this technology and how it\u2019s configured. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Resource limits and security isolation serve different purposes: A limit controls consumption, while isolation is intended to restrict access between environments. The <a href=\"https:\/\/webhosting.de\/en\/cloudlinux-site-isolation-a-security-advantage-over-cagefs-hosting\/\">Overview of CloudLinux Site Isolation and CageFS<\/a> explains the relevant security mechanisms; this, in and of itself, does not result in any specific CPU allocation.<\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"takt-und-leistung\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"takt-und-leistung\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Why GHz Alone Isn't the Deciding Factor<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">The clock speed indicates how many clock cycles a processor performs per second. A higher clock speed can speed up CPU-intensive tasks, but it does not, on its own, determine how much a website benefits from it. Different processor architectures perform varying amounts of work per clock cycle; the specific program code also influences the result.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">To <strong style=\"font-weight:700;color:inherit\">Single-Core Performance<\/strong> Cache and memory behavior also play a role. If a process frequently has to wait for data, a higher clock speed may be less effective than in a computation where the data is already readily available. A comparison based solely on GHz obscures these differences and is no substitute for an application-specific benchmark.<\/p>\n<figure class=\"wp-block-image size-large wh-figure\" aria-describedby=\"wh-caption-detail1\" style=\"display:block;float:none;clear:both;width:100%;max-width:760px;margin:34px auto 40px;border:1px solid #dae5e9;border-radius:14px;overflow:hidden;background:#f5f8fa;box-shadow:0 10px 28px -17px rgba(24,47,60,.28);box-sizing:border-box\"><div class=\"wh-figure-media\" style=\"display:block;background:#eef3f5;line-height:0\"><img loading=\"lazy\" width=\"800\" height=\"534\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/server-hauptplatine-cpu-kuehlung-speicher-789c4a25-detail1-14991d1907-1024x683.webp\" class=\"wp-image-22225\" alt=\"AI-generated stock image of a CPU heatsink and adjacent memory modules on a server motherboard\" decoding=\"async\" srcset=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/server-hauptplatine-cpu-kuehlung-speicher-789c4a25-detail1-14991d1907-1024x683.webp 1024w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/server-hauptplatine-cpu-kuehlung-speicher-789c4a25-detail1-14991d1907-300x200.webp 300w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/server-hauptplatine-cpu-kuehlung-speicher-789c4a25-detail1-14991d1907-768x512.webp 768w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/server-hauptplatine-cpu-kuehlung-speicher-789c4a25-detail1-14991d1907-18x12.webp 18w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/server-hauptplatine-cpu-kuehlung-speicher-789c4a25-detail1-14991d1907.webp 1536w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" ><\/div><figcaption class=\"wh-caption\" id=\"wh-caption-detail1\" style=\"display:block;margin:0;padding:12px 18px 15px;border-top:1px solid #dce5e9;color:#506575;background:#f5f8fa;font-size:14px;line-height:1.55;text-align:start\">AI-generated illustrative image: CPU and memory behavior are both factors in assessing processor performance.<\/figcaption><\/figure><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">One example of a limited data sheet is the AMD EPYC 4564P: For this model, AMD specifies 16 cores, 32 threads, a base clock speed of 4.5 GHz, and a maximum boost clock speed of up to 5.7 GHz. These specifications describe the processor, not the performance of a specific hosting plan. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">The <strong style=\"font-weight:700;color:inherit\">Max Boost<\/strong> It is neither a guaranteed sustained value nor the frequency at which all cores operate at any given time. Nor do the product specifications indicate how quickly a particular shared hosting plan processes a WordPress or PHP request. In addition to the hardware, configuration, load, and plan limits also play a role in this.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">When providers with <strong style=\"font-weight:700;color:inherit\">High-Frequency CPU Hosting<\/strong> When evaluating advertisements, be sure to ask for the specific processor model and the available resource budget. Meaningful performance comparisons also require information on the software version, server configuration, workload, and test conditions. Without this information, an advertised GHz value cannot be reliably translated into a shorter response time.<\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"php-und-parallelitaet\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"php-und-parallelitaet\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">PHP Requests and Parallel Processing<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">In a typical synchronous request, a PHP worker processes the individual steps of its PHP work primarily one after another. A faster CPU can reduce this part of the process if it is actually computationally intensive. If, on the other hand, the worker is primarily waiting for a database or an external service, the benefit of higher processor performance for this waiting time is limited.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">The search query <strong style=\"font-weight:700;color:inherit\">PHP single-core<\/strong> This does not mean, therefore, that an entire website can use only one core. Multiple requests can be processed in parallel by multiple workers; the web server and database can also operate simultaneously. The key factor is how much of this parallel processing the available resources and the specific configuration allow.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Limited with PHP-FPM <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">pm.max_children<\/code> The number of requests a pool can handle simultaneously. Once this limit is reached, additional requests cannot be processed immediately by another worker in that pool. However, this limit does not indicate the total number of visitors who can use a website. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">The <strong style=\"font-weight:700;color:inherit\">Process Management<\/strong> PHP-FPM supports three operating modes: <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">static<\/code> maintains a fixed number of workers. <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">dynamic<\/code> adjusts the number based on the configuration to meet demand; <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">ondemand<\/code> Starts workers as needed. The selected operating mode therefore also determines when processes are ready or are restarted. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">More workers do not automatically result in more CPU time. They also require memory and, when running in parallel, may collectively reach an account limit. To evaluate a <strong style=\"font-weight:700;color:inherit\">shared hosting CPU<\/strong> Therefore, the number of workers and the resource budget go hand in hand. Not every plan uses PHP-FPM or allows customers to change its settings themselves.<\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"quota-rechenbeispiel\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"quota-rechenbeispiel\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">CPU Quota Under Parallel Load<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">A <strong style=\"font-weight:700;color:inherit\">CPU Quota<\/strong> Specifies how much compute time a process group is allowed to use within a given time period. Under Linux cgroup v2, this describes <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">cpu.max<\/code> this budget and the associated period. The quota therefore does not automatically reserve an exclusive physical core; rather, it limits the total available CPU time for the group. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Illustrative calculation example, not a measurement: A group is allocated 100 milliseconds of CPU time per 100-millisecond period. On average, this corresponds to the computation time of a fully utilized logical processor. If two processes are running simultaneously on two available logical processors, they can theoretically exhaust their combined budget after about 50 milliseconds of wall time. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">If the budget is exhausted, the processes can be throttled until the next period. Thus, the two workers do not each have their own budget of 100 milliseconds. Whether and when they actually run in parallel depends, among other things, on the scheduler, the available CPUs, and their behavior; the example does not predict a specific response time. <\/p>\n<figure class=\"wp-block-image size-large wh-figure\" aria-describedby=\"wh-caption-detail2\" style=\"display:block;float:none;clear:both;width:100%;max-width:760px;margin:34px auto 40px;border:1px solid #dae5e9;border-radius:14px;overflow:hidden;background:#f5f8fa;box-shadow:0 10px 28px -17px rgba(24,47,60,.28);box-sizing:border-box\"><div class=\"wh-figure-media\" style=\"display:block;background:#eef3f5;line-height:0\"><img loading=\"lazy\" width=\"800\" height=\"534\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/cpu-quota-gemeinsames-budget-illustration-789c4a25-detail2-6537823237-1024x683.webp\" class=\"wp-image-22226\" alt=\"AI-generated illustration of two parallel strips of paper within a shared, bounded space\" decoding=\"async\" srcset=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/cpu-quota-gemeinsames-budget-illustration-789c4a25-detail2-6537823237-1024x683.webp 1024w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/cpu-quota-gemeinsames-budget-illustration-789c4a25-detail2-6537823237-300x200.webp 300w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/cpu-quota-gemeinsames-budget-illustration-789c4a25-detail2-6537823237-768x512.webp 768w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/cpu-quota-gemeinsames-budget-illustration-789c4a25-detail2-6537823237-18x12.webp 18w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/cpu-quota-gemeinsames-budget-illustration-789c4a25-detail2-6537823237.webp 1536w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" ><\/div><figcaption class=\"wh-caption\" id=\"wh-caption-detail2\" style=\"display:block;margin:0;padding:12px 18px 15px;border-top:1px solid #dce5e9;color:#506575;background:#f5f8fa;font-size:14px;line-height:1.55;text-align:start\">AI-generated illustration: Parallel processes can consume a shared CPU time budget.<\/figcaption><\/figure><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">For the analysis, cgroup v2 sets <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">cpu.stat<\/code> including counters for <strong style=\"font-weight:700;color:inherit\">Throttling<\/strong> Ready. If they rise during a representative load phase, this indicates that the quota has been exhausted. However, a single meter reading does not explain which request was affected or whether there are other bottlenecks as well. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">You'll need to check with the provider to see if these files are accessible under your plan and relevant to the website. Shared hosting may use different mechanisms: CloudLinux, for example, documents its own LVE limits for CPU and other resources. Therefore, neither the specific configuration nor the behavior of each hosting account can be determined from the Linux example. <\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"praxis-workloads\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"praxis-workloads\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">CMS, Online Store, and Background Jobs<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">For an uncached CMS page, the server executes application logic and retrieves the necessary data when the page is requested. If a large portion of the processing is performed by <strong style=\"font-weight:700;color:inherit\">CPU Workload<\/strong>, higher performance per core can shorten this section. This applies, for example, to complex calculations in PHP code, but not necessarily to the total time it takes to render the page.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">If, on the other hand, the same request spends most of its time waiting for a database query or an external API, the PHP process can only benefit to a limited extent from a faster CPU during that time. Therefore, the breakdown of the server-side response time is what matters when making this decision: How much of the time is spent on computation, and how much is spent waiting for other services?<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">A store demonstrates why this question can yield different results for different pages. Under the right conditions, public product pages can be cached as a ready-made answer. A <strong style=\"font-weight:700;color:inherit\">cache hit<\/strong> can avoid having to reprocess the entire PHP script; the shopping cart and checkout, on the other hand, often need to take individual data into account and remain dynamic.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Many concurrent checkout requests can therefore place a greater strain on workers or CPU resources than an equal number of requests for cached pages. Visitor numbers alone do not fully describe this load: what matters is which endpoints are being requested simultaneously and how often the cache is hit. With PHP-FPM, the pool setting also limits <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">pm.max_children<\/code> The number of concurrent requests being processed. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">A computationally intensive import in the backend, in turn, can benefit from faster individual processing. If it runs in parallel with visitor requests, the processes may compete for the same CPU time budget. Whether a cron job or import is actually assigned to the same limited group depends on the pricing plan and its configuration; check with your provider before making a capacity decision. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">For a meaningful comparison, you should consider these workloads separately: a typical dynamic request, a phase with multiple concurrent requests, and, if applicable, the import during ongoing operations. This will help you determine whether the speed of a single step or the total available capacity is the more important factor.<\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"engpaesse-vergleichen\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"engpaesse-vergleichen\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Compare Observations and Bottlenecks<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">A slow response does not necessarily indicate a cause. The following overview links typical observations with verifiable possibilities. In particular, it takes into account CPU time limits, the limited number of workers in PHP-FPM, and the difference between cached PHP code and a response that has already been generated.   <\/p>\n<div class=\"wh-table-scroll\" tabindex=\"0\" role=\"region\" aria-label=\"Observations as a Starting Point for Identifying Bottlenecks\" style=\"width:100%;max-width:100%;overflow-x:auto;margin:28px 0;border:1px solid #dce5e9;border-radius:14px;background:#fff;box-shadow:0 10px 28px -16px rgba(24,47,60,.32);box-sizing:border-box\"><table style=\"width:100%;min-width:580px;border-collapse:separate;border-spacing:0;border:0;margin:0;font-size:15px;line-height:1.6;background:#fff\"><caption style=\"padding:20px;text-align:start;font-size:17px;line-height:1.5;font-weight:700;color:#173246;background:#fff\">Observations as a Starting Point for Identifying Bottlenecks<\/caption><thead><tr><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">Observation<\/th><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">Potential bottleneck<\/th><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">A logical follow-up question<\/th><\/tr><\/thead><tbody><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">A dynamic query consumes a lot of CPU time<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">CPU-bound code path or performance per core<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">How much of the processing time is accounted for by the CPU versus wait times?<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Responses tend to be slow, especially when there are multiple concurrent requests<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">CPU quota or available PHP-FPM workers<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Are the throttling counters increasing, or is the worker pool at full capacity?<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Cache hits are fast; cache misses are slow<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Dynamic Processing During Cache Misses<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">What content can be safely cached as a completed response?<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">PHP spends most of its time waiting for the database or API<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Database query or external service<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Which query or call is causing the delay?<\/td><\/tr><\/tbody><\/table><\/div><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Each row in the table is a <strong style=\"font-weight:700;color:inherit\">Hypothesis<\/strong>, not a definitive diagnosis. Slow responses under parallel processing can, for example, coincide with CPU throttling, but they can also be caused by busy workers or a waiting database. Therefore, whenever possible, check multiple signals at the same time and for the same workload, rather than concluding that a pricing plan change is necessary based on a single symptom.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">When evaluating, separate the <strong style=\"font-weight:700;color:inherit\">Response time<\/strong> A query's throughput: A faster individual response does not automatically mean that, with high concurrency, a correspondingly higher number of queries per second will be processed. Conversely, a system can achieve good throughput while still causing individual queries to wait longer.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">The perceived page load time is also not the same as the server-side response time. After the response is received, for example, additional resources may be loaded and processed by the browser. A CPU upgrade in the hosting environment addresses only the affected server-side component; for a fair comparison, the cache state, the requested page, and the level of parallelism should remain the same.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">When it comes to caching, it\u2019s also worth distinguishing between the two concepts: OPcache stores compiled PHP code, thereby avoiding the need for recompilation. A page cache, on the other hand, stores a generated response. A fast cache hit therefore does not prove that dynamic requests have sufficient CPU resources, nor does it mean that OPcache replaces your application logic. <\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"diagnose-im-betrieb\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"diagnose-im-betrieb\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Identifying Throttling and Wait Times<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Start your diagnostic analysis with requests that are typical for your website: for example, a public CMS page, a search, and\u2014if you have an online store\u2014the checkout process. Note whether each response comes from the page cache. Then compare individual page views with a number of concurrent requests representative of your project, rather than looking solely at the total number of visitors.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">If possible, separate the <strong style=\"font-weight:700;color:inherit\">CPU time<\/strong> the application's overall response time and wait times for the database or external services. If the CPU portion is small, a faster processor can only reduce a correspondingly limited portion of the call. If you don't have suitable metrics, ask the provider for available logs, metrics, or a suitable analysis.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Under parallel load, check whether available workers are at full capacity and whether limit counters are increasing. In PHP-FPM, limit <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">pm.max_children<\/code> the number of concurrent requests served by a pool; whether you can view this value or the utilization depends on your plan. Linux cgroup v2 systems can be configured in <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">cpu.stat<\/code> ...including throttling counters. A rising counter value is a reason to examine the CPU budget and the measurement period more closely.  <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">If SSH and the file in question are accessible, the following is displayed: <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">cat \/proc\/self\/cgroup<\/code> the cgroup assignment of the calling process. This does not mean that web requests run in the same group. Clarify paths, permissions, and interpretation with the provider; error codes also cannot be universally attributed to a specific limit of any shared hosting system.  <\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"optimierung-und-vergleich\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"optimierung-und-vergleich\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Check the cache and compare rates<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">First, check which public pages can safely be cached as a complete response. A <strong style=\"font-weight:700;color:inherit\">Page Cache<\/strong> can prevent repeated dynamic processing when a hit occurs. Personalized content, the shopping cart, and checkout, on the other hand, require an appropriate caching strategy to ensure that visitors do not receive incorrect or outdated data.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Another approach is to reduce the workload caused by cache misses: Investigate slow database queries and eliminate unnecessary dynamic processing. When using an external service, its response time can be a critical factor; in that case, you should first examine that call rather than assuming the CPU is the cause. Which change helps depends on the actual slow path.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">This should be distinguished from <strong style=\"font-weight:700;color:inherit\">OPcache<\/strong>: It stores compiled PHP code, but does not replace a full page cache or the execution of application logic. Check its availability and settings in the web runtime environment. The CLI has its own OPcache setting; therefore, checking the command line alone does not reveal the configuration for web requests. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">When comparing performance, you should run the same queries using the same software versions, comparable datasets, and a recorded cache state. Repeat the comparison at the same level of parallelism and take into account the available CPU, worker, and memory budgets in each case. Otherwise, differences may arise due to the test conditions without providing any reliable information about processor performance.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Also, keep separate records of how long individual responses take and how many requests are processed within a given time period. A pricing plan may seem affordable for a single request but could still reach its limits under concurrent load. Values from a comparison initially apply only to the application under review and its specific conditions.<\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"tarifentscheidung\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"tarifentscheidung\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">A faster CPU or a bigger budget?<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">If a representative dynamic query is primarily CPU-intensive and is not constrained by workers, memory, or a time budget, then higher <strong style=\"font-weight:700;color:inherit\">Per-Core Performance<\/strong> A plausible caching option. It can reduce the computation time for individual requests. However, the extent to which this affects the overall response time still depends on the application and its wait times.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">If, on the other hand, the data indicates throttling or overloaded workers when there are multiple concurrent requests, consider a larger <strong style=\"font-weight:700;color:inherit\">Resource budget<\/strong>. Allocating more CPU time can help when a quota limit has been reached; however, additional workers also require sufficient memory and compute time. If the database or external services are the bottleneck, a higher CPU budget alone is not a reliable solution.  <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Before making a change, it\u2019s worth comparing it to optimizing your existing setup. A suitable page cache or an improved query can reduce dynamic processing without immediately requiring you to upgrade to a higher plan. Repeat the diagnostic test after making a change under comparable conditions so you can distinguish its effect from other factors.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">A <a href=\"https:\/\/webhosting.de\/en\/what-is-a-vps-advantages-shared-hosting-performance-security-expert\/\">VPS as an Alternative to Shared Hosting<\/a> It typically offers more control over software and configuration, but also entails greater responsibility for security, updates, and capacity planning. Unless the provider explicitly states otherwise, virtual CPUs are not exclusive physical cores. Therefore, be sure to review the specific resource allocation and the terms of the contract in this regard as well.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Before making a decision, ask the provider about the processor model, how the CPU time budget is defined, and how peak loads are handled. Also clarify what worker and memory limits apply, whether background jobs share the same budget, and which limit counters you can view. Only with this information can you properly assess the advertised CPU performance for your specific plan. <\/p>\n<\/section><section class=\"wh-sources\" style=\"margin:40px 0 0;padding:24px 0 0;border-top:1px solid #dce5e9;color:#596b7b;font-size:14px;line-height:1.65\"><h2 style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Sources and Current State of Knowledge<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Status of the research: <time datetime=\"2026-11-05\">2026-11-05<\/time><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Research status: November 5, 2026. Additional fields refer to the sections provided; no chart is included due to a lack of comparable application-specific measurement data.<\/p><div class=\"wh-source-urls\"><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\"><span class=\"wh-source-url\" data-no-translation dir=\"ltr\" style=\"overflow-wrap:anywhere;font:12px\/1.6 ui-monospace,monospace;direction:ltr\">https:\/\/kernel.org\/doc\/html\/v5.12\/admin-guide\/cgroup-v2.html<\/span><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\"><span class=\"wh-source-url\" data-no-translation dir=\"ltr\" style=\"overflow-wrap:anywhere;font:12px\/1.6 ui-monospace,monospace;direction:ltr\">https:\/\/www.php.net\/install.fpm.configuration<\/span><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\"><span class=\"wh-source-url\" data-no-translation dir=\"ltr\" style=\"overflow-wrap:anywhere;font:12px\/1.6 ui-monospace,monospace;direction:ltr\">https:\/\/docs.cloudlinux.com\/cloudlinuxos\/limits\/<\/span><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\"><span class=\"wh-source-url\" data-no-translation dir=\"ltr\" style=\"overflow-wrap:anywhere;font:12px\/1.6 ui-monospace,monospace;direction:ltr\">https:\/\/www.amd.com\/en\/products\/processors\/server\/epyc\/4004-series\/amd-epyc-4564p.html<\/span><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\"><span class=\"wh-source-url\" data-no-translation dir=\"ltr\" style=\"overflow-wrap:anywhere;font:12px\/1.6 ui-monospace,monospace;direction:ltr\">https:\/\/www.php.net\/manual\/en\/opcache.configuration.php<\/span><\/p><\/div><\/section><\/div>","protected":false},"excerpt":{"rendered":"<p>A fast CPU can speed up dynamic PHP requests in shared hosting. However, CPU time allocation, workers, cache, and wait times are also crucial. Here's how to figure out which resource will benefit your project.<\/p>","protected":false},"author":1,"featured_media":22224,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[676],"tags":[],"class_list":["post-22221","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-server_vm"],"acf":[],"_links":{"self":[{"href":"https:\/\/webhosting.de\/en\/wp-json\/wp\/v2\/posts\/22221","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webhosting.de\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webhosting.de\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webhosting.de\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/webhosting.de\/en\/wp-json\/wp\/v2\/comments?post=22221"}],"version-history":[{"count":3,"href":"https:\/\/webhosting.de\/en\/wp-json\/wp\/v2\/posts\/22221\/revisions"}],"predecessor-version":[{"id":22227,"href":"https:\/\/webhosting.de\/en\/wp-json\/wp\/v2\/posts\/22221\/revisions\/22227"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/webhosting.de\/en\/wp-json\/wp\/v2\/media\/22224"}],"wp:attachment":[{"href":"https:\/\/webhosting.de\/en\/wp-json\/wp\/v2\/media?parent=22221"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webhosting.de\/en\/wp-json\/wp\/v2\/categories?post=22221"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webhosting.de\/en\/wp-json\/wp\/v2\/tags?post=22221"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}