WEBVTT

00:00:00.080 --> 00:00:05.680
whether we're talking dollars in your bank account items on a seafood buffet

00:00:03.360 --> 00:00:10.480
or dates you've got lined up on tinder more is generally considered to be

00:00:08.240 --> 00:00:14.880
better a sentiment that also seems to hold true with the number of cores in

00:00:12.400 --> 00:00:19.199
your computer CPU at least if you buy into the marketing hold on even though

00:00:17.039 --> 00:00:24.480
having many cores definitely gives you a boost in multi-threaded applications

00:00:21.279 --> 00:00:26.800
like rendering 3d animations there are

00:00:24.480 --> 00:00:32.480
actually situations where more cores gives no benefit whatsoever or can even

00:00:29.359 --> 00:00:34.559
actually hurt your system's performance

00:00:32.480 --> 00:00:39.120
but how could this be well to start off with the more cores

00:00:36.559 --> 00:00:43.440
you pack onto a CPU the more power they need and the more heat they generate and

00:00:41.440 --> 00:00:48.480
remember that because CPU cores are crammed into a relatively small space

00:00:46.320 --> 00:00:53.039
manufacturers end up working against some serious limits when it comes to

00:00:50.399 --> 00:00:57.440
thermal design power or TDP this means that to prevent the CPU from

00:00:55.440 --> 00:01:01.920
drawing too much power and producing too much heat the individual cores have

00:01:00.399 --> 00:01:08.000
traditionally run their clock frequencies lower to improve efficiency

00:01:05.439 --> 00:01:12.400
and even if the advertised boost clock for a CPU with lots and lots of course

00:01:10.560 --> 00:01:16.479
can appear to be high it's often the case that they cannot

00:01:14.240 --> 00:01:21.119
maintain these clocks for long periods of time or that they only do it when

00:01:18.880 --> 00:01:25.520
you're running very light applications so if you're using your computer mostly

00:01:23.600 --> 00:01:32.880
for applications where single threaded performance matters more such as games

00:01:28.400 --> 00:01:35.439
that super expensive 18 core CPU might

00:01:32.880 --> 00:01:39.840
actually yield you a worse experience than something cheaper

00:01:37.200 --> 00:01:44.960
and if you go with a really high core count CPU there's another wrinkle with

00:01:42.400 --> 00:01:50.320
how processors with that many cores access the system memory you see in some

00:01:47.600 --> 00:01:56.159
cases these larger cpus need to have their core split into two groups or

00:01:53.520 --> 00:02:00.960
nodes of course with each group getting its own memory controller and segment of

00:01:58.719 --> 00:02:05.200
the physical memory in a scheme called non-uniform memory access or pneuma

00:02:05.200 --> 00:02:12.319
this is generally quicker than the opposite solution called uniform memory

00:02:09.280 --> 00:02:15.040
access or yuma where all the cores share

00:02:12.319 --> 00:02:19.520
one big pool of memory but here's the thing a CPU that uses pneuma which is

00:02:17.920 --> 00:02:24.480
better for latency sensitive applications can often struggle when

00:02:22.160 --> 00:02:28.080
running a single program that uses tons of threads

00:02:26.319 --> 00:02:31.760
because of the different memory access times between the nodes and the fact

00:02:30.160 --> 00:02:35.840
that each node would have to wait on the other one to finish working on the same

00:02:33.360 --> 00:02:40.480
data highly multi-threaded programs like these often don't want to cross nodes

00:02:38.720 --> 00:02:45.280
even if it would mean being able to take advantage of the entire CPU

00:02:42.800 --> 00:02:48.640
so back to yuma then right no

00:02:46.400 --> 00:02:53.840
because one controller manages all the memory accesses to give every program

00:02:51.200 --> 00:03:00.239
equal time rather than allowing access to the memory more directly as in numa

00:02:57.120 --> 00:03:02.879
yuma has a built-in performance penalty

00:03:00.239 --> 00:03:06.959
that increases the more nodes your system has to manage

00:03:04.480 --> 00:03:11.360
so using a CPU with separate groups of cores means you're going to be subjected

00:03:09.040 --> 00:03:15.040
to one of these drawbacks and you're going to take a performance hit either

00:03:13.599 --> 00:03:19.680
way and these are problems that you simply don't run into on smaller chips

00:03:17.599 --> 00:03:23.680
with fewer cores because you're not dealing with multiple nodes

00:03:21.760 --> 00:03:28.080
but getting away from memory access sometimes the cores themselves are even

00:03:26.159 --> 00:03:32.799
designed in a way that bottlenecks them the more of them you slap onto a chip do

00:03:30.400 --> 00:03:37.519
you remember how before ryzen AMD processors seemed to be significantly

00:03:35.120 --> 00:03:40.319
slower than Intel despite having more cores

00:03:38.480 --> 00:03:45.360
well a big reason for this was that those old bulldozer fx processors didn't

00:03:43.360 --> 00:03:51.200
use full cores instead an fx CPU advertised as having a

00:03:49.040 --> 00:03:55.760
cores would in reality have eight integer units but only four floating

00:03:53.680 --> 00:03:58.879
point units that were shared between the eight cores so if you don't know what a

00:03:57.599 --> 00:04:03.519
floating point unit is you can learn more about that right up here but the point is you could think of these cpus

00:04:02.400 --> 00:04:08.159
as having four half cores that were missing which

00:04:06.319 --> 00:04:13.519
severely hampered their single threaded performance in some key applications

00:04:11.120 --> 00:04:16.880
now this design allowed AMD processors to handle more threads for a cheaper

00:04:15.120 --> 00:04:21.359
price but it also meant that their real-world performance legged way behind

00:04:19.280 --> 00:04:25.840
Intel and the only way AMD could try and compensate was to increase clock speeds

00:04:23.919 --> 00:04:30.560
which increased heat output and contributed to AMD's reputation for hot

00:04:27.919 --> 00:04:35.120
running cpus for many years so what's our bottom line then although both AMD

00:04:33.120 --> 00:04:39.759
and Intel are using much wiser strategies for their many core cpus and

00:04:37.919 --> 00:04:44.240
clever boosting techniques to give them similar single threaded performance to

00:04:41.680 --> 00:04:48.800
their less costly brethren if the best sales pitch for a super

00:04:46.479 --> 00:04:52.960
premium product is that it doesn't suffer a performance penalty in the

00:04:51.199 --> 00:04:57.600
applications that you use well you'd better make sure you've got a use

00:04:55.600 --> 00:05:04.240
case for it before spending your hard earned cash and no playing fortnight and

00:05:00.639 --> 00:05:06.560
watching techwiki definitely don't count

00:05:04.240 --> 00:05:11.440
and neither does using brilliant because you can kind of do it anywhere effective

00:05:08.560 --> 00:05:16.240
learning guys is active not passive so learning from lectures and videos is

00:05:13.759 --> 00:05:20.960
just not as fast as diving in and doing things yourself and brilliant is a

00:05:18.720 --> 00:05:25.759
problem-solving based website and app with a hands-on approach with over 60

00:05:23.440 --> 00:05:29.759
interactive courses in math science and computer science brilliant lets you

00:05:27.680 --> 00:05:33.840
master concepts by solving fun challenging problems for yourself rather

00:05:32.240 --> 00:05:37.919
than by watching someone else do it and this is really useful if you're in a

00:05:35.840 --> 00:05:42.479
stem course their courses have storytelling code writing interactive

00:05:40.080 --> 00:05:46.560
challenges and problems to solve and you can check out great courses like the one

00:05:44.240 --> 00:05:50.800
on search engines so you can learn how it is that google answers a question in

00:05:48.800 --> 00:05:54.080
a fraction of a second even though there are so many billions of sites to search

00:05:53.199 --> 00:05:59.440
through so check it out now because the first 200 of you to head to brilliant.org

00:05:57.840 --> 00:06:03.759
techwiki we're going to have that linked below are going to get 20 off their

00:06:01.840 --> 00:06:07.919
annual premium subscription so thanks for watching guys like dislike

00:06:05.440 --> 00:06:15.000
check out our other videos and don't forget to subscribe

00:06:10.639 --> 00:06:15.000
that wouldn't be brilliant would it
