Question Helping my daughter in an introductory IT course. Funny.

Page 2 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.

iamgenius

Senior member
Jun 6, 2008
826
113
106
I just thought this is funny. My daughter asked me to help her in an introductory general IT course she is taking in the university and guess what I found. They were teaching them to compute the overall performance of CPUs and the question goes like this:

Which cpu will have better performance?

A) 2GHz quad core cpu
B) 4GHz dual core cpu
C) 2GHz octa core cpu
D) 5 GHz single core cpu

What you are supposed to do is to multiply the mentioned speed by the core count to get the overall speed of the cpu, which will mean the correct answer here is C because you will get 16 GHz !!! This is insane.

I told my daughter to do it the same way they want her to do it, but also told her this is actually wrong. It is not true for all cases. A higher speed single core cpu can outperform other mutli-core cpus in single-threaded applications.

Maybe it is true in the general sense but I don't understand why a teaching institution will do it this way.
 

mikeymikec

Lifer
May 19, 2011
21,530
16,754
136
"Performance" has no units defined. If you multiply those two figures, one in GHz and the second in number of cores, you still have GHz.

4GHz dual core cpu has the same performance as an 8 GHz 1 core CPU would.

2GHz octa core cpu has the same performance as a 16 GHz 1 core CPU would.

16 GHz 1 core CPU has twice the performance than 8 GHz 1 core CPU.

I still fail to see where is the problem.

I should point out a contradiction in your post:

"Performance has no units defined"
"This xGHz processor has the same performance as that xGHz processor"

---

Next up, even if you argue your point based on meaningless* hypothetical identical processor cores, it's not meaningfully correct by any reasonable yardstick to say that two processors will perform the same as long as the numbers add up, because not all tasks/programs** scale perfectly elegantly up or down to x processor cores. Some tasks/programs are ideally suited to one processor thread, so an octa-core 4GHz processor is not going to perform the task eight times faster than that processor with only one core enabled, nor is a hypothetical 16-core processor going to do a job that was designed for 8 cores twice as fast as an 8-core processor.

There are logical bottlenecks to many tasks that limit how well they scale, and a hypothetical 16GHz single-core processor trying to chew away at an 8-thread task is not going to do it as quickly as a 2GHz octa-core processor simply because the 8-core processor is able to simultaneously process 8 threads at once whereas the 16GHz single-core is going to have 7 processor threads in limbo at any given moment that it will have to possibly constantly (depending on processor thread scheduling, which is another can of worms) change thread contexts with, which very likely (if we're talking about tasks that utilise the processor's features to their limits) also includes cache contents needing to be swapped out to RAM (which would likely result in significant performance penalties), etc.

* - I say meaningless because in the realm of general-purpose mainstream computing, there are no more single-core, absurdly highly clocked processors because people who know how processors work decided long ago realised that the be-all and end-all of overall system performance is not one insanely clocked processor core (that's just aside from the physics concerns of attempting to do so). The vast majority of processors spend their lives not being pushed to their fullest potential. It's about clearing logically inefficient workloads as efficiently as possible. For example, modern versions of Windows rarely use more than two processor cores simultaneously for OS maintenance work, therefore if a user wants to keep using their computer and get reasonable performance out of it, more than two processor cores is desirable. However, as a general rule grandma is not going to get onto Facebook twice as fast because she's got a processor with twice as many cores and/or double the clock speed.

** - I'm making a distinction between 'task' and 'program', because the task is the job that needs doing and the program is a current attempted implementation of automating that task. A task can be suited for x number of threads, and/or the programmer responsible for the program may have unintentionally designed/compiled the program in such a way that it does not scale particularly well to x threads.
 

Eug

Lifer
Mar 11, 2000
24,176
1,816
126
Are we sure that exercise isn't going to be used as a jumping point for further discussion?
 

Kocicak

Golden Member
Jan 17, 2019
1,177
1,232
136
Jesus, this is just a quiz question about a BASIC PRINCIPLE.

When I say, that a term "performance" has no unit defined, that means, that you may define it yourself as you need for your application.
 
Last edited:

iamgenius

Senior member
Jun 6, 2008
826
113
106
There are no other qualifiers given? no other context? Not even in the rest of the course, lessons, questions?
Can they only choose one answer? Is there space to leave comments?
Because you could tick both C and D.
The question doesn't even specify if all CPUs are the same architecture, just write 13th gen behind A and choose that.

Are you sure they didn't talk about this in class, your daughter might be holding back crucial info.
I saw the slides. The slide title was something like: "how to find the total speed of a cpu" which is utterly wrong.
 
  • Like
Reactions: igor_kavinski

iamgenius

Senior member
Jun 6, 2008
826
113
106
I'd have a chat with the teacher running the course, because that's clearly a stupid question on so many levels.

Here's how I'd break it down:

A) is a reasonably new 2GHz atom-based quad-core CPU
B) is a C2DE OC from over ten years ago
C) is an AMD Jaguar CPU found in what, PS4 or PS5?
D) is a Pentium 4 OC

That's ignoring non x86/x64 architectures, where absurdly high clock rates are possible for specific tasks, but it doesn't mean it's any good at... whatever the task is, or might not even run on the OS that the task is required to run on.

They may as well have asked which vehicle can get from A to B quickest, and list vehicles by the number of wheels they have and how high each rev-counter goes.

All the teacher had to do was to provide some limited context like is the task single or however-many-multi-threaded and that would have been fine, the nuance can come later.

Is there any chance that the teacher is purposefully asking a trick question? How do the rest of the questions fare competence-wise?
Other questions were fine, but I remember I saw few mistakes here and there.
 

Markfw

Moderator Emeritus, Elite Member
May 16, 2002
27,398
16,243
136
Jesus, this is just a quiz question about a BASIC PRINCIPLE.
Maybe, but it is totally WRONG and teaches someone to think totally wrong about computing basics. There is IPC, memory speed and type and so many other things that determine speed. GHZ is actually the least important of them. (even though it is important)
 

Kocicak

Golden Member
Jan 17, 2019
1,177
1,232
136
Speed is a synonymum for performance. It does not neccessarily mean, that anybody believes, that the CPUs run really at that frequency!
 

iamgenius

Senior member
Jun 6, 2008
826
113
106
It's computer for art majors, don't look too closely.

Oh yeah. It is actually for Psychology major.

What is the problem? That they did not mention, or you ommited to note, that the CPUs to be compared are made from the same cores?

Why do you say overall "speed", did they say it? Or did they say "performance"? By multiplying those you get a number, that reflects performance of the chip and still is formally in GHz. Nobody cares, if they work with the number alone or they add GHz to that, because it is formally correct.

You are making a camel out of a mosquito, as we say say in our country. Or also making s**t out of f**t.
The slides said "how to find the total speed".

That is pretty silly. But is it just from some multiple choice coursework, or is the professor actually teaching that way?

It was in the slides and there was a questions like the one shown in the quiz.

"Performance" has no units defined. If you multiply those two figures, one in GHz and the second in number of cores, you still have GHz.

4GHz dual core cpu has the same performance as an 8 GHz 1 core CPU would.

2GHz octa core cpu has the same performance as a 16 GHz 1 core CPU would.

16 GHz 1 core CPU has twice the performance than 8 GHz 1 core CPU.

I still fail to see where is the problem.
Execuse me ? No that's not how it is.
 

TheELF

Diamond Member
Dec 22, 2012
4,029
753
126
Maybe, but it is totally WRONG and teaches someone to think totally wrong about computing basics. There is IPC, memory speed and type and so many other things that determine speed. GHZ is actually the least important of them. (even though it is important)
Which is why so many benchmarks include scaling from one to x cores/threads...

It's not totally wrong, it just depends on many things and those need to be listed, like IPC, memory speed and type, and so many other things that determine speed.

If everything else is the same and you are set on a workload, then core scaling is completely acceptable.
 

Markfw

Moderator Emeritus, Elite Member
May 16, 2002
27,398
16,243
136
Which is why so many benchmarks include scaling from one to x cores/threads...

It's not totally wrong, it just depends on many things and those need to be listed, like IPC, memory speed and type, and so many other things that determine speed.

If everything else is the same and you are set on a workload, then core scaling is completely acceptable.
Here is one good example. My new dual 7763 Milan server. Running 256 tasks of Rosetta, the CPU was at 100% and the cpu speed was 2300 mhz. Running 256 tasks of TN-Grid cpu is also at 100%, but speed is 2562. Something in the Rosetta tasks stresses the CPU more, so it can' run as fast (reached thermal or power max earlier).
 

TheELF

Diamond Member
Dec 22, 2012
4,029
753
126
Here is one good example. My new dual 7763 Milan server. Running 256 tasks of Rosetta, the CPU was at 100% and the cpu speed was 2300 mhz. Running 256 tasks of TN-Grid cpu is also at 100%, but speed is 2562. Something in the Rosetta tasks stresses the CPU more, so it can' run as fast (reached thermal or power max earlier).
Yes, that's what I said, " and you are set on a workload "
You really want someone taught like that, getting a rude shock later from some techie that "NO! That's not how you calculate the performance of a CPU". It would be a really dumb techie who does not object to a user saying that they want an octacore CPU because it will give them 16 GHz.
Where did I say that that's what I want?!
It needs more explanations/qualifiers, but it's not totally wrong, otherwise we would never see scaling benches.
 
Jul 27, 2020
28,174
19,217
146
it's not totally wrong
How is multiplying GHz with number of cores, not totally wrong? Current CPUs can't divide workloads automatically and evenly between n cores and execute them n times faster. Maybe someday with some future breakthrough.
 

DaaQ

Platinum Member
Dec 8, 2018
2,038
1,457
136
Believe it or not most people don't know these stuff. Even lecturers. Common wisdom "More is better". Same for video cards more RAM, better the card will be. Many years ago I was trying to sell my GT8800 512MB card to a friend, but an IT guy convinced him to get a GT8500 1GB instead.
Unfortunately people think IT guys know more than they do.

People think I am an IT guy, I'm not, I am more of a hardware guy, and to add to that I am for sure not a software guy.

Wish I would have took typing class in school, before 1991.

EDIT: it was an optional class then.
 

Ranulf

Platinum Member
Jul 18, 2001
2,917
2,594
136
Breadth requirement course probably.

My school had the intro CS course as a requirement, part of the Science Core if you were getting a BS degree instead of a BA. The professor was a nice enough woman but she was clearly on the programming side of things. She once showed an intel cpu to the class called it a celeron and when it made the rounds to the class I saw it was a pentium 2 cartridge cpu.
 

StinkyPinky

Diamond Member
Jul 6, 2002
6,992
1,284
126
This guy should be fired for incompetence (the teacher)There is no excuse for being wrong when you are a teacher. Either be right, or don't cover the subject.

I did some cyber security papers and networking papers at a local college in 2013-14. The people teaching there were seven packs short of a six pack. They had no idea, it was scary to see them "teaching" kids stuff that was flat out wrong.I remember them comparing hubs and switches and coming to the conclusion that on a "small" network a hub was a better choice. Yeah, maybe in 1989 you imbeciles....
 

Insert_Nickname

Diamond Member
May 6, 2012
4,971
1,696
136
If only there was one more choice : "impossible to conclude without further input " or something like that...

If it wasn't at university level, I'd just add the option. As a demonstration. But that is a huge no-no in academics. Especially when starting out.

Being an old salt they can't scare with anything lets you do stuff like that. But be prepared for anger management.

I did some cyber security papers and networking papers at a local college in 2013-14. The people teaching there were seven packs short of a six pack. They had no idea, it was scary to see them "teaching" kids stuff that was flat out wrong.I remember them comparing hubs and switches and coming to the conclusion that on a "small" network a hub was a better choice. Yeah, maybe in 1989 you imbeciles....

People acting on thoroughly outdated information/principles is very common. Some just can't accept change, and doesn't keep up.
 

TheELF

Diamond Member
Dec 22, 2012
4,029
753
126
How is multiplying GHz with number of cores, not totally wrong? Current CPUs can't divide workloads automatically and evenly between n cores and execute them n times faster. Maybe someday with some future breakthrough.
Again that's why I said that you have to decide on a workload...
We have a benchmark topic on anandtech that uses handbrake, what do you want to bet that the more cores and that the more clocks the better the results on that one.
The results are in FPS divided by cores divided by clocks...
1665102318265-png.68778

There are tons of software, that might be useless to almost all normal users, but they still exist and they divide workloads automatically and evenly between n cores and execute them n times faster because that's how they work.
It's called embarrassingly parallel in computer lingo.
 
Jul 27, 2020
28,174
19,217
146
She once showed an intel cpu to the class called it a celeron and when it made the rounds to the class I saw it was a pentium 2 cartridge cpu.
Must have been annoyed with her salary and thought the school couldn't afford anything better than a Celeron.
 
  • Like
Reactions: Ranulf

aigomorla

CPU, Cases&Cooling Mod PC Gaming Mod Elite Member
Super Moderator
Sep 28, 2005
21,128
3,660
126
@TheELF, i think handbrake caps at 6 cores, and then it completely flops at scaling.
And if you go on the NVEnc / Quicksync side, it completely wrecks the concept of cores.


The hardware you run on can have a large effect on performance. HandBrake can scale well up to 6 CPU cores with diminishing returns thereafter.
So a 4 Core CPU can be nearly twice as fast as a Dual Core equivalent.

HandBrake also supports encoding in Hardware with Intel QuickSync. This uses dedicated ASIC hardware on the processor to encode the video which leaves much of the CPU free for other tasks. This offers very high performance encoding at a reasonable quality if you have a Haswell or newer Intel Processor with HD Graphics on-board.

Also GHZ is not GHZ... by saying that you totally just wrecked the entire intel's 12generation line with the funky P and E cores they have.

Actually the answer to that multiple choice question completely wrecked every common knowledge we have of 12gen Intel CPU's.
 

Thunder 57

Diamond Member
Aug 19, 2007
4,275
7,081
136
@TheELF, i think handbrake caps at 6 cores, and then it completely flops at scaling.
And if you go on the NVEnc / Quicksync side, it completely wrecks the concept of cores.




Also GHZ is not GHZ... by saying that you totally just wrecked the entire intel's 12generation line with the funky P and E cores they have.

Actually the answer to that multiple choice question completely wrecked every common knowledge we have of 12gen Intel CPU's.

Maybe in x264. Even then I think it can benefit from eight cores. x265 will gladly use your CPU time though.
 
Jul 27, 2020
28,174
19,217
146
That is a DUMB question, plain and simple. If things were that simple, we wouldn't need benchmarks or performance optimization. We could easily have 64 tiny Atom cores in a flagship CPU running at 800 MHz for an amazing speed of 51 GHz!
 
  • Haha
Reactions: MangoX