1. Computer problem? Tech Support Guy is completely free -- paid for by advertisers and donations. Click here to join today! If you're new to Tech Support Guy, we highly recommend that you visit our Guide for New Members.

Cores, caches and integrated caches

Discussion in 'Hardware' started by 8biosdrive, Dec 15, 2018.

Thread Status:
Not open for further replies.
Advertisement
  1. 8biosdrive

    8biosdrive Thread Starter

    Joined:
    Sep 30, 2014
    Messages:
    148
    The recent Hardware forum thread https://forums.techguy.org/threads/cpu-questions.1220526/ raised some questions for me regarding the interfaces between hardware and software. So although the desktop i5 chip doesn't support hyperthreading, which the i7 chip does, presumably it compensates for its lack of hyperthreading due to its 6 cores. And since the i5 is regarded as a capable CPU for many users, it compensates pretty well. So under what conditions does hyperthreading become advantageous? Is it when you are using many applications, or can the tasks from one application benefit from hyperthreading? And where does an integrated cache fit into this picture? The so called Optane Memory is a large cache integrated into the CPU. Is this advantageous when running many applications simultaneously, or when running one CPU-intensive application, or both? Is it always better, though not always necessary, to have more cores, larger/integrated caches, and more ram?
     
  2. Oddba11

    Oddba11

    Joined:
    May 12, 2011
    Messages:
    7,882
    First Name:
    Jim
    To make full use of multiple cores, you typically need an application written to use multiple cores. Most applications only use a single core, and although Windows will try to use multiple cores based on load of the applications, most applications will default to core 1, with some spill over into core 2, and the remaining cores will be mostly unused...even when your system starts lagging because cpu 1 is being maxxed. However, use a video encoding tool such as handbrake, and you will see 100% on all cpus.

    Cache usage varies by application. A bottle neck of the cpu when processing data, is getting the data to the cpu. The cpu cache can help reduce that impact by having data readily available to the cpu.

    CPU benchmarks (or most any benchmarks for that matter) will typically show how hardware excels (or not) and in which conditions. As a buyer, you need to know how you will be using the PC, and compare the benchmarks relevant to that usage.

    Now, having said all of the that, even the low end cpu models make good office PC's (and account for the majority of cpu sales). Such PC's are typically more than adequate at running "office" apps (ie: word, excel, email, chat programs, media playback, web browsers, etc., etc.). All that you really need to have a good "multi-tasking" PC, is enough RAM to support the amount of apps that are running.

    High end cpus excel are more dedicated tasks (ie: video encoding, image processing, gaming, etc.). This is where the reference above concerning benchmarks comes into play. If you will be doing a more dedicated or strenueous task, those are the benchmarks and thus the cpu's, you should be comparing.

    I know that I haven't answered many of your specific questions, but I hope that it was helpful.
     
  3. 8biosdrive

    8biosdrive Thread Starter

    Joined:
    Sep 30, 2014
    Messages:
    148
    Thanks very much for this helpful information, which raises some questions.

    I would imagine more applications are being written for multiple core since now 6-core chips are becoming common, right?

    If the CPU has 6 cores, why would the system lag if only one is maxed and the others are free? That would seem to be a waste of the capability of the technology.

    Why does handbrake show 100% usage on all cpus when most are unused?

    Am I right that hyper-threading refers to partitioning tasks within one core, or does it involve partitioning among many cores?
     
  4. Oddba11

    Oddba11

    Joined:
    May 12, 2011
    Messages:
    7,882
    First Name:
    Jim
    Most software doesn't need more than one core to function. There are a few exceptions, but those are programs which are cpu intensive anyway (such as video editing software). So software is written to as a single stream and only uses a single core. Windows tries to spread the load around, but as noted above, isn't very efficient at doing so.

    As for handbrake, it maxes ALL cores available by default. If you are one of the people that try to actually uses the PC for other things while encoding, you have to change the default config to limit cpu usage.

    Hyperthreading is a way of making a cpu appear as if it is 2 cores, thus you two processes can be run at the same time as opposed to queing.
     
    8biosdrive likes this.
  5. tecknurd

    tecknurd

    Joined:
    May 28, 2018
    Messages:
    154
    Cache:
    Cache and RAM are a memory. They are used differently. RAM is where programs are run. Cache is a type a memory that stores repeatedly access data from RAM. The amount of cache relies on the microarchitecture and other forms of hardware. There is no key thumb of size to use for cache. Experiments with different size are required.

    Cores or Many Cores CPU:
    Depending on the program and what kind of data. Processing it can be divided up into multiple processes or threads. The threads are then handled to other processors to do work. Usually, it works well if the data is small. Not all programs benefit to be multi-threaded. For example, a game named Factorio is only a single thread program. For programs that require single thread require a powerful processor which means high instruction per cycle (IPC). At this time, Intel processors have this.

    Hyperthreading:
    This is only for Intel. AMD has something similar for Zen architecture based processors. When Hyperthreading is enabled, the software that is built into the CPU turns a physical core into many cores. These cores may provide double or more than the number of physical cores. These cores are smaller so their instruction per cycle will be lower compared to Hyperthreading disabled. These small cores have less cache, so restricts using large program data. Programs vary and what they require for the best performance. Hyperthreading is a compromise between many processors versus high IPC. Experimenting between enabled Hyperthreading and disable Hyperthreading is needed for the best possible performance for your programs.

    Optane memory is not integrated into the processor yet and probably never will. Intel processors support it. Optane memory came too late because people already considered upgrading or have upgraded to NAND Flash memory based SSD. Also, Optane memory is too small of storage for today's programs.

    For my needs, an i3 is all I need for office and web browsing. I use an i7 for gaming. I don't use Hyperthreading on my i7 but occasionally do on the i3. I understand people want one time fits all processor like an i5, but I found that it's best to have two computers. One that fits low end and one that fits high end. A middle of the road costs too much these days. It's best to have a backup of what computers to use.
     
    8biosdrive likes this.
  6. Sponsor

As Seen On
As Seen On...

Welcome to Tech Support Guy!

Are you looking for the solution to your computer problem? Join our site today to ask your question. This site is completely free -- paid for by advertisers and donations.

If you're not already familiar with forums, watch our Welcome Guide to get started.

Join over 733,556 other people just like you!

Loading...
Similar Threads - Cores caches integrated
  1. FusionTecg
    Replies:
    2
    Views:
    169
Thread Status:
Not open for further replies.

Short URL to this thread: https://techguy.org/1220542

  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice